pmtud + ipnat RELENG_6_2 appears to be broken
Alexey Karagodov
karagodov at gmail.com
Wed Jul 25 18:42:23 UTC 2007
patch did not help ...
ifconfig:
# ifconfig
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING>
ether XX:XX:XX:XX:XX:XX
media: Ethernet autoselect (1000baseTX <full-duplex>)
status: active
lagg: laggdev lagg0
em1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING>
ether XX:XX:XX:XX:XX:XX
media: Ethernet autoselect (1000baseTX <full-duplex>)
status: active
lagg: laggdev lagg0
pfsync0: flags=0<> mtu 2020
syncpeer: 224.0.0.240 maxupd: 128
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33160
lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 10.0.0.1 netmask 0xffff0000 broadcast 10.0.255.255
inet 10.0.0.2 netmask 0xffff0000 broadcast 10.0.255.255
ether XX:XX:XX:XX:XX:XX
media: Ethernet autoselect
status: active
laggproto lacp
laggport: em1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
laggport: em0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
vlan302: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1496
inet 192.168.111.7 netmask 0xffffff00 broadcast 192.168.111.255
inet 192.168.111.1 netmask 0xffffff00 broadcast 192.168.111.255
ether XX:XX:XX:XX:XX:XX
media: Ethernet autoselect
status: active
vlan: 302 parent interface: lagg0
vlan150: flags=8843<UP,BROADCAST ,RUNNING,SIMPLEX,MULTICAST> mtu 1496
inet 192.168.150.1 netmask 0xffffff00 broadcast 192.168.150.255
ether XX:XX:XX:XX:XX:XX
media: Ethernet autoselect
status: active
vlan: 150 parent interface: lagg0
and other VLANs ..... all on lagg0 interface
i was tried to change laggproto, it doesn't help.
i can NOT increase MTU on lagg interface above 1500 and on vlan interface
above lagg's MTU -4 .
also i've increased MTU on both ems to 9000 and after that i still can't
increase MTU on lagg interface above 1500
please, HELP ...
and VERY LITTLE part of dmesg:
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
vlan301: discard oversize frame (ether type 800 flags 3 len 1514 > max 1510)
2007/7/25, Andrew Thompson <thompsa at freebsd.org >:
>
> On Wed, Jul 25, 2007 at 03:15:17AM +0400, Alexey Karagodov wrote:
> > is there any progress?
> > just one "me too"
> >
> > this problem appeared for me when i try to use vlan over lagg ( to em
> NICs
> > )
>
> lagg on RELENG_6 is currently broken due to subtle differences that
> wernt taken into account when it was MFCd. Can you please test this
> patch.
>
>
> Index: if_lagg.c
> ===================================================================
> RCS file: /home/ncvs/src/sys/net/if_lagg.c,v
> retrieving revision 1.11.2.3
> diff -u -p -r1.11.2.3 if_lagg.c
> --- if_lagg.c 12 Jul 2007 20:40:24 -0000 1.11.2.3
> +++ if_lagg.c 25 Jul 2007 00:43:24 -0000
> @@ -319,6 +319,7 @@ lagg_lladdr(struct lagg_softc *sc, uint8
> if (memcmp(lladdr, IF_LLADDR(ifp), ETHER_ADDR_LEN) == 0)
> return;
>
> + bcopy(lladdr, IFP2ENADDR(ifp), ETHER_ADDR_LEN);
> bcopy(lladdr, IF_LLADDR(ifp), ETHER_ADDR_LEN);
> /* Let the protocol know the MAC has changed */
> if (sc->sc_lladdr != NULL)
>
>
>
> > 2007/7/13, Chuck Swiger <cswiger at mac.com>:
> > >
> > >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
> > >
> > >
> > >_______________________________________________
> > > freebsd-stable at freebsd.org mailing list
> > >http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> > >To unsubscribe, send any mail to "freebsd-stable-unsubscribe @
> freebsd.org"
> > >
> > _______________________________________________
> > freebsd-stable at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> > To unsubscribe, send any mail to "freebsd-stable-unsubscribe@
> freebsd.org"
>
More information about the freebsd-stable
mailing list