NetworkManager、systemd-networkd、Netplan 一篇吃透用过 Linux 的同学,大概率都踩过网络配置的坑——👉 Fedora 上能用的方法,到 Ubuntu 上就失灵不同 Linux 发行版,默认用的网络配置工具不一样。今天这篇,用最通俗的语言 + 可直接抄的实操示例,•Fedora / CentOS / RHEL 系默认•自动对接 NetworkManager 或 networkd1️⃣ NetworkManager:新手友好的“全能工具”•AlmaLinux / Rocky Linux 8/etc/NetworkManager/NetworkManager.conf
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/NetworkManager/system-connections/*.nmconnection
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0BOOTPROTO=staticONBOOT=yesIPADDR=192.168.1.100PREFIX=24GATEWAY=192.168.1.1DNS1=8.8.8.8
DEVICE=eth0BOOTPROTO=dhcpONBOOT=yes
sudo nmcli connection reloadsudo systemctl restart NetworkManager
2️⃣ systemd-networkd:服务器党的最爱/etc/systemd/network/05-eth0.network
[Match]Name=eth0[Network]DHCP=noAddress=192.0.2.123/24Gateway=192.0.2.1DNS=203.0.113.1 203.0.113.2
sudo systemctl restart systemd-networkd
3️⃣ Netplan:Ubuntu 专属“懒人方案”/etc/netplan/01-netcfg.yaml
network: version: 2 renderer: networkd ethernets: eth0: dhcp4: yes accept-ra: yes
network: version: 2 ethernets: eth0: addresses: - 192.0.2.17/24 - 192.0.2.18/24 routes: - to: default via: 192.0.2.1 nameservers: addresses: [8.8.8.8, 8.8.4.4]
sudo netplan generatesudo netplan apply
sudo systemctl disable --now systemd-networkd
sudo systemctl disable --now NetworkManager
•networkd:[Match]、[Network] 拼写固定| 场景 | 工具 || -------------------- | ---------------- || 桌面 / Fedora / CentOS | NetworkManager || 服务器 / 云主机 | systemd-networkd || Ubuntu 18.04+ | Netplan |