Network management

From Gentoo Wiki
Jump to: navigation, search

This article lists network management software to establish and manage network connections.

Available software

Here are some network packages, along with their capabilities, that are available in Gentoo:

The solutions listed as "All-in-one" usually make use of other software listed bellow, e.g. wpa_supplicant.
Gentoo provides several tools for managing your network connections, see Message from openrc-0.12.4.
Software Ethernet Wifi DSL Modem WiMAX 3G VPN GUI Boot time
OpenRC / netifrc Yes Yes Yes Yes Yes Yes Yes No
Can use gui of wpa_supplicant
DHCPCD Yes Yes No No No No No Yes
See dhcpcd-ui article
NetworkManager Yes Yes Yes No Yes Yes Yes Yes Yes
Wicd Yes Yes No No No No No Yes No
Wifi only
wpa_supplicant No Yes No No Yes No No Yes
qt4 and qt5 use flags provide wpa_gui
Modem only
kde-apps/kppp No No No Yes No No No Yes No
net-dialup/wvdial No No No Yes No Yes No No No


Network connectivity is needed in order to begin to manage networks. On most systems, connectivity will come through a wired or wireless network using a Network Interface Controller (NIC). Hundreds if not thousands of NICs are supported in Linux. All NICs require a kernel driver in order to talk to the Linux kernel. Some NICs, especially wireless NICs, require firmware in order to operate properly.


Kernel support for wired (ethernet) network interfaces can be found under the following menuconfig path:

KERNEL Wired network interfaces
Device Drivers  --->
   [*] Network device support  ---> 
      [*]   Ethernet driver support  --->

Kernel support for wireless (wifi) network interfaces can be found under this menuconfig path:

KERNEL Wireless network interfaces
Device Drivers  --->
   [*] Network device support  ---> 
      [*]   Wireless LAN  --->

See the kernel configuration article for information on how to manually configure the kernel.


If required by the hardware, install the sys-kernel/linux-firmware package:

root #emerge --ask sys-kernel/linux-firmware



The following commands can be used to configure network interfaces:

  • ip
  • ifconfig (deprecated)


Which network interfaces are on the computer?

Get the device name by listing the /sys/class/net directory contents using ls -al or the tree command (provided by the app-text/tree package):

user $tree /sys/class/net
├── enp2s14 -> ../../devices/pci0000:00/0000:00:1e.0/0000:02:0e.0/net/enp2s14
├── lo -> ../../devices/virtual/net/lo
├── sit0 -> ../../devices/virtual/net/sit0
└── wlp8s0 -> ../../devices/pci0000:00/0000:00:1c.0/0000:08:00.0/net/wlp8s0
  • How to find out (lspci, lshw)?
  • What are those in /sys/devices/virtual/net/ ?

Persistent/Predictable interface naming

Network device names eth0, wlan0, etc. as provided by the kernel could be changed on boot (see dmesg) by the /lib/udev/rules.d/80-net-name-slot.rules udev rule.

To keep the classic naming this rule can be overwritten with an equally named empty file in the /etc/udev/rules.d directory:

root #touch /etc/udev/rules.d/80-net-name-slot.rules

See also