LinuxXX · Linux Network ConfigurationComparison
Distribution comparison - network configuration across distros
What you'll learn
- Recognise the default network stack on each major distribution
- Find the right config directory on each distro
- Switch between distros without rewriting all configuration
- Document the choice of network manager for a host
Prerequisites
Verified against Ubuntu 24.04 LTS · Debian 12 (Bookworm) · RHEL 9.x · Rocky Linux 9.x · AlmaLinux 9.x · Linux kernel 6.1 LTS / 6.6 LTS · systemd 255+ · OpenSSH 8.7p1 (RHEL 9) / 9.6p1 (Ubuntu 24.04) · nftables 1.0.x · chrony 4.x · Pacemaker 2.1.x · Corosync 3.1.x · 2026-08-09
The same network configuration has different homes on different distributions. This lesson is a tour of where configuration lives on the four major families: Debian, Ubuntu, RHEL, and SUSE.
Quick reference
| Distribution | Default manager | Config location | Format |
|---|---|---|---|
| Ubuntu 22.04+ | Netplan / NetworkManager or networkd | /etc/netplan/*.yaml | YAML |
| Debian 12 | ifupdown or NetworkManager or networkd | /etc/network/interfaces or /etc/NetworkManager/system-connections/ | text or keyfile |
| RHEL 9 / Rocky 9 / Alma 9 | NetworkManager | /etc/NetworkManager/system-connections/*.nmconnection | keyfile |
| Fedora | NetworkManager | same as RHEL | keyfile |
| openSUSE Leap | Wicked or NetworkManager | /etc/sysconfig/network/ | text |
| Arch | systemd-networkd | /etc/systemd/network/ | ini |
Ubuntu
Ubuntu uses Netplan as the declarative layer on top of
either NetworkManager (desktop) or systemd-networkd
(server). The config files live in /etc/netplan/*.yaml.
cat /etc/netplan/*.yaml
nmcli connection show # if NetworkManager is the renderer
networkctl status eth0 # if networkd is the renderer
Debian
Debian is more flexible (and more confusing) than Ubuntu:
- The installer may configure
/etc/network/interfaces(ifupdown). - A desktop install may use NetworkManager.
- A server install may use systemd-networkd.
The default depends on what the installer detected. Check what is running:
systemctl status networking
systemctl status NetworkManager
systemctl status systemd-networkd
Only one should be active.
RHEL family
RHEL 9, Rocky Linux 9, AlmaLinux 9, Fedora: NetworkManager
is the default everywhere. Configuration lives in
/etc/NetworkManager/system-connections/ as .nmconnection
keyfiles.
cat /etc/NetworkManager/system-connections/eth0.nmconnection
nmcli connection show
To configure from the command line, use nmcli or
nmtui. The older system-config-network and direct
editing of /etc/sysconfig/network-scripts/ is deprecated
on RHEL 9.
SUSE
openSUSE Leap uses Wicked as the traditional manager.
Configuration is in /etc/sysconfig/network/. Newer installs
may use NetworkManager.
cat /etc/sysconfig/network/ifcfg-eth0
wicked show all
Arch
Arch uses systemd-networkd by default. Configuration is in
/etc/systemd/network/ (.network files).
How to choose
In a mixed environment:
- Standardise on the platform’s default unless there is a reason not to. Fighting the default is a maintenance burden.
- Document the choice in your host inventory.
- For server fleets, prefer systemd-networkd or NetworkManager based on the platform default. Do not mix them per-host.
- If using Netplan on Ubuntu server, use
renderer: networkdfor predictability. Userenderer: NetworkManageronly if the host has Wi-Fi or moves between networks.
Where to look first
On an unknown host:
ls /etc/netplan/ 2>/dev/null
ls /etc/systemd/network/ 2>/dev/null
ls /etc/NetworkManager/system-connections/ 2>/dev/null
ls /etc/network/interfaces 2>/dev/null
ls /etc/sysconfig/network/ 2>/dev/null
systemctl status NetworkManager systemd-networkd networking wicked 2>/dev/null
Whichever file or service exists is the one to read.
Knowledge check
Knowledge check · 3 questions
Q1. On RHEL 9, where do NetworkManager connection profiles live?
Q2. Ubuntu uses Netplan as a declarative layer over NetworkManager or systemd-networkd.
Q3. Which of the following are valid network configuration locations? Select all that apply.
Passing score: 75%. Answers are checked in this browser.