1.3. Networking¶
barebox has IPv4 networking support. Several protocols such as DHCP, NFS and TFTP are supported.
1.3.1. Network configuration¶
The first step for networking is configuring the network device. The network
device is usually eth0
. The current configuration can be viewed with the
devinfo command:
barebox:/ devinfo eth0
Parameters:
ethaddr: 00:1c:49:01:03:4b
gateway: 192.168.23.1
ipaddr: 192.168.23.197
netmask: 255.255.0.0
serverip: 192.168.23.1
The configuration can be changed on the command line with:
eth0.ipaddr=172.0.0.10
The dhcp command will change the settings based on the answer from the DHCP server.
This low-level configuration of the network interface is often not necessary. Normally
the network settings should be edited in /env/network/eth0
, then the network interface
can be brought up using the ifup command.
1.3.2. Network filesystems¶
barebox supports NFS and TFTP both with commands (nfs and tftp) and as filesystem implementations; see NFS Support and TFTP filesystem for more information. After the network device has been brought up, a network filesystem can be mounted with:
mount -t tftp 192.168.2.1 /mnt
or
mount -t nfs 192.168.2.1:/export none /mnt
NOTE: The execution of the mount command can often be hidden behind the automount command, to make mounting transparent to the user.
1.3.3. Network console¶
barebox has a UDP-based network console. If enabled in the config, you will see something like this during startup:
registered netconsole as netconsole
By default the network console is disabled during runtime to prevent security risks. It can be enabled using:
netconsole.ip=192.168.23.2
netconsole.active=ioe
This will send UDP packets to a PC with IP address 192.168.23.2 and port 6666.
The netconsole.active
parameter consists of the fields “input” (i),
“output” (o) and “error” (e); if the fields are set, the respective channel is
activated on the network console.
On the PC side, the scripts/netconsole
script can be used to remote control
barebox:
scripts/netconsole <board IP> 6666
The netconsole can be used just like any other console. Note, however, that the simple console protocol is UDP based, so there is no guarantee about packet loss.