Networking

iptables 限制系統中 ipv4 和 ipv6 的連接數

  • November 14, 2018

一個連接是一個 5 元組(ip src/dst、埠 src/dst、協議)。

ipv4和ipv6之間的不同連接呢?

如果我定義iptables規則:

iptables -A INPUT -p tcp -m connlimit --connlimit-above 50 -j REJECT --reject-with tcp-reset

它將 tcp 連接限制為 50。

ipv6 tcp 連接呢?我也應該寫嗎

ip6tables -A INPUT -p tcp -m connlimit --connlimit-above 50 -j REJECT --reject-with tcp-reset

?

這是否意味著我總共可以擁有 100 個 tcp 連接?(50 ipv4 50 ipv6)?

它是如何工作的?謝謝。

每個連接將有 50 個,因為iptables將只處理 ipv4ip6tables並將處理 ipv6 連接。它們不會“總結”,因為它們由每個協議版本上的不同工具管理。

nftables“新防火牆”能夠同時處理這兩種協議嗎?不,您將擁有“相同的工具”(二進制)來使用關鍵字nft獨立處理協議:和rule``nft add rule ip6 ...``nft add rule ip ...

正如評論中所指出的,nft_connlimit擴展最近被添加到 Linux 4.18,允許您計算總和ipv4以及在創建規則時ipv6是否使用保留字。inet

相關資料:

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