This is an old revision of the document!
lotest [--mtu <mtu>] <sending interface> <receiving interface>
lotest net0 net1
Perform a loopback test by sending packets from one network interface and verifying that they are received correctly on a second network interface. The two network interfaces should be directly connected using a network cable.
You can specify the packet size (excluding the link-layer header) using the --mtu
option. If no packet size is specified, then the default Ethernet size of 1500 bytes will be used.
The test will continue until it is interrupted (e.g. by pressing Ctrl-C
) or until a packet is received incorrectly. The number of packets successfully received will be displayed as a running total during the test.
This command is available only when the build option LOTEST_CMD
is enabled.
This command is intended primarily for correctness testing during iPXE development. It can be used to verify that a network driver is transmitting and receiving packets correctly, even when no suitable network switch is available.
The two network interfaces should be directly connected using a cable. If they are plugged into a network switch, then the loopback test may fail due to the presence of additional packets seen by the receiving network interface.
Some drivers will generally work but will fail a loopback test because they do not strip the Ethernet CRC from the received packet. These drivers should be fixed.
Some drivers that pass a loopback test may use an MTU that is too small to support VLANs. These can be identified by creating a VLAN interface on each end, and then performing the loopback test over the VLAN interfaces. For example:
vcreate --tag 123 net0 vcreate --tag 123 net1 lotest net0-123 net1-123