
與「無線隔離」作為高級路由器上的一項功能的工作方式類似,我想確保有線客戶端無法存取 LAN/VLAN 的任何其他成員(但它們應該能夠存取網際網路)。
有線設備的四個實體連接埠中的每一個都分配了一個靜態IP(xxx66如下),並且每個連接埠都在自己的VLAN中。我想確保它們無法存取 VLAN 中的任何其他裝置。
這是我新增到路由器的防火牆腳本中的內容:
iptables -I FORWARD -s 10.0.1.66 -d 10.0.1.0/24 -p all -j DROP
iptables -I FORWARD -s 10.0.2.66 -d 10.0.2.0/24 -p all -j DROP
iptables -I FORWARD -s 10.0.3.66 -d 10.0.3.0/24 -p all -j DROP
iptables -I FORWARD -s 10.0.4.66 -d 10.0.4.0/24 -p all -j DROP
不幸的是,它並沒有阻止我從 10.0.1.66 ping 到 10.0.1.116。關於我的 iptables 設定的其他一切都按預期工作。
這是完整的 Iptables 輸出(請注意 br0-br3 是 VLAN):
iptables -L -n -v
Chain INPUT (policy DROP 21 packets, 2322 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT udp -- br3 * 0.0.0.0/0 0.0.0.0/0 udp dpt:53
0 0 ACCEPT tcp -- br3 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
0 0 ACCEPT udp -- br3 * 0.0.0.0/0 0.0.0.0/0 udp dpt:67
0 0 ACCEPT icmp -- br3 * 0.0.0.0/0 0.0.0.0/0
0 0 REJECT tcp -- br3 * 0.0.0.0/0 0.0.0.0/0 reject-with tcp-reset
0 0 REJECT all -- br3 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
0 0 ACCEPT udp -- br2 * 0.0.0.0/0 0.0.0.0/0 udp dpt:53
0 0 ACCEPT tcp -- br2 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
0 0 ACCEPT udp -- br2 * 0.0.0.0/0 0.0.0.0/0 udp dpt:67
0 0 ACCEPT icmp -- br2 * 0.0.0.0/0 0.0.0.0/0
0 0 REJECT tcp -- br2 * 0.0.0.0/0 0.0.0.0/0 reject-with tcp-reset
0 0 REJECT all -- br2 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
0 0 ACCEPT udp -- br1 * 0.0.0.0/0 0.0.0.0/0 udp dpt:53
0 0 ACCEPT tcp -- br1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
2 1152 ACCEPT udp -- br1 * 0.0.0.0/0 0.0.0.0/0 udp dpt:67
0 0 ACCEPT icmp -- br1 * 0.0.0.0/0 0.0.0.0/0
0 0 REJECT tcp -- br1 * 0.0.0.0/0 0.0.0.0/0 reject-with tcp-reset
0 0 REJECT all -- br1 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
34 2951 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID
369 49487 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
2 180 shlimit tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 state NEW
0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
102 8187 ACCEPT all -- br0 * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- br1 * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- br2 * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- br3 * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT 2 -- * * 0.0.0.0/0 224.0.0.0/4
0 0 ACCEPT udp -- * * 0.0.0.0/0 224.0.0.0/4 udp dpt:!1900
Chain FORWARD (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 DROP all -- * * 10.0.4.66 10.0.4.0/24
0 0 DROP all -- * * 10.0.3.66 10.0.3.0/24
0 0 DROP all -- * * 10.0.2.66 10.0.2.0/24
0 0 DROP all -- * * 10.0.1.66 10.0.1.0/24
1456 377K all -- * * 0.0.0.0/0 0.0.0.0/0 account: network/netmask: 10.0.1.0/255.255.255.0 name: lan
6 328 all -- * * 0.0.0.0/0 0.0.0.0/0 account: network/netmask: 10.0.2.0/255.255.255.0 name: lan1
4 160 all -- * * 0.0.0.0/0 0.0.0.0/0 account: network/netmask: 10.0.3.0/255.255.255.0 name: lan2
18 1136 all -- * * 0.0.0.0/0 0.0.0.0/0 account: network/netmask: 10.0.4.0/255.255.255.0 name: lan3
0 0 ACCEPT all -- br0 br0 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- br1 br1 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- br2 br2 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- br3 br3 0.0.0.0/0 0.0.0.0/0
5 200 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID
1367 363K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 DROP all -- br0 br1 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br0 br2 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br0 br3 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br1 br0 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br1 br2 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br1 br3 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br2 br0 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br2 br1 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br2 br3 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br3 br0 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br3 br1 0.0.0.0/0 0.0.0.0/0
0 0 DROP all -- br3 br2 0.0.0.0/0 0.0.0.0/0
3 147 wanin all -- vlan2 * 0.0.0.0/0 0.0.0.0/0
109 15477 wanout all -- * vlan2 0.0.0.0/0 0.0.0.0/0
107 15377 ACCEPT all -- br0 * 0.0.0.0/0 0.0.0.0/0
1 60 ACCEPT all -- br1 * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- br2 * 0.0.0.0/0 0.0.0.0/0
1 40 ACCEPT all -- br3 * 0.0.0.0/0 0.0.0.0/0
3 147 upnp all -- vlan2 * 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT 326 packets, 202K bytes)
pkts bytes target prot opt in out source destination
答案1
我認為您對網路層以及流量的傳遞方式有誤解。
您似乎缺少的是同一 LAN 上的裝置在第 2 層進行通訊。流量不會經過第3 層路由器,除非從一個網路(LAN) 傳送到另一個網路時,流量會使用第2 層(例如MAC)LAN 位址直接從一台設備傳送到同一LAN 上的另一台設備。
有些交換器提供您想要的隔離類型。搜尋專用 VLAN。您也可以建立單獨的 VLAN 並為每個 VLAN 進行定址,並將裝置連接到單獨的 VLAN。然後,您可以防止第 3 層(例如 IPv4 和/或 IPv6)的流量穿過 VLAN。