Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Incorrect MTU being reported in certain Fragmentation Neededs #92
A IPv6 header is 20 bytes larger than a IPv4 header. For this reason, a MTU in a IPv6 network should be seen 20 bytes smaller from a IPv4 node's perspective.
Say n4 sends a packet of size 1500. The packet grows to 1520 bytes when translated so it doesn't fit the IPv6 link anymore. Jool should return a ICMPv4 error message "Fragmentation Needed" with a MTU of 1480 so the next packet attempt from n4 grows from 1480 to 1500 and crosses the link dandily.
Apparently, Jool is sending a Fragmentation Needed with MTU=1500 instead.
I say "apparently" because this issue is theoretical; I found it while reviewing code and haven't tested its existence. It it's true, it does explain why people seem to want to change the value of minMTU6 more than we had expected. At the same time, if it does exist, it's weird that hell hasn't been let loose in the lab.
This only affects Fragmentation Neededs generated by Jool. ICMPv6 "Packet too Big"s being translated into Fragmentation Neededs work as expected, just like "Fragmentation Needed"s being translated into "Packet too Big"s.