Clash代理端口怎么设置?从查看端口到连接验证
简答:Clash代理端口设置的核心是先确认应用需要 HTTP、SOCKS5 还是 Mixed 代理,再使用客户端当前显示的本地地址和端口。通常本机程序填写 127.0.0.1 加端口,不能直接照抄 7890;如果端口被占用,应先确认占用进程,再修改端口、重载配置并重新验证。
定义:Clash代理端口是客户端在本机监听的网络入口,应用通过该入口把请求交给 Clash 内核处理。
先看这张表:不同应用到底填哪个端口
如果你只是让浏览器或系统使用代理,优先查看客户端当前显示的 Mixed Port。它通常可以同时接受 HTTP 与 SOCKS 请求,但实际是否启用、监听在哪个地址,仍需以当前配置为准。mihomo 配置文档列出了 HTTP、SOCKS 与 Mixed 端口的配置和验证方式。
| 配置项 | 适用场景 | 应用填写方式 | 注意事项 |
|---|---|---|---|
port | HTTP或HTTPS代理 | 代理类型选 HTTP,地址填 127.0.0.1,端口填当前 port | 不是所有配置都会启用 |
socks-port | SOCKS5代理 | 代理类型选 SOCKS5,地址填 127.0.0.1,端口填当前 socks-port | 不要把 SOCKS5 端口当成 HTTP 端口使用 |
mixed-port | 同时兼容 HTTP 与 SOCKS 的本地入口 | 按客户端要求选择 HTTP 或 SOCKS5,使用同一个 Mixed 端口测试 | 以当前客户端实际监听状态为准 |
external-controller | 管理接口或控制面板 | 不要填到浏览器代理设置中 | 它不是普通网页代理端口 |
最快判断:在 Clash 客户端的设置或常规配置中找到 Port Config,优先记录 Mixed Port;如果应用明确要求 SOCKS5,再记录 SOCKS Port;如果配置中没有对应字段,就不要自行猜测端口。
Clash客户端里查看和修改代理端口
- 先退出其他可能提供本地代理的程序,或至少记下当前 Clash 配置,避免多个程序同时监听同一端口。
- 打开 Clash 客户端的设置页面,查找名称类似 Port Config、端口设置或常规设置的区域。不同客户端和版本的菜单名称可能不同。
- 查看 Mixed、Socks、HTTP 等端口是否已启用,并记录客户端实际显示的端口。不要只依据教程中的固定数字。
- 如果出现端口冲突,把目标端口改为当前未被监听的端口。启用的不同监听器应使用不同端口;Clash Verge Rev 的界面文案也提示,启用的监听器不能使用重复端口。Clash Verge Rev 设置界面源码
- 保存后重启内核或重新加载配置,再回到设置页确认端口没有自动回退。
- 打开系统代理时,确认系统代理地址和端口与客户端当前显示的入口一致。Clash Verge Rev 的代码会根据当前 Mixed Port 计算系统代理地址,默认主机地址可能是 127.0.0.1。Clash Verge Rev 系统代理地址处理代码
如果客户端提供“随机端口”选项,使用后要重新查看系统代理、浏览器和命令行工具中的端口;随机端口变化后,旧的手动配置不会自动变成新端口。
直接修改配置文件时怎么写
适合熟悉 YAML 的用户。修改前先复制一份配置文件作为备份,或新建测试配置,不要直接覆盖唯一可用配置。
常见字段结构如下,端口数字仅为格式示例,不代表你的客户端必须使用这些数字:
port: 8080
socks-port: 8081
mixed-port: 8082
allow-lan: false
bind-address: 127.0.0.1- 在客户端中打开当前配置的编辑入口,或通过“打开配置目录”定位文件。
- 只修改需要使用的端口字段,保持 YAML 缩进和冒号格式正确。
- 保存后回到客户端,执行重新加载、切换配置或重启内核。
- 在客户端的运行状态或端口设置中确认新端口已经监听。
需要注意:订阅更新可能重新生成或覆盖部分配置字段,具体行为取决于客户端和配置管理方式。若修改后再次更新订阅,先检查端口是否恢复,再决定是否把本地设置放入客户端的覆写或扩展配置中;无法确认入口时,应以当前客户端说明为准。
Windows、macOS、Linux如何确认端口是否被占用
端口冲突的最小闭环是:先查监听状态,再确认进程,最后修改端口或关闭冲突程序。不要看到端口被占用就直接结束未知进程。
Windows:PowerShell查询监听端口
$port = 8082
Get-NetTCPConnection -LocalPort $port -State Listen |
Select-Object LocalAddress, LocalPort, State, OwningProcess适用:Windows PowerShell。预期结果是看到监听地址、端口、状态和进程 ID;如果有 OwningProcess,可继续用任务管理器或 Get-Process -Id 进程ID核对程序。微软文档说明,Get-NetTCPConnection可以按本地端口、连接状态和拥有进程筛选 TCP 连接。Microsoft Learn:Get-NetTCPConnection
也可以在命令提示符执行:
netstat -ano | findstr :8082如果没有输出,通常表示该端口当前没有匹配的 TCP 监听记录;如果有输出,先记录 PID,再确认对应程序。netstat可显示监听端口和进程 ID。Microsoft Learn:netstat
macOS或Linux:使用 lsof 查看监听者
lsof -nP -iTCP:8082 -sTCP:LISTEN适用:macOS 和多数 Linux 环境。预期结果是显示占用该 TCP 端口的进程;没有结果时,再回到 Clash 客户端确认它是否已经启动或是否使用了其他地址。lsof的 -i 参数用于筛选网络文件,手册也给出了按 TCP LISTEN 状态筛选的用法。Linux man-pages:lsof
系统代理已开启但浏览器仍不能用
- 先确认端口监听:使用上一节的命令检查客户端当前显示的端口是否处于监听状态。
- 再核对地址:本机应用通常使用 127.0.0.1;如果客户端显示了其他监听地址,应以客户端实际值为准。
- 核对代理类型:浏览器或系统设置选择 HTTP 时使用 HTTP 或 Mixed 入口,选择 SOCKS5 时使用 SOCKS 入口。
- 暂时只保留一种接管方式:如果同时启用了系统代理和 TUN,先关闭其中一种做单项测试。Clash Verge Rev 的界面说明把 TUN 描述为虚拟网卡模式,并提示 TUN 需要相应的服务或管理员权限。Clash Verge Rev 设置说明
- 用显式代理测试:命令行工具可以明确指定本地入口,避免系统代理开关造成误判。命令格式需根据工具支持的代理类型填写,例如
curl -x http://127.0.0.1:端口 https://example.com。这只能验证本地代理入口和目标请求是否有响应,不能单独证明所有应用都已正确走代理。 - 回滚:如果修改后客户端无法启动,恢复备份配置,关闭新增的监听器,再重新启动客户端。
“端口有返回”只说明本地入口可能存在,不等于节点可用或网页一定能加载。应分开观察端口监听、代理请求返回、页面加载和客户端日志。
手机或电视连接电脑时:allow-lan怎么设置
局域网共享与本机代理是两种场景。本机使用时通常不需要打开 allow-lan;只有手机、电视或同一局域网内的其他设备需要连接电脑 Clash 时,才考虑开启。
- 确认电脑和其他设备连接的是同一局域网。
- 在配置中设置
allow-lan: true,并根据需要设置bind-address。mihomo 文档说明,allow-lan用于允许其他设备通过 Clash 代理端口访问,bind-address可限制绑定地址。mihomo:General configuration - 在手机或电视中填写电脑的局域网 IP,而不是 127.0.0.1;端口填写电脑 Clash 当前监听的 Mixed、HTTP 或 SOCKS 端口。
- 只在可信家庭或办公网络中测试,并尽量限制允许访问的地址范围;不要在公共 Wi-Fi 中随意开启局域网共享。
- 若仍无法连接,检查操作系统防火墙是否拦截该端口。测试完成后关闭
allow-lan,恢复仅本机监听。
如果电脑本机能用、其他设备不能用,优先检查 allow-lan、绑定地址、局域网 IP 和防火墙;如果电脑本机也不能用,则先回到端口监听和配置加载步骤。
常见问题
Clash代理端口是不是固定填7890?
不是。7890只能作为某些教程中的示例,实际端口可能由客户端、配置文件或用户修改决定。应以当前客户端显示的 Mixed、HTTP 或 SOCKS 端口为准。
浏览器代理应该填HTTP还是SOCKS5?
先看浏览器或系统代理设置支持的类型。如果使用HTTP代理,填写 port 或 mixed-port;如果明确选择SOCKS5,填写 socks-port 或支持SOCKS的 mixed-port。地址通常是本机的127.0.0.1,但最终以客户端监听地址为准。
Clash提示端口被占用怎么办?
先用 Windows 的 Get-NetTCPConnection 或 netstat,macOS/Linux 的 lsof 查询占用进程。确认不是正在运行的必要程序后,再关闭冲突程序或换一个未监听端口;修改后重启内核并重新检查监听状态。
修改配置文件后为什么端口又变回去了?
可能是订阅更新、配置切换或客户端覆写规则重新生成了运行配置。先确认当前生效的配置名称和运行端口,再检查客户端是否提供本地覆写或端口设置入口;不确定时保留备份并以当前界面为准。
手机连接电脑Clash时能不能填127.0.0.1?
不能把电脑的127.0.0.1直接填到手机上,因为它代表手机自身。手机应填写电脑在局域网中的IP、对应代理端口,并在电脑端按需开启allow-lan和防火墙放行。