Network Interfaces

From Sabayon Wiki
Revision as of 15:14, 18 March 2013 by Inktvis75 (talk | contribs) (Introduction)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
i18n: en


If you are new in Linux, used other Unix family members or even older Linux systems, maybe this 2 questions sound familiar:

- What / Where are my network interfaces

- Where is my eth0

This article describes the network device naming scheme in modern distributions like Sabayon.

Which interfaces are available

There are multiple ways to identify the available network interfaces. The first method is using the sysfs filesystem. Sysfs exports information about devices and drivers from the kernel.

# ls /sys/class/net

This command shows for every available interface a directory. In this directory you can find a lot of interesting information. Like the mac-address:

# cat /sys/class/net/eno1/address

Or the vendor:

# cat /sys/class/net/eno1/device/vendor

If you don't want to use the sysfs method, you can use:

# sudo ip link show

Where is eth0 ?

In the example above you see the network interface eno1. What is this interface ? Or maybe you see other ones like enp2s0... It's all about "Predictable Network Interface Names" (

For onboard devices the syntax is: enoX, for PCI Express it's ensX. If you have a network card with more then one port: enspXsY (p=pci slot; s=connector).

Wireless devices depend on the driver, sometimes the old wlanX interface is there, but most of the time something like: wlp3s0. Again: p=pci slot.

I don't want this

It's not for fun that this naming scheme is used. Especially in virtual environments, blade environments, servers with hotplugable network interfaces, it's difficult to identify interfaces. Even more: because the names are predictable, it's easier to create standard firewall rules.

But if you are at home, and there is nothing plugable, maybe the new device names are more difficult to remember. There is a way to go back to the old naming scheme:

# sudo ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules