parent
7401717352
commit
5343bac65e
28
embed.ipxe
28
embed.ipxe
|
@ -20,8 +20,6 @@ goto get_arch
|
|||
:static_ip_boot_setup
|
||||
|
||||
# Open all network interface devices, so we aren't restricted to just the first
|
||||
ifclose
|
||||
sleep 1
|
||||
ifopen
|
||||
sleep 1
|
||||
|
||||
|
@ -76,8 +74,6 @@ iseq ${net${idx}/mac} 00:25:90:a9:73:76 && set ip-dev-name eno1 && set ip-addr 2
|
|||
# backup.bitmessage.at
|
||||
iseq ${net${idx}/mac} a8:a1:59:c7:21:8f && set ip-dev-name enp39s0 && set ip-addr 93.189.25.253 && set ip-gateway 93.189.25.249 && set ip-netmask 255.255.255.248 && set ip-dns 1.1.1.1 && set successful t && goto loop_done ||
|
||||
iseq ${net${idx}/mac} a8:a1:59:c7:21:90 && set ip-dev-name enp38s0 && set ip-addr 93.189.25.253 && set ip-gateway 93.189.25.249 && set ip-netmask 255.255.255.248 && set ip-dns 1.1.1.1 && set successful t && goto loop_done ||
|
||||
# test1.sysdeploy.org
|
||||
#iseq ${net${idx}/mac} 08:60:6e:e5:bb:20 && set ip-dev-name eth0 && set ip-addr 176.31.183.121 && set ip-gateway 176.31.183.254 && set ip-netmask 255.255.255.0 && set ip-dns 1.1.1.1 && set successful t && goto loop_done ||
|
||||
|
||||
|
||||
|
||||
|
@ -90,7 +86,7 @@ inc idx && goto loop
|
|||
:loop_done
|
||||
# If we have not successfully found a MAC match, then we error, because we
|
||||
# also failed DHCP. So there's nothing we can do but fail.
|
||||
iseq ${successful} f && goto try_dhcp ||
|
||||
iseq ${successful} f && goto error_handler ||
|
||||
|
||||
# If on the other hand we're successful, then we construct the kernel ip= line
|
||||
set ip-info ${ip-addr}::${ip-gateway}:${ip-netmask}::${ip-dev-name}:off:${ip-dns} && echo Static IP found
|
||||
|
@ -184,21 +180,23 @@ goto start_arm64
|
|||
:start_i386
|
||||
goto start_amd64
|
||||
|
||||
:try_dhcp
|
||||
dhcp || goto error_handler
|
||||
sleep 1
|
||||
set ip-info dhcp
|
||||
goto boot_all
|
||||
|
||||
# Set arch info and determine if we can use DHCP for network.
|
||||
# Then either boot or goto static IP setup.
|
||||
:start_arm64
|
||||
set arch-info arm64
|
||||
goto static_ip_boot_arm64
|
||||
dhcp || goto static_ip_boot_arm64
|
||||
sleep 1
|
||||
set ip-info dhcp
|
||||
goto boot_all
|
||||
|
||||
:start_amd64
|
||||
set arch-info amd64
|
||||
goto static_ip_boot_amd64
|
||||
dhcp || goto static_ip_boot_amd64
|
||||
sleep 1
|
||||
set ip-info dhcp
|
||||
goto boot_all
|
||||
|
||||
|
||||
# This process should be the same for arm and x86, but I'll leave this section
|
||||
# intact in case it turns out it's not the same
|
||||
|
@ -212,9 +210,9 @@ goto static_ip_boot_setup
|
|||
|
||||
:boot_all
|
||||
|
||||
# Get accurate time for signature validation
|
||||
# Get accurate time so we can set the clock in kernel boot cmdline
|
||||
echo Syncing time over NTP
|
||||
ntp pool.ntp.org || echo "Skipped"
|
||||
ntp pool.ntp.org || goto error_handler
|
||||
|
||||
# check for EFI
|
||||
iseq ${platform} efi && goto is_efi || goto not_efi
|
||||
|
@ -262,7 +260,7 @@ imgverify --signer images.sysdeploy.org boot-kernel http://images.sysdeploy.org/
|
|||
|
||||
sleep 1
|
||||
|
||||
boot boot-kernel ${initrd1} ${initrd2} rootfstype=squashfs root=/squashfs ip=${ip-info} overlayroot=tmpfs:recurse=0 ds=nocloud-net;s=https://cloud-init.sysdeploy.org/apiv2?uuid=${uuid}&filetype= || goto error_handler
|
||||
boot boot-kernel ${initrd1} ${initrd2} rootfstype=squashfs root=/squashfs ip=${ip-info} overlayroot=tmpfs:recurse=0 systemd.clock-usec=${unixtime:int32}000000 ds=nocloud-net;s=https://cloud-init.sysdeploy.org/apiv2?uuid=${uuid}&filetype= || goto error_handler
|
||||
|
||||
# unixtime variable must be used with int32, because that's the only way it
|
||||
# will display as decimal digits. unit32 and string both display as hex.
|
||||
|
|
Loading…
Reference in New Issue
Block a user