在 Windows 11 上,必须开启网络代理才能上网,关闭代理后无法访问互联网
在 Windows 11 上,必须开启网络代理才能上网,关闭代理后无法访问互联网。而以前不需要代理也能正常上网。
从 DNS 的角度出发 来排查和修复这个问题,我们可以考虑以下几个方面:
🔍 一、问题可能原因分析(基于 DNS 角度)
-
DNS 配置异常或被劫持
- 某些软件(如代理工具、翻墙软件)修改了系统的 DNS 设置。
- 可能指向了某些特定的 DNS 地址(如 8.8.8.8),并依赖代理才能解析。
-
DNS 缓存污染或失效
- 系统缓存中存在错误的 DNS 记录,导致域名无法解析。
-
系统 hosts 文件被修改
- 被某些代理程序修改,导致域名解析需要依赖代理服务。
-
网络设置残留(如 PAC 文件未清除)
- 即使关闭了代理,系统仍可能保留自动配置脚本(PAC 文件)的引用。
-
本地 DNS 客户端服务异常
- Windows 的
DNS Client
服务出现问题,影响正常 DNS 解析。
- Windows 的
🛠️ 二、解决方案(从 DNS 角度修复)
✅ 步骤 1:重置 TCP/IP 和 Winsock
打开命令提示符(管理员权限)运行以下命令:
netsh int ip reset
netsh winsock reset
然后重启电脑。
这可以清除一些由于代理软件引起的底层网络协议栈异常。
✅ 步骤 2:重置 DNS 设置
-
打开命令提示符(管理员):
ipconfig /flushdns
-
查看当前 DNS 设置:
ipconfig /all
查看你的网络适配器使用的 DNS 是不是正常值(例如运营商默认 DNS 或 114.114.114.114、8.8.8.8 等)。
-
如果发现 DNS 异常,手动设置为公共 DNS:
- 打开控制面板 > 网络和 Internet > 网络和共享中心 > 更改适配器设置
- 右键当前连接的网卡 > 属性 > 双击 “Internet 协议版本 4 (TCP/IPv4)”
- 设置如下:
- 使用下面的 DNS 服务器地址:
- 首选 DNS 服务器:
8.8.8.8
- 备用 DNS 服务器:
8.8.4.4
- 首选 DNS 服务器:
- 使用下面的 DNS 服务器地址:
✅ 步骤 3:检查 hosts 文件是否被修改
路径:
C:\Windows\System32\drivers\etc\hosts
- 用记事本打开该文件,查看是否有非法内容。
- 如果有类似如下内容,请删除或注释掉:
127.0.0.1 www.google.com
- 保存前确保以管理员身份运行记事本。
✅ 步骤 4:禁用自动代理配置(PAC 文件)
-
打开浏览器(如 Edge 或 Chrome):
- 设置 > 系统 > 打开计算机的代理设置
- 在“代理”页面下:
- 关闭 “使用设置脚本”(自动配置 URL)
- 确保“使用代理服务器”选项也是关闭的
-
也可以通过注册表检查:
- 路径:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
- 确保
ProxyEnable
值为0
- 删除
AutoConfigURL
键值(如有)
- 路径:
✅ 步骤 5:重置网络设置(可选)
如果你不确定哪些地方被改动过,可以尝试:
设置 > 网络和 Internet > 状态 > 网络重置 > 立即重置
⚠️ 注意:这会将所有网络设置恢复到出厂状态,包括 Wi-Fi 密码等信息会被清除。
🧪 三、测试是否修复成功
- 关闭代理(确保“使用代理服务器”已关闭)
- 尝试访问几个主流网站(如百度、知乎、Google)
- 使用命令行 ping 测试 DNS 是否正常:
如果返回 IP 地址,说明 DNS 解析正常。ping www.baidu.com
📌 四、总结建议
操作 | 目的 |
---|---|
重置 TCP/IP / Winsock | 清除底层网络协议异常 |
设置公共 DNS | 避免依赖代理进行 DNS 解析 |
检查 hosts 文件 | 防止域名被强制映射 |
禁用 PAC 自动代理配置 | 避免自动加载代理规则 |
网络重置(最后手段) | 恢复原始网络环境 |
如果你之前使用过代理软件(如 Clash、Shadowsocks、v2rayN 等),这些软件常常会修改 DNS、hosts 或启用系统代理,卸载不彻底也会导致此类问题。