因此我决定今天在两台虚拟机上进行玩一下,EoIP Tunnels
并在它们上安装了免费试用版RouterOS
。
我iptables
在虚拟机管理程序(即Proxmox
)上设置了规则,以防止除了我的电脑之外的任何输入到虚拟机,但我的OUTPUT
策略是ACCEPT
。
现在我无法ping
从除我的电脑之外的任何地方访问虚拟机,也无法将ping
我的两个虚拟机(RouterOS
)相互访问,但是EoIP Tunnel
工作正常并且我正在将数据包从一个虚拟机路由RouterOS
到另一个虚拟机。
iptables
在两个虚拟机上进行配置:
IN ACCEPT -source a.b.c.d
IN DROP
(abcd 是我的电脑的 IP)
我做错了什么?
RouterOSs 的配置:
VM1:
/ip address
# ADDRESS NETWORK INTERFACE
0 r.o.s.1/32 m.a.i.n ether1
1 172.22.22.1/30 172.22.22.0 eoiptunnel
/ip route
# DST-ADDRESS PREF-SRC GATEWAY DISTANCE
0 A S 0.0.0.0/0 172.22.22.2 1
1 ADC m.a.i.n/32 r.o.s.1 ether1 0
2 ADC 172.22.22.0/30 172.22.22.1 eoiptunnel 0
VM2:
/ip address
# ADDRESS NETWORK INTERFACE
0 r.o.s.2/32 m.a.i.n ether1
1 172.22.22.2/30 172.22.22.0 eoiptunnel
IP地址:
r.o.s.1 : Router OS 1
r.o.s.2 : Router OS 2
m.a.i.n : Main Server IP
我通过主机服务器监控流量,iptraf
发现两个RouterOS
虚拟机通过另一个接口互相看到对方,实际上我意识到每个虚拟机proxmox
都会创建 4 个接口,因此我假设位于同一座桥上的两个虚拟机之间的“一些”数据包会通过另一个接口。
proxmox
我必须在创建每个 VM 时阅读有关创建的多个接口的文档。
答案1
可以说你没有做错什么。
您的iptables
规则阻止了进入 Proxmox 环境的流量,并且您的两位客人正在通过内部桥互相交谈。
这些iptables
规则不会影响虚拟机之间的桥接流量,这是设计使然。(如果您通过主机将流量从一个虚拟机路由到另一个虚拟机,或者尝试在虚拟机和主机之间进行 ping,则iptables
规则将适用。)