This is in regard to linux, but if anyone knows of a general *nix method that would be good.
I booted a system yesterday with an ethernet cable plugged in. "NetworkManager" is not installed, so once it started I went to look for the name of the ethernet interface with
ifconfig to start a DHCP client manually, but it did not show anything other than
The NIC was listed via
lspci, and the appropriate kernel driver was loaded. The system normally uses wifi, and I could remember the interface name for that was
wlan0. When I tried
ifconfig wlan0 up,
wlan0 appeared. But the only ethernet interface names I could remember were
em[N] -- neither of which worked.
This document refers to "predictable interface names" but does not do a good job of explaining what they might be in simple terms. It does refer to a piece of source code which implies the name in this case might be deduced from the the PCI bus and slot numbers, which seems like an unnecessarily complicated hassle.
Other searching around led me to believe that this might be determined by
systemd in conjunction with
udev, but there are almost 100 files in
/usr/lib/udev/rules.d and spending an hour trying to determine where (and if) there's a systemd config file for this also seems ridiculous.
It would also be nice to know for certain that they are available, not just how they might be named if they are, so I can rule out hardware problems, etc. Isn't there a simple way to find the names of available network interfaces on linux?