[Gllug] Weird problem with TFTP on new Debian Etch server

John Winters john at sinodun.org.uk
Sat Nov 18 13:45:13 UTC 2006


John Winters wrote:
> I'm trying to move some domestic services over to a new Etch server. All 
> seems OK, except that I'm completely unable to get my diskless Mini-ITX 
> box to boot from it.
> 
> The problem occurs when the diskless workstation tries to use TFTP to 
> fetch pxelinux.0 from the server.  I can see the TFTP request come in 
> but the server just seems to ignore it.  Here's a tcpdump trace of the 
> non-conversation (tcpdump running on the server, duplo, and the diskless 
> workstation being "slave):
> 
> duplo:/etc/default# tcpdump host slave
> tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
> listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
> 12:54:49.822680 arp who-has duplo.home.sinodun.org.uk tell 
> slave.home.sinodun.org.uk
> 12:54:49.822719 arp reply duplo.home.sinodun.org.uk is-at 
> 00:40:05:a5:fb:8c (oui Unknown)
> 12:54:49.822815 IP slave.home.sinodun.org.uk.2070 > 
> duplo.home.sinodun.org.uk.tftp:  27 RRQ "pxelinux.0" octet tsize 0

Finally worked it out - after quite a few hours of puzzling!  It has 
nothing at all to do with TFTP, but I thought I might share the 
explanation in case anyone else gets bitten by this apparent mis-feature 
of Etch.

The penny finally dropped when I ran tcpdump with the "-n" option, just 
to see that the packet really was being addressed to port 69.  Look what 
it showed:

duplo:/etc/dhcp3# tcpdump -n host slave
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
13:37:27.712619 arp who-has 10.3.0.2 tell 10.3.0.53
13:37:27.712689 arp reply 10.3.0.2 is-at 00:40:05:a5:fb:8c
13:37:27.712786 IP 10.3.0.53.2070 > 127.0.1.1.69:  27 RRQ "pxelinux.0" 
octet tsize 0

Something look odd about that target address?

A bit of further investigation revealed that the Etch installation 
process had put the following line in /etc/hosts on the server:

127.0.1.1	duplo.home.sinodun.org.uk

which was then being picked up by the DHCP server and used in the 
information which it sent out to the diskless workstation telling it 
what server to use next.

I've no idea why the installer had put that line there, but as soon as I 
corrected it things started working.

That was a wasted few hours.

John

-- 
Gllug mailing list  -  Gllug at gllug.org.uk
http://lists.gllug.org.uk/mailman/listinfo/gllug




More information about the GLLUG mailing list