Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
pxechaining [2010/06/25 08:56] vutcovici |
pxechaining [2010/07/14 13:09] (current) vutcovici |
||
|---|---|---|---|
| Line 61: | Line 61: | ||
| # host part, a VM that will be booted from network | # host part, a VM that will be booted from network | ||
| # 00:0C:29 - the MAC part of VMware vendor - we are booting a VM | # 00:0C:29 - the MAC part of VMware vendor - we are booting a VM | ||
| - | dhcp-host=00:0c:29:aa:bb:cc,gPXE-client,net:gPXE-PCnet32,192.168.10.100,10m | + | # here we chainload gPXE |
| - | dhcp-boot=net:gPXE-PCnet32,undionly.kpxe | + | dhcp-host=00:0c:29:aa:bb:cc,gPXE-client,net:gPXE-testVM,192.168.10.100,10m |
| + | dhcp-boot=net:gPXE-testVM,undionly.kpxe | ||
| + | # for a gPXE enabled client we are asking him to boot from a image located at an URL. The image can be a gPXE script | ||
| dhcp-userclass=gPXE-booted,"gPXE" | dhcp-userclass=gPXE-booted,"gPXE" | ||
| dhcp-boot=net:gPXE-booted,http://my.web.server/real_boot_script.php | dhcp-boot=net:gPXE-booted,http://my.web.server/real_boot_script.php | ||
| The file undionly.kpxe is located in the /tftproot/ folder. | The file undionly.kpxe is located in the /tftproot/ folder. | ||
| + | To build undionly.kpxe run: | ||
| + | wget http://kernel.org/pub/software/utils/boot/gpxe/gpxe-1.0.1.tar.bz2 | ||
| + | tar jxf gpxe-1.0.1.tar.bz2 | ||
| + | cd gpxe-1.0.1/src | ||
| + | make DEBUG=http,iscsi,tftp,dhcp bin/undionly.kpxe&&sudo cp bin/undionly.kpxe /tftproot/undionly.kpxe | ||
| + | |||
| + | ==== Using pxelinux, menu.c32 and dnsmasq to chainload gPXE ==== | ||
| + | If you want to test gPXE but you are using extensively pxelinux and you do not want to break the rest of your configuration, you can add a menu entry to load gPXE. | ||
| + | The ''/etc/dnsmasq.conf'' should contain something like: | ||
| + | #DHCP | ||
| + | domain=mydomain | ||
| + | dhcp-range=192.168.10.100,192.168.10.200,255.255.255.0,30m | ||
| + | dhcp-option=option:router,192.168.10.1 | ||
| + | dhcp-authoritative | ||
| + | | ||
| + | # TFTP part | ||
| + | enable-tftp | ||
| + | tftp-root=/tftproot | ||
| + | | ||
| + | # PXE | ||
| + | dhcp-boot=/tftproot/pxelinux.0 | ||
| + | # required by old versions of gPXE (e.g. the one that comes with OracleVM) | ||
| + | dhcp-no-override | ||
| + | The ''/tftproot/pxelinux.cfg/default'' should contain: | ||
| + | DEFAULT menu.c32 | ||
| + | PROMPT 1 | ||
| + | | ||
| + | LABEL gpxe | ||
| + | MENU LABEL gPXE - chainload gPXE from a PXE capable NIC | ||
| + | KERNEL undionly.0 | ||
| + | On an Ubuntu system install ''syslinux'' package and make ''/tftproot/pxelinux.0'' symlink to ''/usr/lib/syslinux/pxelinux.0''. | ||
| + | The file ''/tftproot/undionly.0'' is a symlink to ''/tftproot/undionly.kpxe''. | ||
| ==== Using the Windows DHCP server ==== | ==== Using the Windows DHCP server ==== | ||