防火墙拦截导致 NetShare 连接失败
症状
接收设备的防火墙拦截了 NetShare 的流量。表现为:
- 接收端已连 WiFi、已配代理,但就是打不开网页
- 接收端命令行
telnet 192.168.49.1 8282超时或拒绝连接 - 浏览器一直转圈
Windows Defender 防火墙
临时关闭测试(先确认是不是防火墙问题)
- 按 Win + R 输入
wf.msc回车(高级安全 Windows Defender 防火墙) - 左侧选中"入站规则",右侧找到你的专用网络配置文件
- 临时关闭专用网络配置文件的入站规则
- 回到接收设备浏览器重试
永久放行 HTTP 代理端口
确认是防火墙问题后,不要长期关闭防火墙,而是添加允许规则:
在接收设备上(允许出站到 NetShare 代理)
# 管理员 PowerShell
New-NetFirewallRule -DisplayName "Allow NetShare Proxy" -Direction Outbound -Protocol TCP -Action Allow -RemotePort 8282 -RemoteAddress 192.168.49.1
在 NetShare 发送设备上(允许入站 HTTP 代理请求)
如果手机里安装了 Android 防火墙(如 Blokada、NetGuard),需要确保 8282 端口入站不被拦截。
macOS 应用防火墙
macOS 的防火墙默认只在入站方向拦截,出站不拦截。但如果你开了:
- 系统设置 → 网络 → 防火墙 → 选项...
- 确认"自动允许传入连接"已启用
- 或者在应用列表里找到浏览器(Safari / Chrome),确保允许"传入连接"
Linux iptables / ufw
查看当前规则
sudo iptables -L -n | head -20
# 或 ufw status
临时允许所有出站流量
sudo iptables -F OUTPUT
# 或
sudo ufw allow out
永久允许到 NetShare 代理的连接
sudo iptables -A OUTPUT -p tcp -d 192.168.49.1 --dport 8282 -j ACCEPT
# 或 ufw
sudo ufw allow out to 192.168.49.1 port 8282 proto tcp
iOS 上的防火墙情况
iOS 没有用户可配置的防火墙,系统层面不会拦截 HTTP 代理流量。如果 iOS 设备连 NetShare 不行,问题大概率不在防火墙。
终极测试方法
临时关闭接收设备的所有防火墙(包括系统级和安全软件),重新测试。如果此时 NetShare 能正常工作了,说明防火墙就是根因。之后再一个个开启防火墙,找到是哪一条规则拦了,然后针对性放行。