Page MenuHomeVyOS Platform

netboot PXE/gPXE/iPXE support
In progress, WishlistPublicFEATURE REQUEST

Description

There was a related feature request for TFTP server functionality recently.

Having a TFTP server would potentially allow the ability to serve a PXE boot image to network clients.

More specifically, via chainloading, it becomes possible to expand PXE netboot functionality by serving a PXE ROM that contained gPXE or iPXE, which further allows more expansive netboot functionality via supporting other protocols beyond TFTP.

gPXE is the old standby for PXE environments, but apparently it is no longer actively maintained. iPXE is a fork of gPXE that is being maintained.

Having iPXE baked in allows interesting things like being able to do spot work on PC's such as cloning or inspection using a netboot liveCD style image that iPXE can call on (Clonezilla being an example)

Necessary prerequisites are at a minimum a TFTP server and a DHCP server that provides netboot information such as TFTP server location where iPXE is located. iPXE documentation indicates there are some DHCP server tweaks necessary to prevent boot loops and BIOS/UEFI differentiation.

iPXE chainloading

Possible secondary issues are linkages between VyOS DHCP settings and TFTP server listening addresses (if registering a TFTP server location for DHCP that is VyOS' TFTP server, rather than an independent TFTP server located elsewhere)

A tertiary issue is how to add light customization of iPXE operations via its native scripting. There is the suggestion of using a HTTP based script generator for the native dynamic script functionality.

Dynamic Scripting

But apparently this seems to be a recommended method now that is all iPXE native scripting

Bootstrapping full iPXE native menu with customizable default option with timeout (also includes working Ubuntu 12.04 preseed install)

The following seems to be an ISC DHCPD config for doing the BIOS/UEFI differentiation

Trying to chainload iPXE with full feature set from a lesser featured one, whilst still being able to boot non-supported cards with UNDI

There is also a related note about some OS (for example Windows PE) boot faster delivering the image over HTTP, which would suggest some sort of HTTP server/TFTP server directory overlap might be helpful (but that may require HTTP without SSL?).

There is a final note regarding broken TFTP client implementations and a mitigation.

tftp-hpa

Details

Difficulty level
Hard (possibly days)
Version
-
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Perfectly compatible
Issue type
Unspecified (please specify)

Related Objects

StatusSubtypeAssignedTask
ResolvedFEATURE REQUESTsyncer
In progressFEATURE REQUESTNone

Event Timeline

syncer triaged this task as Wishlist priority.Jun 24 2018, 1:25 AM
dmbaturin changed Difficulty level from Unknown (require assessment) to Hard (possibly days).
dmbaturin set Is it a breaking change? to Perfectly compatible.
zsdc changed the task status from Open to In progress.Apr 13 2021, 5:11 PM
zsdc added a subscriber: zsdc.

Just a small update on this.
PXE boot service for all 1.2 / 1.3 / 1.4 versions is up and running in private testing.

dmbaturin set Issue type to Unspecified (please specify).