ICMP issue while multiple interface in the same subnet

myronn at seed.net.tw myronn at seed.net.tw
Fri Sep 14 03:11:30 PDT 2007


Hi,
  For a special test reason, I must use two hosts and it has two interfaces to connect each other without any switch or hub.  
 Host1                   Host2
|-----|                 |-----|
|   1 0-----------------0 1   |
|     |                 |     |
|   2 0-----------------0 2   |
|-----|                 |-----|

  Host platform OS is BSD.  I assigned Host1 NIC1 ping Host NIC2.  Command is correct but I found as follows:
1. Host1 arp broadcast to Host2 and Host2 would be return info to Host1. 
2. Then, Host1 sent ICMP request packet to Host2.
3. Host2 received packet and always "USE" NIC2 replaying the ICMP reply.
4. If Host1 use NIC2 ping Host2 NIC2, Host1 NIC2 could get the ICMP reply packet from Host2 NIC2.

Question:
1. This behavior is a normal network behavior?
2. If it's a normal network behavior, it followed which standard?
3. I know that there were other softwares could change this behavior but why many platforms(BSD,Linux,.....) used this behavior was its default network behavior?
4. Why default behavior is incoming interface different from outgoing interface?
5. If I set all interfaces are in the same subnet and the incoming interface is the same with outgoing interface, what weakness would be happened?

Thanks and Regards,
Myron


More information about the freebsd-net mailing list