iptables -I PREROUTING -t nat -p udp -s 192.168.0.62 --dport 53 -j DNAT --to-destination 23.21.182.24
我想将 192.168.0.62 而不是 192.168.0.62 设置为全局规则,每个需要 DNS 的 IP 都应首先尝试使用 23.21.182.24。
是否可以?
答案1
你应该做这样的事情:
iptables -I PREROUTING -t nat -p udp -s 0.0.0.0/0 --dport 53 -j DNAT --to-destination 23.21.182.24
它简单地定义了一个0.0.0.0
网络掩码为 的 IP 0
,这基本上是任何 IP。您还可以通过在脚本开头定义变量来使其更加优雅,如下所示:
IPTABLES='/sbin/iptables'
UNIVERSE='0.0.0.0/0'
MYPORT='53'
MYIP='23.21.182.24'
.....
$IPTABLES -I PREROUTING -t nat -p udp -s $UNIVERSE --drop $MYPORT -j DNAT --to-destination $MYIP
这将使您的 iptables 管理更加灵活并且更易于维护/更新。查看 iptables 脚本的简洁示例这里。