我有一个包含 100 多台服务器的私人局域网,其中有 3 台服务器:
- xxx37:在11211端口上运行memcache(简称s37)
- xxx241:运行一个应用服务器,连接到xxx37:11211上的memcache(称为s241)
- xxx46:测试服务器。(称为 s46)
当我在 s46 端口 11211 上运行 tcpdump 时,我会定期(每 2 小时)收到奇怪的数据包,如下所示:
tcpdump -i eth0 'port 11211'
结果:
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
10:30:22.334411 IP x.x.x.37.11211 > x.x.x.241.57060: . ack 2839551529 win 12
请注意,我没有任何应用程序在 s46 上监听端口 11211。
那么,是什么原因导致了这种症状?s37 上的以太网卡/网络配置有问题吗?我该如何解决这个问题?
提前谢谢你!
[更新 1]
在我的局域网中,有几台服务器运行memcached。但此症状仅发生在s37服务器上。
[更新 2] tcpdump 带有 -e 选项:
tcpdump -e -i eth0 'port 11211'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
12:30:22.410129 00:25:90:02:df:31 (oui Unknown) > 00:50:56:81:18:11 (oui Unknown), ethertype IPv4 (0x0800), length 60: x.x.x.37.11211 > x.x.x.241.57060: . ack 2839551529 win 12
答案1
由于这是一个 TCP 会话,并且只有一个ack
,因此会话已经建立。
源IP和端口是监听的memcached服务器,目标是应用服务器客户端。
在我看来,这是从服务器到客户端的心跳。