简短版本:我网络上的一台 Windows Server 2012 机器在连接到某些网站时会出现持续但间歇性的 TCP RST。不知道他们从哪里来。查看wireshark日志以了解我的分析和问题。
长版:
我们在其中一台服务器上运行缓存网络代理来为我们的小型办公室提供服务。一位同事报告说,在连接到某些站点时,出现了很多“连接重置”或“页面无法显示”错误,但刷新通常会修复它。
我验证了浏览器行为,然后更直接地通过在服务器本身上尝试未代理的浏览器。但是对麻烦站点的 pings 和 traceroutes 没有显示任何问题,问题似乎仅限于 tcp 连接。
然后我编写了一个脚本来测试受影响的站点,方法是通过 cURL 直接向它们发送 HTTP HEAD 请求并检查它们成功的频率。一个典型的测试看起来像这样:(这是未经代理的,直接在坏服务器上运行)
C:\sdk\Apache24\htdocs>php rhTest.php
Sending HTTP HEAD requests to "http://www.washingtonpost.com/":
20:21:42: Length: 0 Response Code: NULL (0%)
20:22:02: Length: 0 Response Code: NULL (0%)
20:22:22: Length: 0 Response Code: NULL (0%)
20:22:42: Length: 0 Response Code: NULL (0%)
20:23:02: Length: 3173 Response Code: HTTP/1.1 302 Moved Temporarily (20%)
20:23:22: Length: 3174 Response Code: HTTP/1.1 302 Moved Temporarily (33.33%)
20:23:43: Length: …
Run Code Online (Sandbox Code Playgroud)