NetBSD-Users archive

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

Subtle libdns/libisc update fallout?



I've been wrestling with an interesting problem that popped up after
updating some diskless hosts to the latest 5.1_STABLE (originally seen
on sparc, but later seen with i386).

The only other reference I've seen to it is PR 12279 which was marked
dead and then closed due to lack of reproducibility.

Some services, notably the nfs client and ntpd cannot see servers on the
local network if the server is not listed in the client's "/etc/hosts"
file.  This is true even if "/etc/resolv.conf" points to a nameserver
that answers queries for the local network.  One can try and try and
try again without success.

Attempting to mount nfs filesystems fails with:

  mount_nfs: rpcbind to nfs on server: RPC: Unable to send

'showmount -e server' will still list the filesystems offered
by that server.

Starting up ntpd with a local ntp server in "/etc/ntp.conf" will always
show that server being in the ".INIT." state, stratum 16 (unreachable)
when queried with 'ntpq -p'.

Non-local ntp servers could be reached and used without problems.


The diskless sparc machine was working fine until probably the update
of libdns/libisc on 18-19 June 2011.  Its "/etc/hosts" file contained
only an entry for itself and "/etc/resolv.conf" contained a valid
nameserver entry for the local network.

It would get its address via RARP, load the bootstrap with tftp.  The
bootstrap would get its information via BOOTP/DHCP and load the kernel
via NFS.  The kernel would proceed to boot and presumably mount its
root filesystem from the server.  When it started filesystem checks
it would begin emitting the message shown earlier.  Unlike PR 12279,
I didn't try hitting control-C.

Testing in an isolated network with a different server host worked, but
it was later discovered that the nfs root on the test server had an
entry for the server in its "/etc/hosts" file.


A Soekris Net4501 board booting from local compact flash was unable to
mount any filesystem exported by a server on the local network which
was not listed in its "/etc/hosts" file, even though "/etc/resolv.conf"
contained a nameserver entry that would answer queries for hosts on the
local network.


Other services (ssh, amd) seem to work properly.

I've done clean (non-update, no "-u") builds of 5.1_STABLE with the
same results.

Can anyone else reproduce this?

Thanks.

--
|/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
|\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
| X  No HTML/proprietary data in email.   BSD just sits there and works!
|/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645


Home | Main Index | Thread Index | Old Index