[gPXE git/1.0.1/1.0.0] Two DHCP, with and without boot options, wrong one is used
nicopsycho <[email protected]> Fri, 14 Jan 2011 17:31:00 +0100
| Newsgroups | gmane.network.etherboot.user |
|---|---|
| Message-ID | <[email protected]> |
Hi, I'm new to discuss list so, please be kind ^^ The network setup, composed of 3 distinct machines: 1/ a DHCP server with no boot option (no 66 or 67) aka the real DHCP 2/ a DHCP gateway which patches the answers of the DHCP with boot options (option 67 boot file name and next-server) aka the gateway 3/ a target DELL GX280 aka the client Restriction: - I would like to make this work and most of all avoid modifying the real DHCP config, and NOT using the native/onboard PXE rom. What works: - Using the PXE native boot on the client. Boots, uses the answer from the gateway because it contains the boot informations, ignores the answer from the real DHCP. OK. - Using the gPXE on the client, modifying the real DHCP adding the next-server and boot filename options. Boots, gets the info from the real DHCP. OK. What fails: - Using gPXE on the client, put the real DHCP back to its original state (no boot options). Boots, gets the info from the real DHCP (no boot options), fails with "no root path or filename". FAIL. Captured the frames in promiscous mode on the gateway, the real DHCP answer has no boot info, but the gateway answer does. gPXE versions used: from rom-o-matic, latest, 1.0.1, 1.0.0, from git repo, compiled latest. medium used: iso for CDROM, burnt on CD-RW. The problem/bug? The gPXE does not seem to ignore the real DHCP answer even thought it does not contain boot info, the very next answer on the network does contain boot info but gPXE does not seem to go that far. From what i understand gPXE is supposed to use a valid answer, and valid would be with boot info. From the website documention for etherboot/gpxe there was an option -DREQUIRE_VCI_ETHERBOOT and -DALLOW_ONLY_ENCAPSULATED but after a while I realised it was only for etherboot, not gPXE. This doc was from 2003... Even though I thought I should give a shot and that those options were somehow present as a default in gPXE, at least for the VCI_ETHERBOOT one... So I added the described options in the gateway answer, meaning adding option 43 with as value: option 60 9 in length and Etherboot as message... (option vendor-encapsulated-options 3c:09:45:74:68:65:72:62:6f:6f:74:ff; from the online documentation at http://etherboot.org/wiki/usermanual?s[]=compilation&s[]=options#require_vci_etherboot) The option I added is present in my WireShark capture but made no difference... Is there a way to ensure gPXE uses the answer with the boot info and skip the (first) one which does not have them? Like a real PXE rom? I have been to the #Etherboot channel asking all this, and the feedback was that it might be a bug... but again it was not a developer... Any suggestion? ------------------------------------------------------------------------------ Protect Your Site and Customers from Malware Attacks Learn about various malware tactics and how to avoid them. Understand malware threats, the impact they can have on your business, and how you can protect your company and customers by using code signing. http://p.sf.net/sfu/oracle-sfdevnl