Iptables

/proc/net/ip_conntrack 或 nf_conntrack 中的“使用”列?

  • June 20, 2019

我想組合我自己的小腳本來解析 conntrack 數據,以從一些也是 NAT 路由器的 Linux 機器中獲取定制的網路資訊。

conntrack 表中的一行範例是:

ipv4 2 tcp 6 300 ESTABLISHED src=1.1.1.2 dst=2.2.2.2 sport=2000 dport=80 src=2.2.2.2 dst=1.1.1.1 sport=80 dport=12000 [ASSURED] mark=0 use=2

所有這些欄位都已在其他地方進行了描述,但我在最後一列中找不到任何資訊(使用=2,但通常使用=1)。

在規劃我的腳本時,我突然想到,理論上完全相同的 IP/埠組合可能會重複——即打開、傳遞一些數據、關閉,然後再打開一段時間。

這個“使用”列可能表明這個 ip/port 組合以前已經見過嗎?如果有,在什麼時間段內?

use屬性是一個引用計數。主要由垃圾收集器使用。而是定期解析/proc/net/nf_conntrack文件,您可以解析conntrack -E命令的輸出以實時處理 conntrack 事件。

如果對細節感興趣,可以閱讀《Linux 核心網路:實現與理論》第 9 章。

引用自:https://serverfault.com/questions/972040