Hi, On Wed, Nov 06, 2013 at 04:43:54AM -0500, Pietro Paolini wrote: > > So you want "IPv4 in IPv6, and you want to see fragmentation on the IPv6 > > packets". > > > What happens if you put the tun1 mtu to 1500? > > In that case it does not fragment the IPv4 packet but the whole packet is > discarded in this piece of code: > mtu = dst_mtu(dst) - sizeof (*ipv6h); > if (skb->len > mtu) { --> 1496 > 1460 <-- > *pmtu = mtu; > err = -EMSGSIZE; > goto tx_err_dst_release; > } >
Interesting. So Linux doesn't handle this as "an IPv6 packet created by myself, following the normal rules for packets sourced locally = fragment if needed", but follows shortcuts. > which is in the ip6_tnl_xmit2() placed in ip6_tunnel.c, I am assuming this > borderline case is not handled by the kernel (!) then any ideas regarding how > to solve this issues ? I have to pass here, sorry, no idea. I don't know these areas well enough to understand what would be needed here. As a workaround, you could use iptables to lower TCP MSS side on the IPv4 packets, to avoid having full-sized packets on the IPv4 side -> no need for IPv6 fragmentation. But that will not help UDP or other IP protocols. Or accept IPv4 fragmentation... gert -- USENET is *not* the non-clickable part of WWW! //www.muc.de/~gert/ Gert Doering - Munich, Germany g...@greenie.muc.de fax: +49-89-35655025 g...@net.informatik.tu-muenchen.de
pgpt5agSZn1rv.pgp
Description: PGP signature
_______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel