我有一台运行 Virtual Machine Manager 的 CentOS 7.2 主机,该主机上有 3 个来宾虚拟机(均为 CentOS 7.2)
两台服务器(A 和 B)位于同一网络 192.168.122.0/24 上,它们具有使用 NAT (virbr0) 设置的相同虚拟 NIC 配置。访客 A 的地址为 192.168.122.50,访客 B 的地址为 192.168.122.150,两者都配置了静态 IP。访客 A 可以 ping/ssh 到访客 B,反之亦然。
访客 C 位于不同的子网 192.168.100.0/24 上,虚拟网卡配置也使用 NAT (virbr1) 设置。访客 C 的静态 IP 地址为 192.168.100.100。
来宾 C 无法 ping 或 ssh 到来宾 A 或 B。但是,A 和 B 都可以 ping/ssh 到 C。尚未明确定义路由。所有来宾和主机的 Firewalld 配置都是默认的。
所有三位客人都能够上网、获取更新等。我想我应该设置一些东西以便 C 能够 ping/ssh A 和 B。但我想不出应该做什么是。有任何想法吗?
答案1
有很多方法:
将 C 客户机放入与 A 和 B 客户机相同的子网中。
对于 C 客户机,使用桥接连接而不是 NAT。然后,您将可以从 A 和 B 访客访问 C 访客,但 C 访客将无法访问 A 和 B 访客。
允许主机服务器上接口 virbr0 和 virbr1 之间的转发。运行这些命令:
iptables -I 转发 -i virbr0 -o virbr1 -s 192.168.122.0/24 -d 192.168.100.0/24 -j 接受
iptables -I 转发 -i virbr1 -o virbr0 -s 192.168.100.0/24 -d 192.168.122.0/24 -j 接受
/etc/init.d/iptables 保存
只需将第二个虚拟网卡添加到 C 机并将其连接到 virbr0 即可。