我对网络还很陌生,我试图寻找我的问题的答案,但没有找到。
我有 4 个虚拟机,我们将其称为 1、2、3、4。第一个(网关)有一个主机专用和桥接网卡,其他的只有一个主机专用。
我设置了一些 iptables 规则,将虚拟机的 2、3、4 个数据包重定向到网关,让它们能够访问互联网,这很有效,但我既无法 ping 网关,也无法 ping 8.8.8.8,例如,只要我没有使用第一个(网关)ping 虚拟机,在我这样做之后,我可以 ping gw、google 等等,在此之前,我只能 ping 本地机器。我希望能够访问互联网并 ping GW,而不必使用 GW 来 ping 它。
以下是我制定的 iptables 规则:
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A FORWARD -i enp0s8 -o enp0s3 -j ACCEPT
iptables -A FORWARD -i enp0s3 -o enp0s8 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o enp0s3 -j MASQUERADE
这是第一个VM的界面:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo enp0s8
iface lo inet loopback
auto lo enp0s3
iface lo inet loopback
# The primary network interface
auto enp0s3
iface enp0s3 inet dhcp
auto enp0s8
iface enp0s8 inet static
address 192.168.1.1
netmask 255.255.255.0
并且我的另外一台虚拟机也有同样的情况,只是 IP 不同:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto enp0s3
iface enp0s3 inet static
address 192.168.1.3
netmask 255.255.255.0
gateway 192.168.1.1
谢谢!当我输入 iptables -S 时我看不到上面的最后一条规则,这正常吗?