time lag between /sbin/ifconfig eth2 up and when interface becomes usable...

Gautam Thaker gthaker at atl.lmco.com
Mon May 5 17:41:35 UTC 2008


Bruno Wolff III wrote:
> On Thu, Apr 10, 2008 at 13:39:36 -0400,
>   Gautam Thaker <gthaker at atl.lmco.com> wrote:
>> From my tests it appears that it takes between 4 to 6 seconds after the 
>> "up" command before my UDP packets actually start going out. The tests 
>> are between two machines with addresses 192.168.0.2  <---> 192.168.0.3.
>>
>> Any hints welcome. The "/sbin/ifconfig eth2 up 192.168.0.2" command 
>> returns right away, but the interface is not ready to go for a few 
>> seconds. What can this be due to?
> 
> It might be waiting for a test to see if any other machine is using that IP
> address on that subnet. The time delay seems to be reasonable for a timeout
> to a whohas arp request. Looking at the network traffic should allow you
> to refute this or add some more suggestive evidence that this is the cause.

I have done some investigations as suggested by Bruno. I have two 
machines, "a" (192.168.0.2) and "b" (192.168.0.3). These are the only 
two machines on the subnet.

I do the "/sbin/ifconfig up/down" in "a", and I use tcpdump to monitor 
what packets come thru at "b". I thought that by doing this I can answer 
Bruno's question if the delay is due to some "whohas arp" packets and 
related timeout. The trace that I capture at "b" shows this:



root at b> /usr/sbin/tcpdump -i eth4
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth4, link-type EN10MB (Ethernet), capture size 96 bytes

# node "a" does "ping b -c 1"
11:27:49.137672 IP a-link0 > b-link0: ICMP echo request, id 10290, seq 
1, length 8
11:27:49.137695 IP b-link0 > a-link0: ICMP echo reply, id 10290, seq 1, 
length 8
11:27:54.137816 arp who-has b-link0 tell a-link0
11:27:54.137822 arp reply b-link0 is-at 00:04:23:b7:22:a4 (oui Unknown)


node "a" does /sbin/ifconfig eth4 down and then waits for about 30 more 
seconds.

node "a" does /sbin/ifconfig eth4 up 192.168.0.2   and waits...

11:28:35.045148 IP6 fe80::204:23ff:feb7:17be > ff02::2: ICMP6, router 
solicitation, length 16
11:28:39.045283 IP6 fe80::204:23ff:feb7:17be > ff02::2: ICMP6, router 
solicitation, length 16
11:28:43.045367 IP6 fe80::204:23ff:feb7:17be > ff02::2: ICMP6, router 
solicitation, length 16

# NOTE: ABOVE SEEMS TO BE IPV6 RELATED, I WONDER IF I COULD DISABLE IPV6
# AND IF ANYTHING WOULD BE DIFFERENT. Comments welcome.

# node "a" does "ping b -c 1"  and immediately on "b" one sees:
11:28:55.521795 arp who-has b-link0 tell a-link0
11:28:55.521805 arp reply b-link0 is-at 00:04:23:b7:22:a4 (oui Unknown)
11:28:55.521944 IP a-link0 > b-link0: ICMP echo request, id 11570, seq 
1, length 8
11:28:55.521956 IP b-link0 > a-link0: ICMP echo reply, id 11570, seq 1, 
length 8
11:29:00.521513 arp who-has a-link0 tell b-link0
11:29:00.521642 arp reply a-link0 is-at 00:04:23:b7:17:be (oui Unknown)


Bottom line, I don't know yet why after a

/sbin/ifconfig  eth4 up 192.168.0.4

it takes 5 seconds before ping traffic can actually get thru from node a 
to node b. Is there an RFC mandated delay someplace? (I understand 
networks but am not a guru.)

Gautam










More information about the fedora-list mailing list