在方德桌面操作系统V5.0-G23上使用 NetworkManager 配置静态 IP 和动态 IP 的完整指南
1. 准备工作
1. 确认网络接口名称
使用以下命令查看网卡名称(如 ens32、enp0s3 等):
yuhua@yuhua-virtualmachine:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:6a:2c:5d brd ff:ff:ff:ff:ff:ffinet 172.16.104.198/24 brd 172.16.104.255 scope global dynamic noprefixroute ens32valid_lft 86314sec preferred_lft 86314secinet6 fe80::230d:430c:b439:799a/64 scope link noprefixroute valid_lft forever preferred_lft forever
3: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 12:66:d3:ab:f5:b8 brd ff:ff:ff:ff:ff:ffinet 172.17.0.1/16 brd 172.17.255.255 scope global docker0valid_lft forever preferred_lft foreverinet6 fe80::46ed:3f6e:3bc:93d7/64 scope link noprefixroute valid_lft forever preferred_lft forever
4: veth5ef65a0@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default link/ether 06:16:c6:36:29:d6 brd ff:ff:ff:ff:ff:ff link-netnsid 0inet6 fe80::416:c6ff:fe36:29d6/64 scope link valid_lft forever preferred_lft forever
yuhua@yuhua-virtualmachine:~$
2.安装 NetworkManager
如果尚未安装,默认都已安装,执行以下命令:
sudo apt update && sudo apt install network-manager
sudo systemctl enable --now NetworkManager
3.禁用冲突服务(如 ifupdown)
确保 /etc/network/interfaces 中未定义目标网卡(如 ens32),否则 NetworkManager 会忽略该接口:
yuhua@yuhua-virtualmachine:/etc/network/interfaces.d$ cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
# Include files from /etc/network/interfaces.d:
source /etc/network/interfaces.d/*
yuhua@yuhua-virtualmachine:/etc/network/interfaces.d$ ls -l /etc/network/interfaces.d/
总用量 0
#如果有注释掉类似以下内容:
# auto ens32
# iface ens32 inet dhcp
二、配置静态 IP
方法1:使用 nmcli 命令行工具
# 创建名为 "yuhua" 的静态连接
sudo nmcli connection add con-name yuhua type ethernet ifname ens32 \ipv4.addresses 172.16.104.199/24 \ipv4.gateway 172.16.104.254 \ipv4.dns "8.8.8.8,114.114.114.114" \ipv4.method manual \ipv6.method ignore# 激活连接
sudo nmcli connection up yuhua
方法2:手动编辑配置文件
1.创建配置文件:
sudo vim /etc/NetworkManager/system-connections/yuhua.nmconnection
2.写入以下内容(严格注意格式,不要添加行内注释):
[connection]
id=yuhua
type=ethernet
#网卡名称
interface-name=ens32
#是否开机自动连接
autoconnect=false[ipv4]
method=manual
#静态IP和子网掩码
addresses=172.16.104.199/24
#网关
gateway=172.16.104.254
#DNS(多个用分号分隔)
dns=8.8.8.8;114.114.114.114;
[ipv6]
#禁用IPv6
method=ignore
3.设置权限并重载配置:
sudo chmod 600 /etc/NetworkManager/system-connections/yuhua.nmconnection
sudo chown root:root /etc/NetworkManager/system-connections/yuhua.nmconnection
#重新加载配置
sudo nmcli connection reload
#激活连接
sudo nmcli connection up yuhua
# 重启 NetworkManager
sudo systemctl restart NetworkManager
#查看连接是否加载
sudo nmcli connection show | grep yuhua
三、配置动态 IP(DHCP)
如果需要恢复动态 IP,只需停用静态连接并启用默认 DHCP 连接:
sudo nmcli connection down yuhua
sudo nmcli connection up "有线连接 1" # 根据实际名称修改
遇见问题查看 NetworkManager 日志
journalctl -u NetworkManager | grep "yuhua"