by 9600 » Fri Jul 11, 2014 7:34 pm
If Ethernet is not working it's possible that it's being enumerated as eth2 or eth3 etc. rather than eth1. Hence why updating /etc/network/interfaces is one way to resolve this. However, in such cases the issue comes about due to the file /etc/udev/rules.d/70-persistent-net.rules not having being deleted before the Linux image was published.
This was the case with the Debian image I created — I forgot to delete 70-persistent-net.rules before uploading. A better solution is to delete that file, so that it will be automatically recreated upon the next boot and will map your particular board's Ethernet MAC address to eth1.
@over9000 The U-boot bootloader is store in flash and this is loaded before Linux. However, if your Ethernet enumerates as eth1 on one board and as eth2 or eth3 etc. on others, it is probably because 70-persistent-net.rules didn't exist before the SD card was inserted into the first board. Then when you plugged that same SD card into another board Linux found a new MAC address and decided to enumerate that interface as eth2, and so on...
Cheers,
Andrew
Andrew Back