在 RHEL 6.1 中,我按照以下简化描述运行 3 个虚拟机和 2 个虚拟交换机:
桥梁
- sw-后端
- 西南非军事区
虚拟机
- 防火墙 -> eth0:sw-backend 和 eth1:sw-dmz
- be-vm -> eth0: sw-backend - 默认 gw 是防火墙 VM
- dmz-vm -> eth0: sw-dmz - 默认 gw 是防火墙 VM
防火墙虚拟机有一条规则,允许 be-vm 通过 SSH 连接到 dmz-vm。我可以从 be-vm ping 到 dmz-vm,甚至可以建立连接,但似乎没有数据通过。即:
be-vm# telnet dmz-vm 22
Trying dmz-vm...
Connected to dmz-vm (x.x.x.x)
Escape character is '^]'.
...这就是它所能达到的程度了。
标题提到 RHEL5 和 RHEL6 之间的变化的原因是这些精确的虚拟机和网络设置在 RHEL 5.7 中运行良好。
谢谢!
答案1
以下客户机是充当另外两个客户机之间的防火墙的虚拟机:
- 使用 virtio_net 的 RHEL5 主机上的 RHEL5 客户机 = 运行正常
- RHEL6 主机上使用 virtio_net 的 RHEL5 客户机 = 无法 100% 正常工作.. 客户机之间的 TCP 握手后数据包被丢弃
- 使用 e1000 的 RHEL6 主机上的 RHEL5 客户机 = 运行正常
- RHEL6 主机上使用 virtio_net 的 RHEL6 客户机 = 运行正常
希望这对某人有帮助。非常奇怪!!
答案2
“telnet dmz-vm”
SSH 是否不符合“防火墙 VM 有一条规则,允许 be-vm 通过 SSH 连接到 dmz-vm。”telnet 端口 23 是否可能以某种方式映射到其他端口(例如 SSH)?