我的一个客户端通过 https: 连接到我的服务器,显然,客户端在 30/40 秒后收到回复。根据 tcp dump,我注意到在客户端收到数据包之前我总是在重试。
奇怪的是,如果我使用 http 而不是 https,问题就不会发生。我客户的 IT 部门说他没有收到我的数据包。我猜,可能是途中的某个跳数或防火墙阻止了我的证书?
附言:
- 客户端尝试了 postman、c# 和浏览器,结果相同。
- 我的服务器是基于centos的
- 我还有 1000 个其他客户,没有这个问题
- 我的证书没有过期并且值得信赖
- 我客户的代码已经运行了一年多,问题出现在上周六,至今仍在发生。他的 IT 部门表示,那天他们什么也没做。
以下是我获得的 tcp 转储
20:45:38.506687 IP 37.209.251.174.64340 > 104.130.160.218.https: Flags [SEW], seq 1848834203, win 65535, options [mss 1300,nop,wscale 8,nop,nop,sackOK], length 0
20:45:38.506702 IP 104.130.160.218.https > 37.209.251.174.64340: Flags [S.E], seq 813592809, ack 1848834204, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 10], length 0
20:45:39.874861 IP 104.130.160.218.https > 37.209.251.174.64340: Flags [S.E], seq 813592809, ack 1848834204, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 10], length 0
20:45:41.874862 IP 104.130.160.218.https > 37.209.251.174.64340: Flags [S.E], seq 813592809, ack 1848834204, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 10], length 0
20:45:45.874860 IP 104.130.160.218.https > 37.209.251.174.64340: Flags [S.E], seq 813592809, ack 1848834204, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 10], length 0
20:45:53.874863 IP 104.130.160.218.https > 37.209.251.174.64340: Flags [S.E], seq 813592809, ack 1848834204, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 10], length 0