Hello, I am seeing an interesting issue with hosts that have more than 2 network interfaces when attempting to deploy images. This is only happening with UEFI based machines. I am able to reproduce this on physical and virtual machines with 3 or more NICs attached. Reducing the NIC count to 2 eliminates this issue.
I have edited the fog.deployimage menu item to include the users credentials. This works with BIOS machines and UEFI machines with less than 2 NICs. But in a UEFI machine with more than 2 NICs when I select ‘Deploy Image’ I am prompted for the FOG users credentials. After entering the credentials the ‘Client System Information’ item runs for some reason.
I attempted to resolve this by adding the following to the fog.deployimage parameters:
isset ${net3/mac} && param mac3 ${net3/mac} || goto bootme
isset ${net4/mac} && param mac4 ${net4/mac} || goto bootme
I verified that these settings were applied by checking this page:
http://<fogIP>/fog/service/ipxe/boot.php?mac=00:00:00:00:00:00
Now, when I PXE boot to FOG, select ‘Deploy Image’ from the menu, then select any image I am immediately returned to the FOG main menu.
The same behavior is observed when selecting ‘Boot from Hard Disk’, the FOG menu is simply refreshed.
I think I might need to edit another script somewhere to look for more than 2 NICs.
My best guess is editing this function in functions.sh to include net3 and net4.
configureDefaultiPXEfile() {
[[ -z $webroot ]] && webroot='/'
echo -e "#!ipxe\ncpuid --ext 29 && set arch x86_64 || set arch \${buildarch}\nparams\nparam mac0 \${net0/mac}\nparam arch \${arch}\nparam platform \${platform}\nparam product \${product}\nparam manufacturer \${product}\nparam ipxever \${version}\nparam filename \${filename}\nparam sysuuid \${uuid}\nisset \${net1/mac} && param mac1 \${net1/mac} || goto bootme\nisset \${net2/mac} && param mac2 \${net2/mac} || goto bootme\n:bootme\nchain ${httpproto}://$ipaddress${webroot}service/ipxe/boot.php##params" > "$tftpdirdst/default.ipxe"
}
Has anyone run into this behavior before? Thanks