Python TCP Socket连接报[WinError 10060] 同局域网跨设备无法连接问题
问题排查&解决步骤
- 首先确认服务端监听状态正常
在服务端设备上打开cmd执行命令:netstat -ano | findstr 55555
确认返回结果中监听地址为0.0.0.0:55555,如果仅显示127.0.0.1:55555说明监听地址修改未生效,请重启服务端程序后再验证。 - 验证局域网基础连通性
在客户端设备上ping服务端的局域网IP:ping 192.168.1.252(替换为你实际的服务端IP)
如果ping不通,优先排查以下问题:- 两台设备是否连接的同一WiFi/局域网,避免出现一台连2.4G、一台连5G、或者其中一台连了访客WiFi的情况
- 登录路由器后台,确认关闭了「AP隔离」「客户端隔离」功能,该功能会禁止局域网内设备互相访问
- 确认服务端、客户端均未开启VPN/代理软件,避免路由规则被篡改导致流量走虚拟网卡
- 验证端口连通性
无需启动聊天程序,直接在客户端PowerShell中执行命令:Test-NetConnection 192.168.1.252 -Port 55555
如果返回结果中TcpTestSucceeded为False,说明端口被拦截:- 检查Windows防火墙的放行规则:确认55555端口的进出站规则的适用网络类型,和你当前连接的网络归类(专用/公用)一致,建议直接勾选规则适用所有网络类型;如果安装了第三方安全软件(360安全卫士、腾讯电脑管家等),也需要在对应软件的防火墙设置中放行端口,或者临时退出安全软件验证
- 如果你仅需要局域网内访问,不需要公网连接的话,可以临时删除你配置的端口转发规则,错误的端口转发配置可能会干扰局域网流量
- 确认服务端IP未变更
大部分家用路由器默认开启DHCP动态分配IP,设备重启后可能IP地址发生变化,建议在服务端执行ipconfig重新核对IPv4地址,和客户端输入的IP对比是否一致。
内容的提问来源于stack exchange,提问作者James_481
相关产品推荐
相关产品推荐

