LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: ARP problem race condition

To: Kyle Sparger <ksparger@xxxxxxxxxxxxxxxxxxxx>
Subject: Re: ARP problem race condition
Cc: lvs-users@xxxxxxxxxxxxxxxxxxxxxx
From: Julian Anastasov <ja@xxxxxx>
Date: Thu, 15 Feb 2001 15:36:45 +0200 (EET)
        Hello,

On Thu, 15 Feb 2001, Kyle Sparger wrote:

> Well,
>
> I've found an interesting, but not totally unexpected race condition
> under DR in 2.2.x that I've managed to create when installing VIP's on a
> machine in DR mode, and I figured I'd stick it on the list in case someone
> else runs into it later.
>
> Basically, the cause is this:
>
> ifconfig dummy0 10.0.1.15
> echo 1 > /proc/sys/net/ipv4/conf/dummy0/hidden
>
> You'll notice that there's going to be a small gap between the two which

        This can be a big hole :)

> allows an ARP request to come in, and for the server to reply.  And yes,
> it is big enough to be bitten by -- I've been bitten twice by it so far :)
>
> The question then is, how do I solve it?
>
> Try changing the order to this:
>
> echo 1 > /proc/sys/net/ipv4/conf/default/hidden
> ifconfig dummy0 10.0.1.15
> echo 0 > /proc/sys/net/ipv4/conf/default/hidden
>
> That way, it defaults to being hidden when it's first created.
>
> Another possible method would be to configure dummy0 with a bogus IP
> address, then set the hidden flag, but I think I prefer the first method.
>
> Anybody else experience this problems and have other ways to address the
> problem?

        Known effect :)

        On boot:

        echo 1 > /proc/sys/net/ipv4/conf/all/hidden

        # For each hidden interface:
        modprobe dummy0
        ifconfig dummy0 0.0.0.0 up
        echo 1 > /proc/sys/net/ipv4/conf/dummy0/hidden

        # Now set any other IP address after boot

> Thanks,
>
> Kyle Sparger - Senior System Administrator
> ksparger@xxxxxxxxxxxxxxxxxxxx - http://www.dialtoneinternet.net
> Voice - (954) 581-0097 x 122
> "Forget college, I'm going pro."


Regards

--
Julian Anastasov <ja@xxxxxx>



<Prev in Thread] Current Thread [Next in Thread>