如果尚未 ping 通网关,则无法 ping 通网关或互联网

如果尚未 ping 通网关,则无法 ping 通网关或互联网

我对网络还很陌生,我试图寻找我的问题的答案,但没有找到。

我有 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 时我看不到上面的最后一条规则,这正常吗?

相关内容