Subject: Re: bin/9518
To: None <darrenr@netbsd.org>
From: Mason Loring Bliss <mason@acheron.middleboro.ma.us>
List: current-users
Date: 03/05/2000 09:00:44
On Sun, Mar 05, 2000 at 12:16:20PM -0000, darrenr@netbsd.org wrote:

> this problem sounds like the user updated the kernel but not
> userland binaries.  If updating ipnat, et al, solves the user's
> problem, this can be clsoed.

Userland and kernel were consistent. However, this can be closed, if ap-
propriate, as the problem seems to lie elsewhere. Specifically, it doesn't
show up if dhclient is not invoked. Noting that this same setup worked
with a world built on the 16th of February, a change since this must be
to blame. However, it's not a change to dhclient, as I've tested this
by building and installing the dhclient used in 1.4.1 with the same
results. So, it's the interaction between dhclient and something else,
possibly. The only other custom networking thing I run is Netatalk, and,
indeed, route(8) shows badly garbled Appletalk routes, despite the fact
that Netatalk is functional.

The IP-NAT problem may be a consequence of IP-NAT using the same interface
(I assume) to look at interface addresses as ifconfig, which appears to be
similarly unable to correctly see interface settings once an interface has
been configured by dhclient. For example:

ne0: flags=8863<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        media: Ethernet autoselect (10baseT)
        inet 0.0.0.0 netmask 0xff000000 broadcast 255.255.255.255

Not running Netatalk on my site is not an option for me, but I do plan to
try running a kernel without the option, to see if that helps. The error
crops up before the Netatalk userland components are run, so they are not
the cause.

Once again, the salient points: IP-NAT and ifconfig work if dhclient is not
run, and the interface dhclient normally configures is instead set by hand,
but replacing the dhcp suite with an older, known-good version fails to solve
the problem. Also, FWIW, even though ifconfig can't seemingly see the correct
settings, the network does, in fact, work, and ifconfig is able to set
addresses and the like, even though it complains:

ac /root# ifconfig ep0 down
ac /root# ifconfig ep0 inet 10.0.0.1 netmask 255.255.255.0 up
ifconfig: SIOCDIFADDR: Address family not supported by protocol family
ac /root# ping -n -c 1 10.0.0.2
PING 10.0.0.2 (10.0.0.2): 56 data bytes
64 bytes from 10.0.0.2: icmp_seq=0 ttl=255 time=0.913 ms

----10.0.0.2 PING Statistics----
1 packets transmitted, 1 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.913/0.913/0.913/0.000 ms

(Note that this interface is not the one configured by dhclient. It *is* the
interface on which the Netatalk programs run. Strangely, it does not show up
with incorrect addresses when looked at with ifconfig(8). That behaviour seems
to be reserved for things set by dhclient, as far as I can tell right now.)

Anyway, I'll try to chop out time today to test without Netatalk in the
kernel.

-- 
    Mason Loring Bliss  mason@acheron.middleboro.ma.us  They also surf who
awake ? sleep : dream;  http://acheron.ne.mediaone.net  only stand on waves.