Date: Thu, 12 Jul 2007 14:39:52 -0700 From: Chuck Swiger <cswiger@mac.com> To: Stephen.Clark@seclark.us Cc: freebsd-stable@freebsd.org Subject: Re: pmtud + ipnat RELENG_6_2 appears to be broken Message-ID: <3C09F7E4-C15A-4B9E-94A3-C4997C73C0BD@mac.com> In-Reply-To: <46969129.60409@seclark.us> References: <469624D1.20108@seclark.us> <4696823B.9020107@seclark.us> <AF67C2DA-4E77-48C5-B380-56D5D39043F4@mac.com> <46969129.60409@seclark.us>
next in thread | previous in thread | raw e-mail | index | archive | help
On Jul 12, 2007, at 1:38 PM, Stephen Clark wrote: >> The MTU is actually defined in reference to a network segment such >> as an "ethernet collision domain", and applies to all machines >> sending traffic to that segment. If the MTU is really 1280, >> nobody else should be sending larger packets, and the drivers >> will drop any larger packets they receive and generate the >> appropriate ICMP error.... > > First thanks for responding but thats the problem, > this did't generate an icmp when the packet was dropped. > > kernel: rl0: discard oversize frame (ether type 800 flags 3 len > 1514 > max > 1294) > > This message did not result in any icmp packet. > > I was running tcpdump looking for them. Taking a quick look at ether_input() in src/sys/net/if_ethersubr.c suggests that you are right-- if the incoming packet exceeds the MTU being set, the input errors count for that interface is incremented, but no ICMP_UNREACH_NEEDFRAG is generated even if DF flag is set. You might file a PR and see whether you can get Andre or one of the other networking gurus interested in fixing this. Or maybe I'll give it a try myself if I can get some free time.... :-) -- -Chuck
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3C09F7E4-C15A-4B9E-94A3-C4997C73C0BD>