Eth0 not showing

Good evening.

I have just installed Vyos 1.4-rolling-202211290318 and have this same image installed successfully on other servers that are both identical and different.

This server is a Dell R430 with 2 factory 2-port GIG-E cards and 1 2-port 10G (Dell/Intel 520).

I see all 4 gig-e and both 10G in dmesg but Vyos does not see eth0, which should be one of the gig-e ports. I have an identical server sitting next to it and everything works fine. Not sure where to look to solve this problem.

Does anyone have any suggestions?

Confirm your system recognizes your ethernet ports with

sudo ip link show

and if they are there then you can add them to your config by:

configure
set interfaces ethernet eth0
commit
save
exit

We cannot add the interface; it complains that there isn’t an eth0.

From dmesg, we see an entry for eth0 with a mac that is sequentially consistent with eth1, 2, and 3

[ 5.702371] tg3 0000:02:00.0 eth0: Tigon3 [partno(BCM95720) rev 5720000] (PCI Express) MAC address 44:a8:42:3c:15:e0
[ 5.831631] tg3 0000:02:00.1 eth1: Tigon3 [partno(BCM95720) rev 5720000] (PCI Express) MAC address 44:a8:42:3c:15:e1
[ 5.881636] tg3 0000:03:00.0 eth2: Tigon3 [partno(BCM95720) rev 5720000] (PCI Expre**ss) MAC address 44:a8:42:3c:15:e2
[ 5.989381] tg3 0000:03:00.1 eth3: Tigon3 [partno(BCM95720) rev 5720000] (PCI Express) MAC address 44:a8:42:3c:15:e3

Looking at ip link show, there is no eth0, however, there’s an e2 which has the same mac as shown for eth0 as shown in dmesg

2: e2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 44:a8:42:3c:15:e0 brd ff:ff:ff:ff:ff:ff
3: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
link/ether 44:a8:42:3c:15:e1 brd ff:ff:ff:ff:ff:ff
4: eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
link/ether 44:a8:42:3c:15:e2 brd ff:ff:ff:ff:ff:ff
5: eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 44:a8:42:3c:15:e3 brd ff:ff:ff:ff:ff:ff

Somehow, eth0 from dmesg is becoming e2 when we look at it in ip link show.

Hi @bruceg, could you share dmesg output and sudo cat /run/udev/log/vyos-net-name

To resolve this problem, try to add the following config and reboot the router

configure
set interfaces ethernet eth5 hw-id 44:a8:42:3c:15:e0
commit
save

If it does not work for you, edit /config/config.boot and add eth0 with hw-id 44:a8:42:3c:15:e0 and reboot the router

root@vyos:/home/vyos# cat /run/udev/log/vyos-net-name
INFO:root:lookup e4, 44:a8:42:3c:15:e2
INFO:root:lookup e5, 44:a8:42:3c:15:e3
INFO:root:lookup e6, a0:36:9f:1f:10:a8
INFO:root:lookup e2, 44:a8:42:3c:15:e0
INFO:root:lookup e3, 44:a8:42:3c:15:e1
INFO:root:lookup e7, a0:36:9f:1f:10:aa
INFO:root:lookup eth0, 44:a8:42:3c:15:e5
DEBUG:root:config file entries: {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file entries: {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file entries: {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file entries: {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file entries: {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file entries: {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file interfaces are {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file interfaces are {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file interfaces are {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file interfaces are {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file interfaces are {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file interfaces are {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
INFO:root:use mapping from config file: ‘a0:36:9f:1f:10:aa’ → ‘eth5’
INFO:root:use mapping from config file: ‘44:a8:42:3c:15:e2’ → ‘eth2’
INFO:root:use mapping from config file: ‘44:a8:42:3c:15:e3’ → ‘eth3’
DEBUG:root:adding assigned interfaces: {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:on boot, returned name is eth5
INFO:root:use mapping from config file: ‘a0:36:9f:1f:10:a8’ → ‘eth4’
DEBUG:root:on boot, returned name is eth2
DEBUG:root:on boot, returned name is eth3
DEBUG:root:adding assigned interfaces: {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:on boot, returned name is eth4
DEBUG:root:config file entries: {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
DEBUG:root:config file interfaces are {‘44:a8:42:3c:15:e1’: ‘eth1’, ‘44:a8:42:3c:15:e2’: ‘eth2’, ‘44:a8:42:3c:15:e3’: ‘eth3’, ‘a0:36:9f:1f:10:a8’: ‘eth4’, ‘a0:36:9f:1f:10:aa’: ‘eth5’}
INFO:root:use mapping from config file: ‘44:a8:42:3c:15:e1’ → ‘eth1’
DEBUG:root:on boot, returned name is eth1
INFO:root:biosdevname returned ‘eth0’ for ‘e2’
INFO:root:new name for ‘e2’ is ‘eth0’
DEBUG:root:on boot, returned name is eth0
INFO:root:biosdevname returned ‘eth6’ for ‘eth0’
INFO:root:new name for ‘eth0’ is ‘eth6’
DEBUG:root:on boot, returned name is eth6

eth5 is currently one of the 10G interfaces

Adding eth0 to /config/config.boot did not work.

Here is the contents of dmesg in 2 separate files

dmesg-1.txt (35.4 KB)
dmesg-2.txt (29.2 KB)
dmesg-3.txt (28.4 KB)

Try to compare hw-id uniq names in /config/config.boot
Interesting moment with dell idrac interface, maybe we have to do something with it name.

I have another server that is the exact same thing. It works just fine with none of these issues. Would you like to see the same information from it?

Any other ideas? We’re stuck in the ditch…

Maybe Integrated Dell Remote Access Controller configured in a bit different way on this server.
Try to define this hw-id for eth6 instead of eth0

It is working now. We had to disable SR-IOV