在实践中使用nmcli配置路由表时,需通过NetworkManager连接配置文件进行操作。以下是核心步骤及注意事项:
-
修改连接配置:
nmcli connection modify <CONN_NAME> ipv4.routes "192.168.2.0/24 192.168.1.1" nmcli connection modify <CONN_NAME> ipv4.gateway 192.168.1.1
需特别注意路由格式为"目标网段 网关",多个路由用逗号分隔。
-
双网卡环境处理: 当存在多默认网关时,必须设置metric值强制指定优先级:
nmcli connection modify <WAN_CONN> ipv4.route-metric 100 nmcli connection modify <BACKUP_CONN> ipv4.route-metric 200
常见挑战包括:
- 动态获取IP场景下,DHCP服务可能覆盖手动配置的路由,需在/etc/dhcp/dhclient.conf中添加supersede routers 192.168.1.1;
- 网络命名空间隔离场景中,需通过nmcli device set
managed no释放设备控制权 - KVM虚拟化环境下,网桥模式需确保物理接口metric值低于桥接接口
验证命令推荐组合使用:
nmcli device show <DEVICE> | grep IP4.ROUTE
ip route get 8.8.8.8 | grep -Po 'via \\K[^ ]*'
最后建议在/etc/NetworkManager/conf.d/中创建00-persistent-ipv4-routes.conf,添加以下内容防止服务重启丢失配置: [main] plugins=keyfile no-auto-default=*