1.检查服务器端口8081是否开启监听

2.检查路由项是否被防火墙拦截
方法 1:使用 netsh
查看防火墙规则
netsh advfirewall firewall show rule name=all dir=out | findstr "8081"

-
如果无输出,说明防火墙未针对该端口设置规则(可能默认拦截)。
-
如果有
Block
规则,说明被拦截。
方法 2:临时关闭防火墙测试
netsh advfirewall set allprofiles state off
方法 3:检查出站/入站规则
-
进入 控制面板 > Windows Defender 防火墙 > 高级设置:
- 查看 入站规则 和 出站规则 是否有针对目标 IP/端口的 阻止(Block) 规则。
Windows系统可以使用命令:
netsh advfirewall firewall show rule name=all dir=out | findstr "8081"
-
如果有
Block
规则,表示 出站流量被拦截。 -
如果无输出,说明 没有针对 8081 端口的出站规则(可能默认允许)。
我反复检查端口问题。防火墙问题等等各种,网上说的虚拟机网络我也禁用了,但还是连接TCP服务端失败,最后的最后,我发现好像是网络问题,我用自己的手机热点不用实验室的网络就可以。但后面我发现又不是网络问题,因为之前我的服务端是运行在电脑上的,我的esp8266连接的是和电脑一样的WiFi,但后面我让esp8266连接的是手机的热点(手机和电脑连的同一个WiFi),这样就可以成功连接上我的TCP服务端。