如果 v2rayN 底部日志报「端口被占用」「bind: address already in use」,或者内核怎么都启动不了,多半是它要用的本地端口被别的程序占了。解决思路就两条:要么腾出端口,要么让 v2rayN 换一个端口。

1v2rayN 默认用哪些端口

  • 10808:本地 SOCKS 代理端口。
  • 10809:本地 HTTP 代理端口。

这两个端口供本机其他软件连接代理用。如果之前开过别的代理软件(Clash、SSR 等)、或上次 v2rayN 没正常退出残留了进程,端口就可能被占。

2找出谁占用了端口

打开「命令提示符」或 PowerShell,输入:

  • netstat -ano | findstr 10808 —— 最后一列是占用端口的进程 PID。
  • 拿到 PID 后,tasklist | findstr 那个PID,就能看到是哪个程序。

如果发现是另一个代理软件或残留的 v2rayN / xray 进程,到任务管理器里把它结束掉,再重启 v2rayN 即可。

用命令定位端口占用
命令行 作用 结果示例 步骤 命令 看哪里 1. 查端口占用 netstat -ano | findstr 10808 末列 PID 2. 查进程名 tasklist | findstr 12345 对应程序 3. 结束进程 任务管理器结束该 PID 释放端口 或:改端口 参数设置→本地监听端口 改成 10818 等 先定位 再处理 重启服务
用 netstat 找到占用端口的 PID,再决定是结束它还是给 v2rayN 换端口。

3给 v2rayN 换一个端口

如果占用端口的程序你还要用、不能关,那就让 v2rayN 避开它:

  1. 菜单「参数设置」→ 找到「本地监听端口」(SOCKS 端口)一栏。
  2. 10808 改成一个没被占用的端口,比如 10818;HTTP 端口相应改成 10819
  3. 确定保存后「重启服务」。

改了端口,系统代理也要跟着对:如果你之前是手动给浏览器或其他软件填的 127.0.0.1:10808,改端口后这些地方也要同步改成新端口,否则它们还连旧端口。用「自动配置系统代理」的话 v2rayN 会自动跟随,不用手动改。

4顺手避免再次冲突

  • 别同时开多个代理软件:Clash、SSR、v2rayN 抢同一批端口是冲突重灾区,用哪个就只开哪个。
  • 正常退出 v2rayN:右键托盘图标「退出」,而不是直接结束进程,能避免残留进程占着端口。

端口腾出来、内核能正常启动后,如果还是上不了网,继续看 无法上网排查

下载 v2rayN(Windows 版)v7.22.6 · 支持 x64 / ARM64 · 开源免费