Date: Tue, 22 Sep 1998 12:50:40 +0200 From: Stefan Bethke <stefan.bethke@hanse.de> To: Bill Paul <wpaul@skynet.ctr.columbia.edu> Cc: freebsd-net@FreeBSD.ORG, wollman@FreeBSD.ORG Subject: Re: Strange behavior with ARP and IP fragmentation Message-ID: <606633.3115457440@d254.promo.de> In-Reply-To: <199809220231.WAA25016@skynet.ctr.columbia.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 21. Sep 1998 22:31 Uhr -0400 Bill Paul <wpaul@skynet.ctr.columbia.edu> wrote: > One thing I do a lot is this: > > # ifconfig <interface> 10.0.0.2 netmask 0xffffff00 up > # ping -c 1 -s 4096 10.0.0.1 > > 10.0.0.1 is another machine attached to the interface under test using > a crossover cable. I run tcpdump on this host to monitor traffic from > the first machine so I can see what the NIC is sending. Assuming the > system has just been booted, the 10.0.0.2 host will not yet have an > ARP entry for the 10.0.0.1 host, so the sequence should go something > like this: [...] > What I observed is that the ARP request and ARP reply proceed as expected, > but the first portion of the ICMP packet transmitted is in fact the last > fragment. The first two fragments have been vanished into the void. Since > the ICMP echo request is contained in the first fragment, the host on the > other side discards the fragment and never sends a reply. The result is > that 'ping -c 1 -s 4096 10.0.0.1' just sits there and no reply is ever > received. [...] This is intended. See Stevens Vol. II on ARP, and the definition of struct llinfo_arp and arpresolve() in netinet/if_ether.c. Only the last packet is held, which in your case is the last fragment. I don't quite remember why this is right. I'll look it up again tonite. Stefan -- Mühlendamm 12 | Voice +49-40-256848, +49-177-3504009 D-22089 Hamburg | e-mail: stefan.bethke@hanse.de Germany | stb@freebsd.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?606633.3115457440>