我有一个使用 nmcli 创建的虚拟网桥 br0,并连接了一个物理以太网接口
桥接设备用于 kvn virt-manager 虚拟机。它们获得一个静态 IP 地址。例如,一个虚拟机获得 IP 地址 192.168.39.11 主机是 192.168.39.10
:
root@black:/etc/NetworkManager/system-connections# nmcli con show
NAME UUID TYPE DEVICE
br0 a4a276d8-cbdb-4119-83f9-4a7403e98adf bridge br0
netplan-eno2 80ab1970-e833-372e-8635-f330b7d9f1f0 ethernet eno2
netplan-eno1 10838d80-caeb-349e-ba73-08ed16d4d666 ethernet eno1
rumahtumi c9c05065-f2f8-48b5-a3bb-b794776a805a wifi wlp9s0
virbr0 d5dcf8cb-80f2-448c-b468-d9b1d4ab2e86 bridge virbr0
bridge-slave-eno2 cf0b153e-8a4f-48e1-9a0b-bdf83e80d6c8 ethernet --
它运行良好,但主机和虚拟机之间的流量似乎会传到网络并返回。至少,如果我这样做:
ip route add 192.168.39.11/32 dev br0
然后
ping 192.168.39.11
平均 ping 时间减半。从虚拟机返回主机也可以看到相同的好处。
但是 `ip route add```...不是永久的
所以我尝试这个:
nmcli connection modify br0 +ipv4.routes 192.168.39.11/32
然后关闭并建立 br0 连接(或重新启动)。但是,从此时起,VM 没有到网络的路由,它没有获得 DHCP 租约。
因此,nmcli connection modify
要么是错误的,要么与使用添加路线的方式不同ip route add
更新:当我将备份的 .nmconnection 文件与修改后的文件进行比较时,nmcli connection modify...
发现两个变化。其中一个是:
...
[ipv4]
method=auto
route1=192.168.39.11/32
另一个我忽略的是 部分timestamp
中的一行[connection]
。我已将其删除,现在似乎可以正常工作。虽然我必须关闭第二个以太网接口的原始连接,并打开 br0
编辑:我认为我的问题更可能是这样的:当添加路由时,nmcli 正在删除从属连接,因此禁用桥接器。