Networking

iptables - 重定向列表 MAC 地址除外

  • March 12, 2015

我在路由器上使用 iptables 將所有網路流量重定向到我的頁面。

但我不知道如何除我的 mac 地址列表。

我做了這樣的命令:

iptables -t nat -A PREROUTING -m mac ! --mac-source xx-xx-xx-xx-xx-xx -p tcp --dport 80  -j DNAT --to 127.0.0.1:8080 (Host A)
iptables -t nat -A PREROUTING -m mac ! --mac-source xx-xx-xx-xx-xx-xx -p tcp --dport 80  -j DNAT --to 127.0.0.1:8080 (Host B)

但它只是對主機A執行命令。這意味著主機A可以正常訪問網路,但主機B仍然得到重定向。

我怎樣才能正常訪問兩個mac地址?

用這個:

iptables -t nat -A PREROUTING -m mac --mac-source xx-xx-xx-xx-xx-xx -j ACCEPT (Host A)
iptables -t nat -A PREROUTING -m mac --mac-source xx-xx-xx-xx-xx-xx -j ACCEPT (Host B)
iptables -t nat -A PREROUTING -p tcp --dport 80  -j DNAT --to 127.0.0.1:8080

前兩個命令接受來自 A 和 B 的數據包,因此僅當數據包來自另一個主機時才會發生重定向。

引用自:https://unix.stackexchange.com/questions/185419