问题描述
在 Ubuntu 系统下使用 Firefox 浏览器时,出现以下异常:
- 可以正常访问百度等国内网站;
- 但访问 Bing(包括
bing.com或it.bing.com)时,Firefox 报错:建立安全连接失败 连接到 it.bing.com 时发生错误。PR_END_OF_FILE_ERROR 错误代码:PR_END_OF_FILE_ERROR - 该错误仅在 Firefox 中出现,其他浏览器(如 Chrome、Edge)可正常打开 Bing。
- 网络环境为仅使用 Wi-Fi,未连接有线网卡。
环境信息
- 操作系统:Ubuntu 20.04 / 22.04(或其他 Linux 发行版)
- 浏览器:Mozilla Firefox(最新稳定版)
- 网络连接:Wi-Fi 上网,无有线网络接入
排查过程
1. 查看系统网络连接
通过 nmcli 命令检查当前网络连接状态:
nmcli connection show
输出示例:
NAME UUID TYPE DEVICE
602 3c5264e9-07f4-43d2-bc2e-eeb7bd62927b wifi wlp0s20f3
Meta db42c5d3-1f37-452a-918d-191ca7b31ad2 tun Meta
docker0 ace0d78b-623d-440f-8d44-5fc1a120d681 bridge docker0
...
发现存在一个名为 Meta 的连接,类型为 tun,设备也为 Meta。tun 设备通常由 VPN 或代理软件创建,用于接管系统网络流量。
2. 临时禁用可疑连接
尝试禁用该连接:
sudo nmcli connection down Meta
再次用 Firefox 访问 Bing,问题消失,页面正常加载。重新启用该连接后,故障复现。由此确认 Meta 虚拟网卡是导致 Firefox 连接失败的根源。
原因分析
PR_END_OF_FILE_ERROR 是 Firefox 特有的错误码,表示在 TLS/SSL 握手过程中,服务器端意外关闭了连接。可能的原因包括:
- VPN/代理干扰:某些 VPN 或代理软件(特别是透明代理、中间人代理)会尝试解密或修改 HTTPS 流量。如果配置不当,可能导致 TLS 握手信息被破坏,服务器无法正常响应,从而直接断开连接。
- 路由冲突:虚拟网卡(tun)与物理网卡(Wi-Fi)同时存在时,可能造成路由表混乱,数据包无法正确到达目标服务器。
- MTU 问题:tun 设备的 MTU 值设置过小,导致大数据包被丢弃,影响握手过程。
在本案例中,用户并未使用有线网络,因此排除了双网络冲突的可能性。根本原因在于 VPN 软件创建的虚拟网卡持续干扰 Firefox 的网络通信。值得注意的是,该问题仅在 Firefox 中出现,说明 Firefox 的 TLS 实现或网络栈对这类干扰更为敏感。
解决方案
临时解决方法
当遇到 Firefox 无法访问某些 HTTPS 网站时,可以先查看系统网络连接,临时禁用可疑的 VPN/代理连接:
sudo nmcli connection down <连接名称>

