tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: PR: MTU discovery fails with IPv6 sockets bound to IPv4 mapped address



On 08/08/21 06:55, Michael van Elst wrote:
kardel%kardel.name@localhost (Frank Kardel) writes:

Is there anyone willing to look at the fix before I commit?
The MTU bug prohibits data transfer as the write(v) systemcall
fails with EMSGSIZE(40).
https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=56348
Mapped IPv4 addresses are considered harmful on the wire, that's
why /etc/rc.d/network sets a route that rejects such packets.
Ok that explains the idea of the entry. As far as I can see these packets would never make it to the wire with IPv4 mapped IPv6 addresses IPv6 packets because they are sent via ip_output as IPv4 packets. Maybe that route helps in IPv6 routing restrictions. I haven't checked that.

But this is just a (changeable) policy. How does the fix work on a
machine without IPv4 where mapped addresses might be wanted (RFC1933) ?

I looked at RFC1933. RFC1933 talks about COMPATIBLE addresses These have the form of 96 zero bits and the last 32 bit for the IPv4 address part. So RFC1933 does not apply here, thanks for the reference though. IPv4 mapped IPv6 addresses have the form 80 zero bits, 16 one bits and then the 32 bits for the IPv4 address part.

The fix applies only to IPv4 mapped IPv6 addresses. So I expect no issues there.

Frank


Home | Main Index | Thread Index | Old Index