我正在尝试使用 iptables 隔离 LAN 子网以防止其访问另一个子网。
路由器 #1 (192.168.0.1):192.168.0.0/255.255.255.0
路由器 #2(192.168.2.1):192.168.2.0/255.255.255.0,网关:192.168.0.1
在路由器 #1 上,我需要来自路由器 #2 客户端的传入数据包以允许 WAN 访问,但丢弃到所有其他 192.168.0.* 目的地。如何操作?
例如,路由器#2 的客户端(地址为 192.168.2.10)尝试与 192.168.0.100 建立 SSH 连接,但被阻止。
我尝试了这个命令:
iptables -I FORWARD -s 192.168.2.0/255.255.255.0 -d 192.168.0.0/255.255.255.0
-j DROP
答案1
之后
iptables -I FORWARD -s 192.168.2.0/255.255.255.0 -d 192.168.0.0/255.255.255.0 -j DROP
添加另一条规则
iptables -A FORWARD -s 192.168.2.0/255.255.255.0 -d 0.0.0/0.0.0.0 -j ACCEPT
第二条规则只会获取第一条规则不匹配的数据包。规则的顺序很重要。