[ipxe-devel] Thoughts about an enterprise use for iPXE

Floris Bos bos at je-eigen-domein.nl
Sat Mar 15 22:09:39 UTC 2014


Hi Brian,

On 03/15/2014 10:31 PM, Brian Rak wrote:
>
> On 3/14/2014 6:10 AM, Floris Bos wrote:
>> - While iPXE is able to pass the static IP configuration easily to 
>> the installer of Linux distributions as kernel parameters, this is 
>> not the case for other operating systems. If you also want fully 
>> automated deployments of Windows and FreeBSD you have a problem.
> It's not really a problem, it's just a *lot* more work.  I've solved 
> this for both Windows and FreeBSD, and it's pretty annoying.
>
> Windows is actually the easier of the two (assuming your doing 
> installs).  You create a WinPE image, and have it boot from DHCP and 
> start the Windows installer.  The Windows installer uses an unattend 
> file to complete the installation.  Your unattend file contains a 
> configuration that causes another script to run after the OS install 
> complete.  Said script reaches out to a remote server to grab the 
> install information.  In theory, you could even pull this information 
> right from DHCP again.  Windows does have an API for this, though I 
> can't say that I've used it.
>

We also have implemented both Windows and FreeBSD in our provisioning 
software, and they indeed work fine WHEN USING DHCP.
However the problem I was pointing at is getting Windows and FreeBSD to 
work in situations where using DHCP is not an option, and it would be 
nice to use a static network configuration instead.

With Linux distributions like Debian one can easily pass the static 
network settings you embedded in iPXE to the Debian installer through 
kernel parameters along the lines of:

==
kernel http://$server/linux netcfg/choose_interface=$mac 
debian-installer/locale=en_US keyboard-configuration/xkb-keymap=us 
netcfg/disable_dhcp=true netcfg/get_ipaddress=$ip 
netcfg/get_netmask=$netmask netcfg/get_gateway=$gateway 
netcfg/get_nameservers=$server netcfg/get_hostname=$hostname 
netcfg/get_domain= preseed/url=http://$server/kickstart.php
initrd http://$server/initrd.gz
boot
==

However with Windows and FreeBSD that is not that trivial.


-- 
Yours sincerely,

Floris Bos

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ipxe.org/pipermail/ipxe-devel/attachments/20140315/8c5f1f6f/attachment.htm>


More information about the ipxe-devel mailing list