Iptables
/proc/net/ip_conntrack 或 nf_conntrack 中的“使用”列?
我想組合我自己的小腳本來解析 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 章。