Subject: Good News for Boot Servers Running linux
To: None <port-vax@NetBSD.ORG>
From: Enrik Berkhan <enrik@akk.uni-karlsruhe.de>
List: port-vax
Date: 05/22/1997 11:20:59
Hi,

I've just figured out why netbooting from linux sometimes fails
to answer the bootparamd whoami requests.

It's a bug in the linux rarp/arp code.

When you initially set an rarp entry in the linux kernel (yes,
linux handles rarp totally in the kernel ...), linux will arp(!)
the ip-adress just set in the rarp cache. You can see this when
running tcpdump. There will be four arp requests with a retry time
of about  seconds. So far, this wouldn't hurt. But the unresolved
arp entry stays in the arp cache thus preventing another arp request
when it would succeed ...

rpc.portmap will send the whoami answer, but the kernel will not send
it to the ethernet because it can not arp the destination ...

Workaround: After the inital arp requests have been transmitted (watch
the tcpdump output), just delete the unresolved arp entry with arp -d
<hostname>.

This works for fine me.

Enrik
-- 
Heute im AKK. ;-)