There are two Ethernet ports available. Each of the two sockets is designed for different requirements.
Ethernet Interface A
You can achieve a maximum throughput of 11.2 MByte/s at this interface.
This Ethernet interface is connected to the internal USB. Since these interfaces share the bandwidth, it is possible that additionally connected USB devices may reduce the throughput.
The Ethernet interface A is somewhat more susceptible to interference. If you need a robust Ethernet connection for your project, we recommend using interface B or combining both interfaces. You will learn how to do this in the following sections.
In the software you can address this interface as eth0.
The MAC address for this Ethernet interface is printed on the housing and stored in the file “/boot/config.txt”. You can also change the MAC address for eth0 here if necessary. If no MAC address is entered in the file “/boot/config.txt”, e.g. because you have uploaded a new image, a unique MAC address is calculated from the serial number of the Compute Module.
Ethernet Interface B
This Ethernet interface is connected to the SPI bus (0). Therefore this interface shares the bandwidth with other devices you connect to the SPI bus. You can achieve a throughput of up to 2.1 MByte/s with this interface.
Please check if this interface is fast enough for your project. If you need a faster Ethernet connection for your project, we recommend using interface A or combining both interfaces. You will learn how to do this in the following section.
The advantage of this Ethernet interface is its low susceptibility to interference.
The MAC address for this Ethernet interface is the next higher address of the MAC address lasered onto the housing.
In the software you can address this interface as eth1.
Ethernet interface A (eth0) uses the MAC address “c8:3e:a7:00:00:00” in this example.
The address of Ethernet interface B (eth1) in this case is “c8:3e:a7:00:00:01”.
You will find your MAC address on the case of your RevPi Compact.
The MAC address is stored in the file “/boot/config.txt”. You can also change the MAC address for Ethernet interface B (eth1) here if necessary. In addition, the MAC address is stored in a separate memory module of the Ethernet interface B (eth1). This factory MAC address is used if no MAC address is entered in the file “/boot/config.txt”, e.g. because you have installed a new image.
To take advantage of both Ethernet interfaces, you can combine them into a virtual unit. It’s called “bonding.” This allows you to use the high bandwidth of Ethernet interface A (eth0). In case of malfunctions on the USB bus, the system automatically switches over to the robust SPI interface.
How you can combine the two Ethernet interfaces is explained here.
Please note that it is not easily possible to connect both Ethernet interfaces to the same subnet without bonding. If you want to proceed in this way, you need to adjust the ARP configuration and it requires policy routing. However, since this is very complex, we advise against this method.