我有配置了nat端口转发的路由器。我通过nat启动了一个大文件的http副本。 http服务器托管在LAN PC上,其中包含要下载的大文件。我从WAN PC启动了文件下载。 我在文件副本运行时禁用了nat规则。文件副本保持不变。当我使用conntrack-tool禁用nat forward规则时,我想停止文件的副本。
我的conntrack列表包含以下conntrack会话
# conntrack -L | grep "33.13"
tcp 6 431988 ESTABLISHED src=192.168.33.13 dst=192.168.33.215 sport=52722 dport=80 src=192.168.3.17 dst=192.168.33.13 sport=80 dport=52722 [ASSURED] use=1
我尝试使用以下命令将其删除:
# conntrack -D --orig-src 192.168.33.13
tcp 6 431982 ESTABLISHED src=192.168.33.13 dst=192.168.33.215 sport=52722 dport=80 src=192.168.3.17 dst=192.168.33.13 sport=80 dport=52722 [ASSURED] use=1
conntrack v1.4.3 (conntrack-tools): 1 flow entries have been deleted.
删除了conntrack会话我可以在以下命令中看到。但是使用src ip地址创建了另一个conntrack会话是删除的conntrack的lan地址
# conntrack -L | grep "33.13"
tcp 6 431993 ESTABLISHED src=192.168.3.17 dst=192.168.33.13 sport=80 dport=52722 src=192.168.33.13 dst=192.168.33.215 sport=52722 dport=80 [ASSURED] use=1
conntrack v1.4.3 (conntrack-tools): 57 flow entries have been shown.
我试图删除新的conntrack,但它仍保留
# conntrack -D --orig-src 192.168.3.17
# conntrack -L | grep "33.13"
conntrack v1.4.3 (conntrack-tools): 11 flow entries have been shown.
tcp 6 431981 ESTABLISHED src=192.168.3.17 dst=192.168.33.13 sport=80 dport=52722 src=192.168.33.13 dst=192.168.33.215 sport=52722 dport=80 [ASSURED] use=1
我缺少什么?
答案 0 :(得分:0)
首先,如果“ conntrack -D”命令成功执行,则可以在下面看到消息。
conntrack v1.4.4(conntrack-tools):已删除1个流条目。
所以我们猜想轨道删除工作失败了。
为什么不conntrack删除曲目?
也许您正在引用要从特定skb或曲目中删除的会话。
如果要获取详细信息,请尝试遵循Linux内核中的“ ctnetlink_del_conntrack”调用堆栈函数。