IPTables - 根據國家/地區重新導向流量

IPTables - 根據國家/地區重新導向流量

有什麼方法可以只允許來自指定連接埠上的指定國家/地區的 TCP 流量,而其餘流量則使用 iptables 重定向到另一個 IP/連接埠?

答案1

在工作之前,您需要設定並更新 geoip 資料庫。

iptables -I INPUT -m geoip -p tcp --dport ### --src-cc CN -j ACCEPT
iptables -A PREROUTING -m geoip -p tcp --dport ###  --src-cc ! CN -j DNAT --to-destination 1.1.1.1:333

將 1.1.1.1 替換為您的 IP,將 333 替換為您想要的任何連接埠。

這是一個可以幫助您的教學: http://xmodulo.com/block-network-traffic-by-country-linux.html 顯然這個連結已經失效了,所以我添加了一個用於互聯網存檔。

https://web.archive.org/web/20190410142529/http://xmodulo.com/block-network-traffic-by-country-linux.html

您需要定期更新資料庫,因為有時 IP 位址會變更所有者和國家。

答案2

正確的語法是:

iptables -I INPUT -m geoip -p tcp --dport xxx --src-cc CN -j ACCEPT
iptables -A PREROUTING -p tcp --dport xxx --src-cc ! CZ,SK -j DNAT --to-destination 1.1.1.1:333

但你的答案是正確的。

相關內容