Mixed MTU hosts on a network
Jason A. Donenfeld
Jason at zx2c4.com
Sat Apr 14 16:15:07 CEST 2018
I answered this in my first email to you, which perhaps got lost in
the mix of emails, so I'll quote the relevant part:
> 2) When we pad the packet payload. In this case, we pad it to the
> nearest multiple of 16, but we don't let it exceed the device MTU.
> This is skb_padding in send.c. This behavior seems like the bug in
> your particular case, since what matters here is the route's MTU, not
> the device MTU. For full 1412 size packets, the payload is presumably
> being padded to 1424, since that's still less than the device MTU. In
> order to test this theory, try setting your route MTU, as you've
> described in your first email, to 1408 (which is a multiple of 16). If
> this works, let me know, as it will be good motivation for fixing
> skb_padding. If not, then it means there's a problem elsewhere to
> investigate too.
In short, because 1408 is a multiple of 16 so it didn't get rounded
up, whereas 1412 got rounded up to 1424.
More information about the WireGuard