Hector Santos <[EMAIL PROTECTED]> writes: > IPv4 and IPv6 are very different and software NEEDS to change in order > to even BEGIN to thinking about supporting it.
I have to pick this nit. The difficulty of supporting IPv6 in userspace programs tends to be exaggerated. At least on UNIX varients, programs that use the new getaddrinfo and getnameinfo interfaces can frequently be written to be entirely agnostic about which IP stacks they're using. I agree that changes are required for older software written against the gethostbyname and related interfaces and for many things that one wants to do in servers, not to mention weird network programs like ping or traceroute require more work. But for many common typical client networking patterns, nothing other than writing to the new generic name and address resolution interfaces is required. I've written code that works fine with IPv6 without even testing on an IPv6-enabled system. The code from my perspective as a programmer is identical either way. In fact, from that perspective, it would be a bit annoying to write a fallback to A without also writing a fallback to AAAA for hosts without an MX record. The obvious (at least with thirty seconds of thought, and I may be missing gotchas) way of implementing resolution of a mail server is to do an MX record lookup and, if that fails, call getaddrinfo on the RHS and connect to the resulting addresses until one of them works. This would treat AAAA identically to A. -- Russ Allbery ([EMAIL PROTECTED]) <http://www.eyrie.org/~eagle/>
