[ipxe-devel] iPXE without DHCP 66/67 Settings
Albert Hernandez
Albert.Hernandez at stjoe.org
Mon Dec 20 21:34:20 UTC 2010
Thank you! I will give it a go!
Albert
Albert Hernandez
-----Original Message-----
From: Michael Brown [mailto:mbrown at fensystems.co.uk]
Sent: Monday, December 20, 2010 1:04 PM
To: ipxe-devel at lists.ipxe.org
Cc: Albert Hernandez
Subject: Re: [ipxe-devel] iPXE without DHCP 66/67 Settings
On Monday 20 Dec 2010 19:43:57 Albert Hernandez wrote:
> We are not in control of our DHCP servers and we want to use iPXE to
> push out software distributions to our servers. We want to create a
> single bootable ISO so we can use to deploy the image to the systems.
>
> I have been able to press CTRL-B and been able to set the minimum
> variable FILENAME and NEXT-SERVER then issue the AUTBOOT command and
> the imaging process begins. Although this is acceptable in a lab
> configuration, it is not for a production environment.
>
> Also we have to have a list of NEXT-SERVERS and have the boot process
> try each one until the list is exhausted. Once the list is exhausted
> then fail. This list is would be sequentially process and if the
> connection returns any error, then skip that server and proceed to the next.
I would suggest using an embedded script. You can do this using
make bin/ipxe.iso EMBEDDED_IMAGE=stjoe.ipxe
where stjoe.ipxe is a text file containing:
#!ipxe
dhcp
chain tftp://my-server1/my-filename ||
chain tftp://my-server2/my-filename ||
chain tftp://my-server3/my-filename ||
echo Boot failed
exit 1
This will try each server in turn, falling through to the next entry in the list if it fails for any reason. Note the trailing "||", which is required to prevent the script from immediately aborting if the "chain" command fails.
Note that this method will *not* set the "next-server" and "filename"
variables. It is possible that your PXE NBP may require these variables to be set. If this is the case, you can use a slightly longer version of the above
script:
#!ipxe
dhcp
set filename my-filename
set next-server my-server1
chain ${next-server}/${filename} ||
set next-server my-server2
chain ${next-server}/${filename} ||
set next-server my-server3
chain ${next-server}/${filename} ||
echo Boot failed
exit 1
Michael
Notice from St. Joseph Health System:
Please note that the information contained in this message may be privileged and confidential and protected from disclosure.
More information about the ipxe-devel
mailing list