image-forge.net

Optional: network boot

One setup choice lets machines boot ImageForge directly from the LAN.

Before enabling network boot

NETWORK BOOT
storage access network boot
PXE statuslistening
Interface192.168.10.5
Mediaamd64 ready · arm64 ready
RecentUEFI x64 requested boot.wim
The console should show listening with a ready media directory before testing a client.

The Forge can answer PXE boot requests directly, chaining a machine straight into the same WinPE + client a boot USB carries — nothing to plug in, nothing to walk around a site with. It runs as a ProxyDHCP responder: it answers PXE clients alongside your existing DHCP server rather than assigning addresses itself. The existing DHCP/WDS boot policy still matters: use either the lease-only ProxyDHCP topology or the integrated DHCP values below. Reaching the Forge over the network shows the technician login, not a loaded gun.

Guided setup

  1. During server setup, select the single Enable network boot (PXE) option. Setup downloads and verifies the version-matched x64/ARM64 bundle, opens the four required firewall ports, and prepares the active deployment interface.
  2. Open Console → network boot. Confirm the selected interface and click Enable network boot if setup left confirmation pending. A ready Forge shows boot files ready and listening; bind interface and media directory live under Advanced settings. Keep the default secure mode unless a recorded Secure-Boot-off compatibility test requires direct mode.
  3. Choose Network Boot in the target PC's one-time firmware boot menu. ImageForge reads the firmware architecture and serves the matching x64 or ARM64 set automatically.
No ISO is used for PXE. USB creation uses an ISO; network boot uses the version-matched bundle installed in the Forge's data directory. Network boot remains optional because it opens broadcast-facing services on the selected deployment network.

Choose the UEFI boot mode

ModeFirst-stage chainFirmware requirementUse
Secure (default)ipxe-shim.efi verifies same-architecture ipxe.efiSecure Boot may remain on; Microsoft third-party UEFI CA 2011 must be enabledNormal production choice; requires an uncontested lease-only ACK or DHCP policy pointing to the Forge
Direct compatibilityFirmware starts ipxe.efi directlySecure Boot must be offExplicit fallback when the shim's second-stage request is redirected by DHCP/WDS and that infrastructure cannot yet be changed
Direct mode is not a silent fallback. It removes the shim's second TFTP fetch, but also removes the firmware-trusted first stage. Select it deliberately, record the Secure Boot state, and return to secure mode after fixing DHCP/WDS. It cannot fix an initial network-boot file that firmware sends to the wrong server.

Manual or air-gapped setup

  1. Download the network-boot bundle from the Downloads page and verify it against its SHA-256 file. One bundle carries both the x64 and ARM64 boot environments.
  2. Extract the bundle into the media directory shown under Console → network boot. Keep amd64\ and arm64\ separate.
  3. Open Advanced settings only if you must change the bind interface or media directory, then use the same Enable network boot action and confirm listening.

How the chain works

In secure mode, UEFI starts with an ImageForge-pinned iPXE shim signed under Microsoft Corporation UEFI CA 2011 (the Microsoft third-party UEFI CA). The shim retrieves and verifies the pinned iPXE payload. In direct compatibility mode, firmware starts that payload itself and the shim step is absent. Both modes then remain inside the selected architecture directory while HTTP carries wimboot and the same BCD/boot.sdi/boot.wim as USB media:

secure: UEFI --TFTP--> amd64|arm64/ipxe-shim.efi --TFTP/verify--> ipxe.efi
direct: UEFI --TFTP--> amd64|arm64/ipxe.efi  (Secure Boot off)
both:   iPXE --HTTP--> same-arch wimboot -> BCD/boot.sdi/boot.wim -> WinPE

DHCP option 93 values 7/9 select amd64; value 11 selects arm64. IA32 UEFI (value 6) and unknown architectures receive no offer rather than a loader that cannot run. Legacy BIOS, when deliberately retained, uses amd64\undionly.kpxe. The Forge never hands out an IP address itself — that stays your real DHCP server's job. ImageForge PXE is IPv4-only.

Network boot is opt-in per machine: once iPXE loads, it shows “Press any key to boot ImageForge WinPE (local boot in 5 seconds)”. No keypress means the machine exits network boot and continues its normal boot order into the local OS — so leaving PXE first in the boot order (or enabled fleet-wide) never strands restarting PCs in the imaging environment. The same fallback applies if the WinPE download fails partway.

Ports

PortPurpose
UDP 67ProxyDHCP responder
UDP 4011PXE boot server (many NIC ROMs unicast here after DHCP completes; unanswered, they fail with PXE-E55)
UDP 69 + negotiated UDPTFTP RRQ, then the server-selected dynamic UDP transfer port (use stateful/TFTP-aware inspection or permit the matching bidirectional traffic)
TCP 8969Plain HTTP boot file server (script, wimboot, boot.wim, ...)

