Iptables-指定范围

Iptables-指定范围

我是 IPtables 新手。我在路由器中添加了以下几行,以将 DNS 请求重定向到 openDNS。

iptables -t nat -I PREROUTING -i br0 -s 192.168.1.200 -p udp --dport 53 -j DNAT --to 208.67.222.222
iptables -t nat -I PREROUTING -i br0 -s 192.168.1.200 -p tcp --dport 53 -j DNAT --to 208.67.222.222

iptables -t nat -I PREROUTING -i br0 -s 192.168.1.201 -p udp --dport 53 -j DNAT --to 208.67.222.222
iptables -t nat -I PREROUTING -i br0 -s 192.168.1.201 -p tcp --dport 53 -j DNAT --to 208.67.222.222

我确实在所有设备上都有很多这样的行。我想避免这种多行。

问题是如何在单个命令(一个用于,一个用于)行中指定 IP 范围(比如说192.168.1.200) ?192.168.1.240tcpudp

答案1

-s你可以通过替换来实现--src-range

前任 :

iptables -t nat -I PREROUTING -i br0 -m iprange --src-range 192.168.1.200-192.168.1.240 -p udp --dport 53 -j DNAT --to 208.67.222.222

您还可以使用以下方法处理整个 192.168.1.0/24 网络

iptables -t nat -I PREROUTING -i br0 -s 192.168.1.0/24 -p tcp --dport 53 -j DNAT --to 208.67.222.222

来源:iptables 手册页https://linux.die.net/man/8/iptables

相关内容