Ubuntu 24.04 有线网络静态IP设置无法永久保存的问题求助
Ubuntu 24.04 有线网络静态IP设置无法永久保存的问题求助
老哥我之前在Ubuntu 24.04上也踩过这个坑,GUI设置静态IP老是自动跳回DHCP,折腾了好久才搞定,给你几个亲测有效的排查和解决思路:
先理清Netplan和Network Manager的管辖关系
Ubuntu 24.04默认用Network Manager管理网络,要是之前乱改Netplan配置很容易冲突。先打开/etc/netplan/01-network-manager-all.yaml,确保内容是这样的:network: version: 2 renderer: NetworkManager改完后执行这俩命令生效:
sudo netplan generate && sudo netplan apply sudo systemctl restart NetworkManager彻底删除旧连接,用命令行重建静态IP配置
GUI有时候会残留旧配置,不如命令行来得干净:- 先列出所有网络连接,找到你的有线连接名:
nmcli con show - 删除旧的有线连接(比如叫"Wired connection 1"):
sudo nmcli con delete "Wired connection 1" - 用命令行新建静态IP连接,把参数换成你自己的:
这里sudo nmcli con add type ethernet con-name "Static-Wired" ifname enp0s3 \ ip4 192.168.1.100/24 gw4 192.168.1.1 \ ipv4.dns "8.8.8.8,8.8.4.4" \ ipv4.method manualenp0s3是网卡名,用ip link show就能查到;IP、网关、DNS换成你本地网络的参数就行。 - 启用新连接:
sudo nmcli con up "Static-Wired"
- 先列出所有网络连接,找到你的有线连接名:
排查后台DHCP服务冲突
有时候dhclient或者systemd-networkd会偷偷抢着管理网络:- 停止并禁用dhclient:
sudo systemctl stop dhclient sudo systemctl disable dhclient - 要是systemd-networkd在运行,也得停掉:
sudo systemctl stop systemd-networkd sudo systemctl disable systemd-networkd
- 停止并禁用dhclient:
检查第三方工具或udev规则干扰
有些系统优化工具、自定义udev规则可能会重置网络配置:- 看看
/etc/udev/rules.d/下有没有带network或ethernet的规则文件,有的话先重命名(比如加个.bak后缀),重启后试试 - 要是装了
networkd-dispatcher这类工具,直接卸载:sudo apt remove networkd-dispatcher
- 看看
要是做完这些还是没解决,你可以把nmcli con show "Static-Wired"的输出,还有/var/log/syslog里和Network Manager相关的日志贴出来,我再帮你排查~
备注:内容来源于stack exchange,提问作者Leandro




