我已经配置了一个包含一台主机(我的电脑)和两台虚拟机的网络。我现在不想使用 libvirt 将虚拟机连接到主机,因此我手动创建了网桥和两个 tap 接口。配置如下:
vm1 /etc/网络/接口:
auto lo
iface lo inet loopback
auto enp0s2
iface enp0s2 inet static
address 192.168.50.3
netmask 255.255.255.0
dns-nameservers 8.8.8.8
up ip route add default via 192.168.50.1 dev enp0s2
另一个vm2也一样:
auto lo
iface lo inet loopback
auto enp0s2
iface enp0s2 inet static
address 192.168.50.2
netmask 255.255.255.0
dns-nameservers 8.8.8.8
up ip route add default via 192.168.50.1 dev enp0s2
这是主持人:
auto enp4s0
13 iface enp4s0 inet manual
12
11 auto br0
10 iface br0 inet static
9 address 192.168.50.1
8 netmask 255.255.255.0
7 network 192.168.50.0
6 broadcast 192.168.50.255
5 # gateway 192.168.50.1
4 bridge_ports enp4s0 tap0 tap1
3 bridge_stp off
2 bridge_fd 0
1 bridge_maxwait 0
45 dns-nameservers 8.8.8.8
主机可以 ping 通虚拟机,虚拟机现在可以 ping 通主机。但是从 192.168.50.3 虚拟机 192.168.50.2 无法访问。这里的问题是什么?我在“掌握 kvm 虚拟化”中读到,这足以获取连接(已启用 ip 转发,但据我所知,这对桥接器无关紧要)