Close

Step 3: Configure DHCP server

A project log for Orange Pi Zero native network boot

Tutorial describing steps to make Orange Pi Zero boot natively from network

andriymalyshenkoandriy.malyshenko 08/12/2021 at 21:170 Comments

Now when our Pi asking to boot from network we need someone to answer it. First to respond will be DHCP server, whose role is to assign IP address (I prefer static one, but it is not strictly necessary) and instruct to get boot resources from TFTP server.

I assume you already have some kind of DHCP server within your network, normally that would be a network router, but might be dedicated machine. Im my case it is running [OpenWrt](https://openwrt.org/) and I'm able to ssh in it.

Following changes are executed at router filesystem.

# nano /etc/config/dhcp

Add below config to the bottom

config boot 'linux'
	option filename '/pxelinux.0'
	option serveraddress '192.168.1.2'
	option servername 'netbootsrv'

config host                           
        option name 'opi-zero-z4'          
        option mac '02:42:94:b4:99:28'
        option ip '192.168.1.48' 

For boot section we define basic structure that expected to exist on TFTP server and actual IP of netboot server, which is 192.168.1.2 in my case.

For Pi section ame is friendly name of your pi, mac is unique HW address of your Pi (I look for it in DHCP logs, but there are number of ways to find it). IP address is up to you, you just need to remember it for the future steps.


If we boot Pi now

[...]

Autoboot in 1 seconds
MMC: no card present

Device 0: unknown device
ethernet@1c30000 Waiting for PHY auto negotiation to complete. done
BOOTP broadcast 1
DHCP client bound to address 192.168.1.49 (6 ms)
Using ethernet@1c30000 device
TFTP from server 192.168.1.2; our IP address is 192.168.1.49
Filename '/pxelinux.0'.
Load address: 0x42000000

Both of our settings are accepted, but TFTP server is not responding, that what we're going to fix in next step

Discussions