连接到 Web 服务器 - 服务器的 TCP 重置

连接到 Web 服务器 - 服务器的 TCP 重置

http://example.domain.com/test

此链接在我们的 LAN 内可以访问,但当远程用户使用直接访问时则无法访问。大约 10 天前,它一直正常工作,然后突然 Web 服务器拒绝连接,并显示消息“TCP 从服务器重置”,用于来自使用直接访问的用户的流量。

带有 IIS 的 Windows Server 2012 R2。

没有本地防火墙

没有其他防火墙阻止连接

路由正确。

nslookup 有效

但 Web 服务器仍然拒绝客户端的连接,并显示“服务器 TCP 重置”消息。但如果用户就位并直接在 LAN 上,则没有问题。

netstat - aon显示端口 80 正在监听 PID 4 - NT 内核和系统。

大约 12 天前,微软使用最新的安全更新对服务器进行了修补。

我希望这里的文字能够以更易读的形式展示我所做的事情及其结果:

1. 使用局域网内的服务器的 curl 并针对问题服务器运行:

curl -v test.domain.com/test -H“范围:字节=00-18446744073709551615”

  • 尝试 123.456.78.99... * 设置 TCP_NODELAY * 连接到 test.domian.com (123.456.78.99) 端口 80 (#0) > GET /test HTTP/1.1 > 主机:test.domain.com/test > 用户代理:curl/7.55.1 > 接受:/ > 范围:字节=00-18446744073709551615 – < HTTP/1.1 400 错误请求 < 内容类型:text/html;字符集=us-ascii < 服务器:Microsoft-HTTPAPI/2.0 < 日期:2021 年 10 月 20 日,星期三 13:00:43 GMT < 连接:关闭 < 内容长度:339 <
错误的请求

错误请求 - 无效标头


HTTP 错误 400。请求具有无效的标头名称。

2. 在远程客户端上使用 curl 进行直接访问:

curl -v test.domain.com/test -H "范围:字节=00-18446744073709551615" * 尝试 123.456.78.99... * TCP_NODELAY 设置

  • 已连接到 test.domain.com (123.456.78.99) 端口 80 (#0) > GET / HTTP/1.1 > 主机:test.domain.com > 用户代理:curl/7.55.1 > 接受:/ > 范围:字节=00-18446744073709551615 >
  • 接收失败:连接已重置 * 关闭连接 0 curl:(56)接收失败:连接已重置 –

正如您所看到的,当我使用 curl 时,我得到了两个不同的结果:

  1. 在浏览器中输入相同的 URL 时,在局域网中显示的结果
  2. 当用户远程使用直接访问并在网络浏览器中输入相同的 URL 时,客户端上的结果。

总结: 当我尝试 http:// 时无法访问此 URL,只有使用 https:// 时才可以

相关内容