IP Multipathing question

Hello,

I齰e read about IP multipathing and it says to use each cards MAC address instead of the default one MAC for all the NICs. So I have a question: What happens with the ARP of machines accessing a host with this IP multipathing enabled when a NIC goes down?

I mean, a machine on the same subnet sends packets to an IP associated to a MAC address, so it has the entry of the destination on it齭 ARP table. Then the card used goes down and the second card takes it齭 IP. But what happens with the MAC? How does the source host know where to send the packets? Is the traffic stopped until the ARP table periodic refresh?

Thanks in advance,

jmiturbe

[685 byte] By [jmiturbe] at [2007-11-25 23:19:11]
# 1

I was always under the impression that when a tcp/ip communication occurs (provided the entry is not present in the ARP cache) the ARP request automatically goes out with it. Having the ARP table makes it easier and faster since it is in the host's memory.

So, if your host A were to request communication with a host B, it would send out an ARP request to host B if it did not find it in the ARP Table and update it's ARP cache.

I may be wrong though...

dwlahiri at 2007-7-5 18:07:23 > top of Java-index,General,Talk to the Sysop...
# 2

more or less...

depending on the device, and system, arp tables can act funny.

arp tables are basic keep-alive tables; when machine A initiates a communication with machine B at ip address 1, then it logs the corresponding MAC, and sets a keepalive for it (settable via ndd).

during normal use, only when that entry's time has expired will machine A go out and get a new ARP entry for ip address 1.

here's where it gets trickier. if machine B goes down (you can think of machine as interface, too, if that helps) and a machine C takes the ip address, then depending on the device and system, machine C has the option of broadcasting out it's arp on the local network, which should reset the entry for machine A automagically.

for sun/solaris, if the interface is down, using the ifconfig up command will do this. i have had problems with other random operating systems (and network devices), so we'll stick with sun/solaris for now.

more importantly, if an ifconfig up is not performed, then the arp broadcast does not go out. a simple example of this would be if you had machine C not plugged in, and when machine B went down you swapped out the cables. then you'd either have to down/up the interface or clear arp on machine A. a better example would be if interface C was up, but didn't contain the ip address, and you just reapplied the ip address 1 onto interface C without downing the interface.

fred

fim32 at 2007-7-5 18:07:23 > top of Java-index,General,Talk to the Sysop...
# 3
And to follow on what Fred has said, the Solaris init.d and corresponding rc files should run the appropiate ifconfig command anyway. Can't remember the exact file off hand.
dubbsy at 2007-7-5 18:07:23 > top of Java-index,General,Talk to the Sysop...