I'm having a perplexing problem with rwhod and ruptime.

On two hosts (4.6-patched), rwhod is not apparently contacting
localhost properly; ruptime omits mention of the localhost.

On a third host (4.6-patched), function is normal.

A fourth host, (4.2-patched) is also working).

On the two non-working hosts, ruptime reports other hosts on the
LAN correctly (including the other non-working one).

Running rwhod -d on working host "pollux" produces this pattern:

sendto 192.168.1.255.513
hostname pollux   up 17+14:45
load 0.19, 0.14, 0.10
root     pollux:ttyC0 Nov 15 15:41 99:59
 ... other users ...
host pollux     <-- working 4.6 host, the localhost. Appears "immediately"
host julius     <-- non-working 4.6 host
host quintus    <-- working 4.2 host
host aemilia    <-- non-working 4.6 host

On a "non-worker", host "julius", rwhod -d produces:

[r...@julius root 0:8]# rwhod -d
sendto 192.168.1.255.513
hostname julius   up     0:50
load 0.09, 0.09, 0.08
root     julius:ttyp0 Dec  3 05:39
host quintus
host aemilia
...

Note absence of the expected line "host julius".
I conclude that hosts julius and aemilia are broadcasting correctly,
are receiving broadcasts from each other and from working hosts
quintus and pollux, but neither is receiving its own broadcast.

pf rules
julius: (non-worker) not loaded at boot
aemilia: (non-worker) pass all flags S/SA keep state
pollux: (working 4.6) pass all flags S/SA keep state
quintus: (working nat firewall, 4.2)  irrelevant.

All hosts run portmap. (irrelevant).

It appears to me that the difference might be in the hardware
or drivers, perhaps the NICs do not include themselves when they
write to the broadcast address.

Both non-workers have bge Broadcom cards: (On the main board.)

bge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1492
        lladdr 00:13:72:dc:83:d4
        priority: 0
        groups: egress
        media: Ethernet 100baseTX
        status: active
        inet 192.168.1.5 netmask 0xffffff00 broadcast 192.168.1.255
        inet6 fe80::213:72ff:fedc:83d4%bge0 prefixlen 64 scopeid 0x1

dmesg shows:
bge0 at pci2 dev 0 function 0 "Broadcom BCM5751" rev 0x01, BCM5750 A1 (0x4001):
apic 8 int 16 (irq 11), address 00:13:72:dc:83:d4
brgphy0 at bge0 phy 1: BCM5750 10/100/1000baseT PHY, rev. 0

The non-workers are a Pent 4 running bsd (i386), and a Pent D running
bsd.mp (amd64).  They are patched as of Nov 14 and Dec 2 respectively.

The worker pollux runs a Pentium Pro and an fxp NIC. (Old Faithful).
fxp1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1492
        lladdr 00:02:55:b0:3e:64
        priority: 0
        groups: egress
        media: Ethernet 100baseTX
        status: active
        inet 192.168.1.2 netmask 0xffffff00 broadcast 192.168.1.255
        inet6 fe80::202:55ff:feb0:3e64%fxp1 prefixlen 64 scopeid 0x2

dmesg:
fxp1 at pci0 dev 17 function 0 "Intel 8255x" rev 0x08, i82559: apic 13 int 18 (i
rq 10), address 00:02:55:b0:3e:64
inphy0 at fxp1 phy 1: i82555 10/100 PHY, rev. 4

Worker quintus runs Pent III, (Open 4.2) and a xl NIC:
xl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1492
        lladdr 00:b0:d0:97:00:e5
        media: Ethernet autoselect (100baseTX half-duplex)
        status: active
        inet 192.168.1.11 netmask 0xffffff00 broadcast 192.168.1.255
        inet6 fe80::2b0:d0ff:fe97:e5%xl0 prefixlen 64 scopeid 0x2
dmesg:
xl0 at pci1 dev 12 function 0 "3Com 3c905C 100Base-TX" rev 0x78: irq 11, address
 00:b0:d0:97:00:e5
exphy0 at xl0 phy 24: 3Com internal media interface

I can't think of any other relevant differences among these machines
that correlate with not getting their own broadcasts except the bge
driver or the underlying hardware.

rwhod is not logging any errors.

Any ideas?  Fixes?  A clever script for nc to test UDP broadcasts?
Is it worthwhile to shove a new NIC in one of the non-workers?
(It would be an fxp type made for IBM).

Thanks,

Dave
-- 
Caution, this account is hosted by gmail.
Strangers scan the content of all mail transiting such accounts.

Reply via email to