We are attempting to PXE boot from clients obtaining their DHCP lease information from DHCP pools configured on our 4506. The PXE server, and the client are configured in separate VLANs. We have configured option 66 to point to the PXE server IP address, and the bootfile option to point to the PXE boot configuration filename. On the client side SVI, we also have configured the ip helper-address command to point to the PXE server (which also acts as another DHCP server for redundancy).
The PXE boot continuously fails stating it is unable to find the configuration file. If we remove the DHCP pool from the 4506, and allow the client to receive their DHCP lease info from the secondary server (Windows 2k8 - same server as PXE server), they PXE boot with no issues.
We have no problem obtaining DHCP info, just completion of the PXE process... Any thoughts or suggestions? Thanks!
Solved! Go to Solution.
I ahve a capture of the process from the client which is failing, and it is showing the following in the DHCP Offer:
Boot file name: pxelinux.0
This is the correct bootfile name we have configured as option 67 on our Windows DHCP side, but the switch will not allow me to configure option 67 in the DHCP pool which it servcies. I receive the follwoing when I attempt option 67 on the 4506:
"% DHCP does not allow raw option 67"
Do you have any suggestions for additional options?
Unfortunately, setting another DHCP server may not be another option. I'll wait to hear back from the TAC and post results when available.. Other suggestions are welcome... Thanks!
Well, it looks basically like this service will simply not function when using Cisco architecture for DHCP services. I have been through all testing and configurations possible, and an SR with Cisco yielded no useful information either...
actually, after many captures, we found that the PXE server was returnign a boot file with a different name. For some reason this worked fine with Windows using the bootstrap name as option 67.. However the switch woudl reject the file that PXE returned because it was of a differnt name than what was configre under by the bootfile command..
Once we used the name of the file that was actually being returned by the PXE server (instead of the bootstrap file name - which calls the actual boot file), it now works flawlessly..