Subject: RE: why gratuitous arp ?

From: Sumandra Majee <[email-masked]>
Date: Fri, 12 May 2000 12:27:11 -0700

On Fri, 12 May 2000, Sumandra Majee wrote:

> VRRP keeps the same IP<->mac binding. So in essence the end host doesn't
> need to know

Host do need the new binding ... when you configure VRRP dynamically
with Virtual IP address that is also present as a real address. As I said
(below) the hosts would have the physical MAC to IP binding in their 
caches and that needs to be changed once VRRP routers come up. So you
do need a grat. ARP from Master to update those cache entries. You have
to cover this "initial condition" in order for the protocol to work.

Hamayon
--------------------------------------------------------------------
Let me see. When a host wants to send a packet to an IP address the host
would ARP for that
IP address and get the MAC address if it doesn't have the address in ARP
cache. Once it is
in the host keeps it for a fairly long time (20min~housrs in many hosts). As
long as this binding remains 
same nothing has changed form the perspective of the host.

What you describe above(as I understood) is duplicate address detection.
Lets say router R1
and R2 have a virtual IP address of IP(v)[MAC(v)]. They are not yet
configured and assuming there
is another device in the same subnet with same IP(v) and MAC1, hosts C would
keep sending packets to
MAC1 and not MAC(v). A gratuitous ARP would show the duplicate if it is not
lost(Vivek). This 
is really a small case. Certainly this is one use. 
If the failover solution could have been built based on gratuitous then it
would
have been[RFC 826]. In fact there is a paper which uses this to allow the
backup file server to 
take over the primary. The feature is when a host rcvs. a ARP req. for which
it already has cache 
entry then it will overwrite it with the hardware address. Unfortunately not
all host implementation
supports that. For that matter, there are implementations which do not even
support gratuitous ARP.

Consider the other side effect of the ARP req. when there are L2
devices(most likely) between routers and
hosts. The gratuitous arp actually helps this devises to "learn" this new
MAC-port binding. The backup 
router is plugged to different port and certainly there is port change. I
could see this as one
benefit(side effect) of grat. (tired of typing) ARP.

/Sumandra

> any new binding. However I think the switches(or other L2 device) do learn
> from this 
> request and update their table, apart from finding any duplication of ip
> address.
> 
> -----Original Message-----
> On Fri, 12 May 2000, Jerome Etienne wrote:
> 
> > in the rfc2338, each time a router becomes master (rfc2338.6.2.1 
> > and 6.2.2), it must "Broadcast a gratuitous ARP request containing
> > the virtual router MAC address for each IP address associated with the
> > virtual router". but in the text, i don't find an explaination for
> > these ARP requests.
> > 
> > my interpretation follows, please comment:
> > - It isn't for update the ARP cache of others computers because each
> >   master send the exact same ARP packet. so there is no update to do.
> 
> It is.
> Consider the following scenario. Two router in a network, one with 
> address 1.1.1.1 and the other with 1.1.1.2. All hosts have physical MAC 
> of 1.1.1.1 in their cache. Now the network Manager configures a VR
> on the second router, with IP address 1.1.1.1. The router with
> physical 1.1.1.1 meanwhile is struck by lightning and dies. The second
> router comes up in Backup state, waits for timeout and comes up
> in Master state. Don't you think the hosts deserve a grat. ARP to
> update for IP 1.1.1.1 ?
> 
> What I am saying is that for cases where owner VRRP router either
> dies or never comes up as Master, we need this grat. ARP from any 
> router that changes state from Backup to Master.
> 
> > - Is it to detect there is multiple master at the same time ? i don't
> >   think so because if it happen it is very temporary.
> 
> We have Advertisements to cover THAT. 
> 
> I hope it helps ...
> Then again, what do I know, I just work here ... :-)
> 
> Hamayon
>

---

From: Erick <[email-masked]>
Date: Fri, 12 May 2000 23:51:13 -0700 (PDT)

> Consider the following scenario. Two router in a
> network, one with address 1.1.1.1 and the other with
> 1.1.1.2. All hosts have physical MAC of 1.1.1.1 in
> their cache. Now the network Manager configures a VR
> on the second router, with IP address 1.1.1.1. The
> router with physical 1.1.1.1 meanwhile is struck by 
> lightning and dies. The second router comes up in
> Backup state, waits for timeout and comes up in
> Master state. Don't you think the hosts deserve a
> grat. ARP to update for IP 1.1.1.1 ?

Let me take a shot. I see a need for grat. ARPs
because let's say when the primary router dies, for
some reason the host(s) lose their ARP entry for
1.1.1.1. When the backup comes online the grat. ARP
will be sent and the host(s) will know about 1.1.1.1
again. Also could be used to reset aging timer for ARP
entries in devices that age out entries after a
certain timeframe. 

Just my 2 cents.

=====
- Erick B. | erickbe(a)yahoo.com | http://berk.dhs.org

__________________________________________________
Do You Yahoo!?
Send instant messages & get email alerts with Yahoo! Messenger.
http://im.yahoo.com/