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

Attachment: pgpt5agSZn1rv.pgp
Description: PGP signature

_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to