Thanks Henning!
The `IPV6_PMTUDISC_DO` documentation says that it sets the Don't Fragment flag, which is absent in IPv6 because it always behaves that way. The kernel will then refuse larger-MTU frames with `EMSGSIZE`; using `IPV6_PMTUDISC_WANT` instead will fragment the frame at Path MTU boundaries. It is doubtful if the `_DO` setting works for IPv4, but it is not the intention of my PR to question code that has been around for very long.
See `ip(7)` which is referenced from `ipv6(7)`.