问题标签 [conntrack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
25541 浏览

python - /proc/net/ip_conntrack 和 /proc/net/nf_conntrack 的详细信息

我正在寻找有关文件内容/proc/net/nf_conntrack和/或/proc/net/ip_contrack在 Linux 系统上的详细文档。

是的,我知道,有许多实用程序可以以人类可读的格式向我显示这些文件的内容,但是......我想在 SOHO 路由器上使用 Tomato USB 固件(由 Shibby 提供)。optware AFAIK 已弃用,entware 不包含任何这些实用程序,所以我想编写一个脚本而不是它们,但我没有找到这些文件的详细描述:(

0 投票
1 回答
1650 浏览

c - 如何从 Linux 内核中删除 conntrack 条目?

我需要删除内核中的一个 conntrack 条目。有许多函数,如nf_ct_deletenf_ct_put。目前,我在一个skb->nfct(每个跟踪的 skb 上的块)上都使用两者。起初它似乎工作正常,但几秒钟后内核就崩溃了。

我目前的代码如下:

在执行 delete 和 put 语句后,我立即检查条目conntrack -L conntrack并且它们消失了(如预期的那样)。但一分钟左右后,系统冻结。我猜 conntrack 会启动一些计时器,这些计时器在触发时会崩溃。

所以我的问题是:如何立即删除特定连接的所有内容?包括停止任何计时器和清理所有状态。

0 投票
0 回答
1449 浏览

linux - IP_CONNTRACK 与 NF_CONNTRACK

我在使用 NGINX 的两个负载均衡器的高负载情况下遇到问题。我想调整一些 TCP 参数并坚持下去。

ip_conntrack因此,and有参数,nf_conntrack还有第三个变量。我必须设置哪些?发行版是 Debian Wheezy。

0 投票
1 回答
132 浏览

linux-kernel - 是否可以通过 RCU 保护 _____nf_conntrack_find() 返回值?

我想知道nf_conntrack_find_get()RCU 在 linux 内核中真正保护 ct 指针。

Read-Copy-Update(RCU) 可以在节点更新时保护访问(读取)节点 rcu_read_side 临界区。但是,这并不意味着保护节点。

nf_conntrack_find_get()打电话___nf_conntrack_find__nf_conntrack_find返回h(rcu 药水)。

但是另一个进程可以访问相同的 h 和free(h).

在这个时候,最终我认为 ct 不受保护。

h用于计算偏移并获取 ct 指针。

我们可以思考h还是ct安全?

下面是代码..

/net/netfilter/nf_conntrack_core.c

我认为如果要保护 node(h),必须使用call_rcu()而不是直接 free in destroy_conntrack()

0 投票
0 回答
28 浏览

debian - 网络带宽的顶级用户

我想让我的 LXC 容器尽可能轻(目前约为 400Mb),但有时需要查明顶级网络带宽用户(IP)的罪魁祸首。有像ntopng和类似的工具,但我不想在那里安装它们,因为它需要额外的 140Mb 和所有 deps。

我在服务器上有 10-15 个容器,服务器本身是无盘的。所以任何额外的 MB 都会乘以容器数量并吃掉内存......

所以我的问题:有没有办法通过使用简单的工具(如 grep、awk、calc、...)分析/proc/net/nf_conntrack 或任何其他 /proc/...

LXC 容器运行 VPN 隧道、squid、StrongSwan 等服务。可以说它们就像那些有时滥用这些容器的用户 (IP) 的网关。

操作系统:Debian 9

谢谢

彼得拉斯

0 投票
1 回答
1337 浏览

networking - 当 pod 通过目标 pod 位于同一主机上的服务与 pod 通信时,kubernetes 是否使用 conntrack 两次?

据我了解,当 POD 与 Service 对话时,IP 表已由 CNI 提供商更新(这可能特定于某些但并非所有 CNI 提供商)。iptables 基本上提供了一个虚拟 IP,然后循环或分发(以某种方式)到后端临时 pod。这些 pod 可能位于集群中的同一台主机或另一台主机上。此时(再次基于 CNI)conntrack 用于保持 src 和 dst 的正确性,因为它将 svc-ip 重新映射到 POD 的 dest-ip。不过,我想知道的是,如果 dest pod 在同一主机上,我不确定它是如何在返回路径上路由的。我仍然怀疑通过服务,然后可能使用 conntrack 作为返回路径。

当 pod 通过目标 pod 位于同一主机上的服务与 pod 通信时,kubernetes 是否使用 conntrack 两次?

0 投票
1 回答
184 浏览

linux - Linux 内核 conntrack 丢弃统计

在 Linux 内核 conntrack 子系统源代码中,我看到很多这样的统计信息

但我真的不知道如何在 Linux(从用户模式)中检查这些统计信息。我在哪里可以找到 conntrack 滴数?中没有类似的东西/proc/sys/net/netfilter/nf_conntrack*
很抱歉,如果很明显。

0 投票
0 回答
28 浏览

load-balancing - 带有连接跟踪的 nftables L2 负载平衡

我想在第 2 层使用 nftables 进行负载平衡。

所以基本上将相同的IP数据包转发到另一个接口。这可以通过使用标准 linux 工具与连接跟踪结合来完成吗?

Contnrack 本身似乎不太合适,因为它不存储接口/L2 信息。使用 nftables 可以设置ether daddr以及将数据包转发到另一个 iface,但我看不到将它与 conntrack 结合的方法。

0 投票
1 回答
123 浏览

debian - 在 Debian 11 中使用 nf_conntrack_bridge

我正在尝试在 Debian 11 下使用 conntrack,但无法加载内核模块:

内核模块在模块中:

使用 Debian 10,我可以使用xt_conntrack

知道我能解决什么吗?

提前致谢

问候

0 投票
0 回答
73 浏览

linux - Conntrack 将所有数据包标记为无效

Conntrack 将所有数据包标记为无效服务器,haproxy 在一个网络接口上包含多个 ip。

一切正常,因为我们不检查规则中的状态。我们做错了什么?

iptables

连接跟踪-S

lsmod|grep conntrack

操作系统

conntrack -E,好像一切正​​常

更新:

我改变了规则。制作卷曲和统计数据与旧版本相同。没有新的连接。我认为 conntrack 工作正常,但统计数据不正确