[csw-buildfarm] IPv6 loopback interfaces? (was Re: [csw-maintainers] apr-1.3.9 - test failure ?)

Sebastian Kayser skayser at opencsw.org
Thu Jan 7 01:01:02 CET 2010

Dagobert Michelsen wrote on 06.01.2010 22:33:
> Am 06.01.2010 um 00:59 schrieb Sebastian Kayser:
>> Sebastian Kayser wrote on 22.12.2009 09:24:
>>> Forgot to CC the original mail. Would it be possible to configure an
>>> IPv6 address for the loopback interfaces on the build boxes? This would
>>> make the apr test suite pass.
>> As a follow up: could you guys please add an IPv6 localhost entry to
>> /etc/hosts on both build10* nodes? Right now, these systems are not able
>> to resolve localhost to an IPv6 address, while the build8* systems are.
>> skayser @ build10s ~ $ getent ipnodes localhost
>>       localhost
>> skayser @ build10x ~ $ getent ipnodes localhost
>>       localhost loghost
>> skayser @ build8x ~ $ getent ipnodes localhost
>> ::1     localhost
>>       localhost
>> skayser @ build8s ~ $ getent ipnodes localhost
>> ::1     localhost
>>       localhost
> Done, please verify. Personally I find this IPv6 stuff a bit with hosts/ipnodes
> linked a bit confusing...

Thanks, works fine now. I haven't gotten around to fully dig into the
IPv6 setup on Solaris. From what I understand:

The ipnodes/hosts symlink is a relic of the past. With Solaris 10 11/06
and previous releases [1], ipnodes was a separate file for static IPv6
/etc/hosts like entries. This file (or more specifically the ipnodes
order given in nsswitch.conf) is consulted for IPv6 aware address
resolution syscalls [2]. Or in other words, ipnodes is consulted by any
application which is written with IPv6 in mind.

Nowadays, /etc/inet/hosts can carry both kinds of entries and the
ipnodes file is now simply a link to the hosts file.

While the hosts/ipnodes files were separate, it could happen that you
edited /etc/hosts for an IPv4 entry and then found out later that it
wasn't used at all. This is because IPv6 aware applications use the IPv6
address resolution syscalls (which are in fact IPv4/IPv6 syscalls) even
if they try to resolve an IPv4 address. Thus, they also use the ipnodes
resolution order given in nsswitch.conf. Per default, this order
includes DNS, so /etc/hosts was silently skipped (see [3]). With a
united file this can't happen any more.

The workaround which is suggested in [3] circumvents this possible IPv4
lookup hickup for Solaris releases <= 10 11/06 but should carry a word
of warning as it effectively deactivates IPv6 DNS lookups and thus makes
it unusable in a real IPv6 environment. OTOH i suppose, people working
in real IPv6 environments know what they are doing ;)



[1] http://docs.sun.com/app/docs/doc/820-2980/ipv6-ref-65?l=de&a=view
[2] http://docs.sun.com/app/docs/doc/806-0916/6ja8539c5?a=view
[3] http://www.brandonhutchinson.com/Solaris_10_ipnodes_caveat.html

More information about the buildfarm mailing list