通过 NetworkManager 添加的路由与 ip 路由不正确。如何让 NetworkManager 创建正确的路由?

通过 NetworkManager 添加的路由与 ip 路由不正确。如何让 NetworkManager 创建正确的路由?

当我使用 添加路线时nmcli,报告的路线ip route show不正确: nmcli connection modify eth2 +ipv4.routes "10.0.6.1/32 10.1.7.1"

10.0.6.1 dev eth2 proto static src 10.1.7.1

这条路线行不通。

但是,如果我使用的ip route addip route show正确的并且路线有效:

ip route add 10.0.6.1/32 dev eth2 src 10.1.7.1

10.0.6.1 dev eth2  scope link  src 10.1.7.1

我似乎无法找到使用 nmcli 添加路由并使其正确显示的正确方法。有什么想法,或者我缺少什么吗?

答案1

也许您的问题与虚拟机的设置有关?在更简单的情况下,我的网络上有另一个路由器, nmcli 按预期工作。在我的例子中,网络是 192.168.1.0/24,默认路由是 192.168.1.1,并且 192.168.1.9 处还有另一个路由器连接到另一个网络 192.168.8.0/24。

nmcli c modify eth0 +ipv4.routes "192.168.8.0/24 192.168.1.9"
nmcli c up eth0

这会在 ip 路由中产生预期结果:

default via 192.168.1.1 dev eth0  proto static  metric 100
192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.5  metric 100
192.168.8.0/24 via 192.168.1.9 dev eth0  proto static  metric 100 

在 nmcli c 中显示 eth0:

IP4.ADDRESS[1]:                         192.168.1.5/24
IP4.GATEWAY:                            192.168.1.1
IP4.ROUTE[1]:                           dst = 192.168.8.0/24, nh = 192.168.1.9, mt = 100

这是在 Fedora 24 上。

相关内容