The boot-file stage uses plain HTTP because the pinned iPXE build has no general TLS trust store. Keep PXE on a controlled deployment VLAN. The production shim/iPXE/wimboot files are version-, signer-, architecture-, and SHA-256-pinned at publication; the exact boot WIM and its ImageForge build manifest are bound to each other. The ImageForge client still requires either a site-baked HTTPS identity pin or explicit technician fingerprint verification before it sends an access code.

DHCP and WDS topology

Choose one of these configurations. The Forge remains a boot-information server and never assigns the IPv4 lease.

ProxyDHCP coexistence

The normal DHCP server must supply a lease only. Its effective ACK must contain no BOOTP boot file, no next-server/siaddr, no options 66/67, and no WDS/SCCM/MDT policy that supplies those values. No other PXE responder may answer the deployment clients. ImageForge ProxyDHCP supplies the boot server and architecture-specific filename. If existing WDS settings cannot be removed or scoped away, use a dedicated deployment VLAN or the integrated policy below.

Integrated authoritative DHCP

Set the ACK's actual next-server/BOOTP siaddr to the Forge's selected deployment IPv4 address. If the DHCP product exposes only option 66, capture an ACK and confirm that siaddr is also populated; the signed shim reads that field for its second-stage TFTP address. Select the boot filename by client architecture:

ClientDHCP option 93Secure-mode boot filename
Legacy BIOS0 or absentamd64/undionly.kpxe
UEFI x647 or 9amd64/ipxe-shim.efi
UEFI ARM6411arm64/ipxe-shim.efi

For a deliberate direct compatibility test, keep the same Forge next-server and replace only the UEFI filenames with amd64/ipxe.efi or arm64/ipxe.efi. Secure Boot must be off. Scope these policies to deployment clients; do not replace a production WDS policy globally without an approved change.

Recognizing the signed-shim redirect

The signed shim gives a boot file in the normal DHCP ACK precedence over ProxyDHCP when it chooses the server and directory for its second-stage ipxe.efi. A client may therefore download ImageForge's shim successfully and then show:

Fetching Netboot Image boot\x64\ipxe.efi
Unable to fetch TFTP image :00000067
start_image() returned 00000067

If the Forge records a completed ipxe-shim.efi transfer but no matching tftp-rrq for the displayed second-stage path, that request went elsewhere. Check server-, scope-, reservation-, and policy-level DHCP settings plus every WDS/PXE responder, then cold-boot the client. A new TFTP alias on ImageForge cannot fix a packet that never reaches it. Direct compatibility mode bypasses this second request, but only with Secure Boot off.

Booting machines on a different subnet/VLAN

The Forge doesn't need to share a broadcast domain with the machines you're booting. Point your router's/L3 switch's DHCP relay (often called ip helper-address) at the Forge's IP in addition to your real DHCP server's IP — the same technique WDS and SCC/MDT deployments use. The Forge answers a relayed request exactly like a local one; the relay agent forwards the reply back onto the client's subnet. Permit UDP 67 and 4011 and TCP 8969 between clients and the Forge. TFTP sends its RRQ to UDP 69 and then uses a server-selected dynamic UDP transfer port, so use stateful/TFTP-aware inspection or permit the matching bidirectional dynamic UDP traffic; a stateless destination-69-only ACL will fail after the RRQ. The lease-only versus integrated-DHCP rules above still apply across a relay.

Qualification before fleet use

A VM pass is useful regression coverage, but it does not prove a physical NIC ROM or firmware implementation. Record the selected boot mode, Secure Boot/third-party-CA state, effective DHCP policy, firmware version, client screen, Forge request trail, and WinPE boot report for each row.

DimensionMinimum coverage
ArchitectureUEFI x64 option 93 value 7 and value 9; UEFI ARM64 value 11; BIOS value 0 only when the site supports BIOS
TrustSecure mode with Secure Boot on and third-party UEFI CA 2011 enabled; direct mode only with Secure Boot off; no automatic downgrade
DHCP pathSame-VLAN lease-only ProxyDHCP, routed relay, and integrated DHCP if used at the site
Physical systemsCurrent and older x64 models in the fleet, each supported ARM64 family, onboard Ethernet, common docks, and the certified recovery adapter
End-to-end resultDHCP/4011, complete TFTP stage, iPXE HTTP script and assets, wimboot, WinPE start, network recovery, and Forge login
Failure behaviorUnsupported architecture gets no offer; local-boot timeout works; interrupted transfers are visible; DHCP/WDS conflict is diagnosed rather than guessed

Known limitations