pombreda / staticdhcpd

Automatically exported from code.google.com/p/staticdhcpd
GNU General Public License v3.0
0 stars 0 forks source link

PXE boot hangs after trying to load cfg/<max address> #6

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1.Two interfaces, one private, one public. PXE boot from private interface.
2.
3.

What is the expected output? What do you see instead?
The tftp boot starts but it hangs after trying to load cfg/<mac address> file.

The same setup works under ISC dhcpd.

What version of the product are you using? On what operating system?
1.4.3 Redhat EL4U2, PXELINUX 3.06

Please provide any additional information below.

Searched online, this problem happened when the 'next server' is not
set in ISC's /etc/dhcpd.conf. See this link:
http://syslinux.zytor.com/archives/2005-September/005879.html

But I checked the 'ACK' packet sent out, the tftp_server_name is
set correctly, the following is the packet's option data:

k,v server_identifier, [144, 25, 17, 84] 
k,v bootfile_name, [112, 120, 101, 108, 105, 110, 117, 120, 46, 98, 105, 110] 
k,v client_system, [0, 0] 
k,v client_ndi, [1, 2, 1] 
k,v uuid_guid, [0, 68, 69, 76, 76, 74, 0, 16, 86, 128, 51, 199, 192, 79, 67, 
68, 49] 
k,v hostname, [114, 119, 115, 54, 48, 48, 48, 49, 116, 111, 118, 109] 
k,v tftp_server_name, [49, 52, 52, 46, 50, 53, 46, 49, 55, 46, 56, 52] 
k,v subnet_mask, [255, 255, 252, 0] 
k,v requested_ip_address, [144, 25, 16, 102] 
k,v dhcp_message_type, [5] 
k,v ip_address_lease_time, [52, 51, 50, 48, 48] 
k,v maximum_dhcp_message_size, [4, 236] 

Anything obvious here?

Original issue reported on code.google.com by andrew.x...@gmail.com on 22 Jan 2011 at 4:19

GoogleCodeExporter commented 9 years ago
Possibly. Do you have a DNS server set up to resolve that hostname?

Original comment by red.hamsterx on 22 Jan 2011 at 5:31

GoogleCodeExporter commented 9 years ago
Or, wait, no, sorry. That's not a hostname. It's an IP address expressed as a 
string.

print [chr(c) for c in [49, 52, 52, 46, 50, 53, 46, 49, 55, 46, 56, 52]]

['1', '4', '4', '.', '2', '5', '.', '1', '7', '.', '8', '4']

Original comment by red.hamsterx on 22 Jan 2011 at 5:33

GoogleCodeExporter commented 9 years ago
Or... maybe that's how the spec's supposed to work, now that I think about it.

Lemme mull it over for a little while.

Original comment by red.hamsterx on 22 Jan 2011 at 5:36

GoogleCodeExporter commented 9 years ago
This turned out to be a PXE issue. After upgrading the pxe code to 3.78. The 
boot completed successfully. Yes, the staticdhcpd worked perfectly!
My earlier pxe was version 3.06. It had at least two problems.
1) Not being able to set the dhcp server IP
2) Needing the packets to set the "MAGIC" option - 208, per RFC 5071. This 
option is actually deprecated. But its deprecation was later than pxe version 
3.06.
The pxe I am using is from syslinux (written by Peter Arvin).
http://syslinux.zytor.com/wiki/index.php/PXELINUX

Original comment by andrew.x...@gmail.com on 26 Jan 2011 at 12:15

GoogleCodeExporter commented 9 years ago
Well, that's good to hear. I wasn't able to get anywhere with my experiments 
here.

Marking this as closed, then.

Original comment by red.hamsterx on 26 Jan 2011 at 12:22