早上巡检,发现dcos mesos 计算节点中,xxx节点01:00开始有大量TCP在线连接数
登录服务器,通过conntrack查看当前节点所有tcp连接数,有3k多,确实与监控相符。
通过conntrack -Ln 查看连接信息
查看当前tcp连接老化时间
[root@localhost ~]# !cat
cat /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_established
432000
具体分析某一条信息
gpt,帮哥解释下conntrack的一行输出 tcp 6 402687 ESTABLISHED src=222.66.69.229 dst=10.19.171.113 sport=48050 dport=39656 src=10.19.171.113 dst=222.66.69.229 sport=39656 dport=48050 [ASSURED] mark=0 use=1
tcp: 这表示协议类型是 TCP。
6: 这是 TCP 协议在 IP 协议族中的编号。
402687: 这是连接跟踪条目的超时时间(秒)。这意味着如果在这段时间内没有任何活动,连接将从跟踪表中删除。
ESTABLISHED: 这表示 TCP 连接的状态是“已建立”。在 TCP 协议中,“已建立”状态意味着连接已成功建立,数据可以在两端传输。
src=222.66.69.229: 这是源 IP 地址,即发起 TCP 连接的设备的 IP 地址。
dst=10.19.171.113: 这是目的 IP 地址,即接收 TCP 连接的设备的 IP 地址。
sport=48050: 源端口(sport,Source Port),这是发起连接的设备上的端口号。
dport=39656: 目的端口(dport,Destination Port),这是接收连接的设备上的端口号。
接下来的一部分是连接的反方向信息,即从 dst=10.19.171.113 发往 src=222.66.69.229 的连接信息,其端口号也相应反转。
[ASSURED]: 这表示连接是“确定的”(Assured),意味着此连接已经被确认为有效且稳定的连接。在一些配置中,这可能影响该连接的处理,例如在网络流量管理或防火墙规则中。
mark=0: 这是连接标记的值。标记可以用于在防火墙规则中识别或处理特定的连接。
use=1: 这表示有一个引用计数,即有一个进程或内核组件正在使用这个连接跟踪条目。
怀疑是里面有docker容器已经迁移走了,留下tcp连接等待老化时间后过期。