On Tue, 2006-05-09 at 17:27 +0300, Pekka Savola wrote: > Likewise, requiring that routers will always send back an ICMP error > and the host gets it and honors it seems unfeasible in general.)
That's the ideal case, of course -- but there is unfortunately still software out there (and, more to the point, in _here_) which will just use the first result from getaddrinfo() and not fall back to the others even if it does get an immediate failure. This _used_ to work on Linux systems until recently. This is because glibc will use UDP connect() and getsockname() to determine (src, dest) address pairs, and in the past the connect() would fail if the host had only site-local addresses and was asked to connect to a global IPv6 address. That behaviour of the kernel has now changed, and the dummy connect() succeeds. Glibc's RFC3484 support is described at http://people.redhat.com/drepper/linux-rfc3484.html I think it would suffice to add a label for fec0::/16 in the default table, so that in the case where we choose between RFC1918->Global IPv4 and Site-local->Global IPv6, the former is ordered first by virtue of Rule 5 -- because the labels match on the IPv4, but not on the IPv6. That's the behaviour we always _did_ have under Linux, although seemingly by coincidence. -- dwmw2 -------------------------------------------------------------------- IETF IPv6 working group mailing list [email protected] Administrative Requests: https://www1.ietf.org/mailman/listinfo/ipv6 --------------------------------------------------------------------
