如何创建虚拟网络接口并将其连接到桥梁



我正在尝试使用Arch Linux上的桥梁创建一个Virtal Qemu机器网络,并试图创建主机,以测试我编写的分布式程序。我发现许多Howtos在使用桥梁上使用主机的物理NIC连接到VM。这很好。但是,我不希望外部网络可见VM,而是希望在主机上创建一个虚拟接口以连接到VM。这是我到目前为止尝试过的桥梁并在其上启动VM的方法:

ip tuntap add tap2 mode tap
ip link set tap2 up
ip addr add dev tap2 10.10.10.2/24
ip link set tap2 master br0

由于我无法从主机到达VM,所以我必须缺少一些东西。IP链接输出是:

➜  ~ ip link                         
[...]
7: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether e6:69:29:67:cb:41 brd ff:ff:ff:ff:ff:ff
10: tap2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel master br0 state DOWN mode DEFAULT group default qlen 1000
    link/ether e6:69:29:67:cb:41 brd ff:ff:ff:ff:ff:ff

另外,该路线被证明是向下的:

➜  ~ ip route
[...]
10.10.10.0/24 dev tap2 proto kernel scope link src 10.10.10.2 linkdown 

有人知道我缺少什么吗?

不需要设置另一个虚拟接口,因为一个人可以将IP分配到桥梁:

ip addr add dev br0 <ip>

,如果这些子网在同一子网中,则可以使用

在桥上的其他设备进行通信

最新更新