New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incorrect MTU being reported in certain Fragmentation Neededs #92

ydahhrk opened this Issue May 27, 2014 · 1 comment


None yet
1 participant

ydahhrk commented May 27, 2014

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.

For example:

+----+ mtu:1500 +-------+ mtu:1500 +----+
| n4 |----------| nat64 |----------| n6 |
+----+          +-------+          +----+

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.

@ydahhrk ydahhrk added this to the 3.1.5 milestone May 27, 2014

@ydahhrk ydahhrk self-assigned this May 27, 2014

ydahhrk added a commit that referenced this issue May 28, 2014

Issue #92.
Jool now reports MTUs 20 bytes smaller when the packet exceeds the "minimum MTU" of the IPv6 universe.
Also added some credits.

This comment has been minimized.

Show comment
Hide comment

ydahhrk May 28, 2014


Confirmed, fixed, tested, closing.


ydahhrk commented May 28, 2014

Confirmed, fixed, tested, closing.

@ydahhrk ydahhrk closed this May 28, 2014

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment