我该如何修复通过 iptables 进行的 ping 问题?

我该如何修复通过 iptables 进行的 ping 问题?

我在防火墙机器上使用 iptables 编写了一个脚本,在执行该脚本时,我想 ping 一个网页,但出现错误:ping:www.facebook.com:暂时无法进行名称解析,当我运行脚本时会发生这种情况,当我重新启动时,一切都顺利进行,没有任何问题,我也尝试了 resolv.conf,但它不起作用。

PS:有两个接口 enp0s3 连接到互联网,另一个接口 enp0s8 来自内部 LAN

我把剧本给你

sudo iptables -F

sudo iptables -X

sudo iptables -Z

sudo iptables -t nat -F

sudo iptables -P INPUT DROP

sudo iptables -P OUTPUT DROP

sudo iptables -P FORWARD DROP

sudo iptables -t nat -A PREROUTING -i enp0s3 -p tcp --dport 80 -j DNAT --to-destination 172.16.30.10:80
sudo iptables -t nat -A PREROUTING -i enp0s3 -p tcp --dport 443 -j DNAT --to-destination 172.16.30.10:443
sudo iptables -t nat -A PREROUTING -i enp0s3 -p tcp --dport 22 -j DNAT --to-destination 172.16.30.11:22

sudo iptables -t nat -A POSTROUTING -s 172.16.30.0/24 -o enp0s3 -j MASQUERADE

sudo iptables -A FORWARD -i enp0s3 -o enp0s8 -p tcp --dport 22 -d 172.16.30.11 -j ACCEPT

sudo iptables -A FORWARD -i enp0s8 -o enp0s3 -m state --state ESTABLISHED, RELATED -j ACCEPT

sudo iptables -A FORWARD -o enp0s3 -i enp0s8 -s 172.16.30.0/24 -p icmp -j ACCEPT

sudo iptables -A FORWARD -i enp0s3 -o enp0s8 -s 172.16.30.0/24 -p icmp -j ACCEPT


sudo iptables -A FORWARD -i enp0s8 -o enp0s3 -s 172.16.30.0/24 -p udp --dport 53 -j ACCEPT

sudo iptables -A FORWARD -o enp0s8 -i enp0s3 -d 172.16.30.0/24 -p udp --dport 53 -j ACCEPT

sudo iptables -A FORWARD -i enp0s8 -o enp0s3 -s 172.16.30.0/24 -p tcp --dport 80 -j ACCEPT
sudo iptables -A FORWARD -o enp0s8 -i enp0s3 -s 172.16.30.0/24 -p tcp --dport 80 -j ACCEPT

sudo iptables -A FORWARD -i enp0s8 -o enp0s3 -s 172.16.30.0/24 -p tcp --dport 443 -j ACCEPT
sudo iptables -A FORWARD -o enp0s8 -i enp0s3 -s 172.16.30.0/24 -p tcp --dport 443 -j ACCEPT

sudo iptables -A INPUT -d 172.16.30.1 -p icmp -j DROP

sudo iptables -A OUTPUT -o enp0s3 -p icmp -j ACCEPT

sudo iptables -A INPUT -i enp0s3 -p icmp -j ACCEPT


sudo iptables -A OUTPUT -o enp0s8 -p icmp -j ACCEPT

sudo iptables -A INPUT -i enp0s8 -p icmp -j ACCEPT 

相关内容