wcf - TCP:客户端在向服务器发送[ACK]后立即发送[RST,ACK]

标签 wcf nginx tcp

我已经针对运行在 Ubuntu 14.04.3 LTS (3.13.0-71-generic x86_64) 上的 OpenSSL 1.0.2e 编译了 nginx 1.9.7。我可以毫无问题地使用浏览器连接到它,并获得安全连接。

我还有一个正在运行某些 Windows Server 并尝试使用 WCF 进行连接的客户端。他们报告无法连接到我的服务。

我的 nginx 错误日志显示:

2015/12/09 17:38:27 [info] 10750#0: *6494 recv() failed (104: Connection reset by peer) while SSL handshaking, client: {REDACTED}, server: 0.0.0.0:443

深入挖掘,Wireshark 转储显示了这种模式:

Client -> Server [SYN]
Client <- Server [SYN, ACK]
Client -> Server [ACK]
Client -> Server [RST, ACK]  (connection closes)

嗅探一个成功的请求显示:

Client -> Server [SYN]
Client <- Server [SYN, ACK]
Client -> Server [ACK]
Client -> Server [PSH, ACK] (sends SSL Client Hello)

我不是真正的 TCP 专家,所以我不太了解这里可能发生的情况。任何建议将不胜感激。

最佳答案

原来是客户端的防火墙问题:(

编辑以添加详细信息:客户端的防火墙已配置为阻止域,因此在建立 TCP 连接后立即将其丢弃。一旦 block 被清除,问题就消失了。

关于wcf - TCP:客户端在向服务器发送[ACK]后立即发送[RST,ACK],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34185716/

相关文章:

c# - 如何将 HTTP 响应直接流式传输到网络

.net - rabbitmq 的 REST API

nginx - Nginx多个服务器 block 监听相同的端口

nginx - 如何在裸机上使用 hostNetwork 安装 nginx-ingress?

nginx - 使用HAproxy在Mesos集群中负载均衡Docker容器

c# - 从终结点地址 WCF 服务生成客户端代理

WCF DataService,如何避免 POCO 中的 [DataServiceKey]

python - 企业防火墙背后的网络流量

go - 无法检测到 Kubernetes 中的 tcp 服务没有带有 golang 应用程序的 pod

tcp - SYN 和 SYN+ACK 未被防火墙阻止