Clash连接成功但无法上网:DNS、TUN与系统网络排查
简答:Clash显示连接成功但无法上网,通常不是节点状态本身,而是系统代理未接管、DNS解析失败、TUN路由未生效、规则走了直连或其他VPN/过滤配置冲突。先用浏览器确认系统代理,再逐项停用TUN、切换DNS并测试。
定义:“连接成功但无法上网”是指客户端已建立节点或代理连接,但浏览器、应用或系统流量没有正确经过代理、无法完成域名解析,或被路由、防火墙和其他网络配置阻断。
先判断:到底是哪一层出了问题
本站不是任何 Clash 客户端或配置提供方的官网,与相关软件、配置和节点服务无授权关系;客户端条款、配置来源、工单和入口应以对应服务方的官方渠道为准。本文只做通用技术排查,按 2026-10-18 核对公开资料。
“已连接”通常只代表客户端能与节点建立连接,不等于浏览器已经使用了代理,也不等于 DNS、规则和 TUN 路由都正常。先关闭客户端,直接打开一个平时可以访问的网页;如果直连也打不开,应先排查 Wi-Fi、网卡或系统网络,而不是继续更换节点。
| 现象 | 优先怀疑 | 先做什么 |
|---|---|---|
| 客户端显示连接,但浏览器完全无网络 | 系统代理未开启、端口不匹配、规则模式异常 | 检查系统代理与客户端监听端口 |
| 网页能打开,部分域名打不开 | DNS、Fake-IP、分流规则或IPv6 | 切换DNS模式并检查域名解析 |
| 开启TUN后所有网络异常 | TUN路由、防火墙或其他VPN冲突 | 关闭TUN对比测试,再检查权限和防火墙 |
| 只有某个应用无法联网 | 应用自身代理设置、分流规则或绕过VPN | 用浏览器和另一应用交叉测试 |
按顺序排查代理、节点和规则
- 确认代理模式。在客户端中确认当前模式是规则、全局或直连测试模式。不同客户端的菜单名称可能不同,不要照搬其他版本的界面;如果客户端提供“系统代理”开关,先确认它已启用。若客户端只监听 HTTP、SOCKS 或 Mixed 端口,系统或浏览器的代理类型和端口也必须匹配。
- 先做单节点测试。暂时不要同时修改规则、DNS、TUN和MTU。选择一个配置中明确存在的节点,测试一个普通网页和一个此前打不开的网页。若只有某个节点失败,优先检查该节点的地址、端口、认证和传输参数;若所有节点都失败,再回到本机网络或客户端配置。
- 检查规则是否把流量送到直连。规则模式下,客户端可能显示已连接,但目标域名被规则判定为DIRECT,实际没有经过代理。可临时切换全局模式进行对比;如果全局模式能打开而规则模式不能,问题更可能在规则、规则集更新或DNS分流,而不是“连接状态”。
- 检查其他接管网络的程序。系统中如果同时运行其他VPN、网络过滤器、抓包工具或安全软件,可能出现端口占用、路由冲突或DNS被重复接管。先退出其他网络接管程序,再重启客户端测试。不要在未确认作用的情况下删除企业或学校下发的配置。
mihomo 文档将代理端口、TUN和监听器视为不同的流量入口;TUN用于接管系统流量,而普通 HTTP、SOCKS 或 Mixed 入口只处理发送到相应端口的请求。若客户端基于 mihomo 或兼容其配置,应该根据实际使用的入口检查设置,而不是只看“节点已连接”。详情可参考 mihomo 入站配置说明。
DNS与TUN:最常见的第二轮问题
如果浏览器提示找不到服务器、部分域名始终打不开,先把问题拆成“能否解析域名”和“解析后能否建立连接”。在客户端提供日志或连接详情时,观察失败的是 DNS、TCP、TLS 还是规则匹配;不要把所有失败都归因于线路。
- 先关闭TUN做对比。关闭TUN后,仅保留系统代理,再访问同一网页。如果这样恢复,说明问题集中在TUN路由、DNS劫持、权限、防火墙或其他虚拟网卡。若关闭TUN仍失败,再检查普通代理端口和DNS。
- 检查DNS模式。兼容 mihomo 的配置通常可能涉及
fake-ip或redir-host。切换前记录原设置,逐次只改一个选项,并重启客户端后复测。不要随意复制网上的完整DNS配置,因为其中的域名策略、代理解析和规则集可能与当前配置不匹配。 - 检查DNS劫持与系统设置。mihomo文档说明,TUN可以配合DNS劫持,但Windows和macOS不能自动劫持发往本地网络的所有DNS请求;Android启用Private DNS时,也可能无法自动劫持DNS请求。相关行为应以客户端实际日志为准,可参考 mihomo TUN配置说明 和 mihomo DNS配置说明。
- 先不要改MTU。官方文档明确说明,普通用户通常可以保持MTU默认值。需要测试时,应先在直连状态下做对比,再分别测试关闭和开启TUN的结果;开启TUN或代理后,ICMP可能不经过同一条代理隧道,普通
ping结果不能直接代表代理路径的MTU。
如果只是某个域名失败,可以先用系统浏览器测试另一个域名,再暂时关闭浏览器的独立安全DNS或代理设置进行对照;如果改动后恢复,应记录具体开关,不要一次性重置全部网络配置。
Windows、macOS、iOS与Android的处理步骤
Windows
- 打开客户端的系统代理设置,确认代理地址通常指向本机回环地址,端口与客户端实际监听端口一致;具体地址和端口必须以客户端当前界面为准。
- 如果使用TUN,检查客户端核心程序是否被Windows防火墙允许。mihomo文档指出,部分TUN协议栈在防火墙开启时需要允许核心程序通过防火墙。
- 在管理员权限的PowerShell或命令提示符中,按顺序执行:
netsh winsock reset、netsh int ip reset、ipconfig /release、ipconfig /renew、ipconfig /flushdns。执行ipconfig /release会暂时断开网络,必须配合ipconfig /renew恢复地址;执行netsh重置后需要重启电脑。命令顺序与微软的网络排查说明一致,可参考 Microsoft Windows网络连接排查。
macOS
- 先在客户端关闭TUN和系统代理,确认直连网络正常,再逐个重新开启。
- 如需检查DNS,打开“系统设置”>“网络”>选择当前网络服务>“详细信息”>“DNS”,查看是否存在不认识或重复的DNS服务器。Apple提供的路径可参考 Mac更改DNS设置说明。
- 若网络服务配置混乱,可新建或切换网络位置进行对比;Apple说明网络位置可用于快速切换不同网络设置,也可用于测试网络问题,参考 Mac网络位置说明。
iOS与iPadOS
iPhone上通常不是直接运行名为“Clash”的桌面客户端,而是使用能够导入兼容配置的第三方客户端。不同客户端的权限、TUN或VPN配置名称不同,不能把桌面端菜单直接套用到手机端。
- 检查“设置”中的VPN状态,确认没有同时启用其他VPN、内容过滤器或配置描述文件;如客户端提供重新添加VPN配置的选项,可先删除该客户端生成的配置后再重新添加。
- 如果怀疑是配置描述文件冲突,进入“设置”>“通用”>“VPN与设备管理”查看已安装的配置。不要删除工作或学校管理的配置,除非得到管理员许可。
- 最后才考虑“还原网络设置”。Apple说明此操作会移除已保存的Wi-Fi网络和密码,以及部分VPN和APN设置;操作前应备份必要信息。路径为“设置”>“通用”>“传输或还原iPhone”>“还原”>“还原网络设置”,参考 Apple iPhone还原网络设置说明。
Android
- 各厂商菜单不同,可在设置中搜索“VPN”“Private DNS”或“私有DNS”。Android官方路径通常是“设置”>“网络和互联网”>“VPN”或“Private DNS”。
- 如果客户端使用VPN接管流量,检查系统是否存在其他VPN、始终开启VPN或“无VPN不允许连接”等选项;Android官方说明这些设置可能影响未经过VPN的连接。
- 若开启Private DNS后TUN或DNS劫持异常,可暂时切换为“自动”进行对比。Android官方说明Private DNS只保护DNS问题和答案,并不能保护其他网络流量;设置路径和选项可参考 Android高级网络设置。
什么时候应停止继续改配置
如果直连状态下所有设备都无法上网,先检查路由器、宽带或移动网络;如果只有一台设备异常,继续更换节点通常不会解决本机代理、DNS或虚拟网卡问题。若只有一个应用失败,应检查该应用是否单独设置了代理、是否使用独立DNS,或是否被规则设置为直连。
排查时建议保留一份原始配置,并记录每次只改变的一个变量:代理模式、系统代理、TUN、DNS模式、节点或防火墙。这样才能知道是哪一步改变了结果。没有客户端日志、系统版本、代理模式和失败提示时,无法准确判断是节点、规则还是本地网络,结论应标记为“未核实”。
参考资料
常见问题
Clash显示已连接,为什么浏览器还是打不开?
“已连接”不一定代表浏览器已经使用代理。先检查系统代理是否开启、代理类型和端口是否与客户端监听端口一致,再临时切换全局模式测试。如果全局模式正常,问题更可能在规则或DNS分流。
Clash连接成功但只有部分网站打不开,应该先改什么?
先判断是否为域名解析问题,再检查DNS模式、Fake-IP或规则。建议一次只修改一个选项,并在关闭TUN与开启TUN两种状态下对比;不要直接复制完整的陌生DNS配置。
开启TUN后无法上网,应该关闭TUN吗?
可以先关闭TUN做对比,但这只是定位步骤,不是最终结论。若关闭后恢复,应继续检查TUN权限、防火墙、DNS劫持、路由和其他VPN冲突;mihomo文档也说明TUN涉及系统流量接管和路由设置。
Windows重置网络后为什么还要重启?
执行netsh winsock reset或netsh int ip reset后,系统网络组件需要重启才能完整应用。执行ipconfig /release会暂时断网,必须再执行ipconfig /renew恢复地址。
iPhone能不能直接照搬电脑端的Clash排查步骤?
不能完全照搬。iPhone通常使用能导入兼容配置的第三方客户端,其VPN配置、权限和菜单与桌面端不同。应先检查VPN与设备管理中的配置,再考虑还原网络设置;还原会清除已保存的Wi-Fi密码。