Clash 启动报错?修改 7890 端口解决 address already in use
#端口冲突#系统排障#Windows
阅读需 4 分钟||
如果你在启动软件时,发现节点界面不出现,且日志中报出红色的 bind: address already in use 错误,这意味着你的网络端口发生了冲突。
冲突是怎么产生的?
大多数基于 Clash 的客户端都会在本地开启一个混合代理服务,默认监听在 TCP 端口 7890 上。 如果你的电脑在此之前已经运行了其他的代理软件,或者某个冷门本地服务恰好也霸占了 7890 端口,客户端就会因为“抢不到大门”而启动失败。这不能归咎于 机场订阅,而是纯粹的本地环境故障。
解决方案一:找出并杀掉占用进程 (Windows 平台)
如果你希望保持 7890 端口不变:
- 以管理员身份运行 CMD(命令提示符)。
- 输入
netstat -ano | findstr :7890,回车。 - 观察最后一列的数字,这就是该进程的 PID(例如 10582)。
- 输入
taskkill /PID 10582 /F强行结束该进程。随后重启你的客户端。
解决方案二:修改客户端的默认端口
如果你不确定占用者是谁,最优雅的办法是主动让出 7890:
- 在 Clash Verge Rev 中:进入 设置 (Settings),找到 混合端口 (Mixed Port)。将其修改为某个高位不常用端口(比如
17890或20000)。 - 注意:修改端口后,对于遵守系统代理的浏览器没有影响。但是,如果你曾经在某些软件(如 Telegram 或 Git)中手动写死了
127.0.0.1:7890的代理,请务必同步更改为你新设置的端口,否则它们将报出类似 超时或EOF的错误。