如果 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 即可。
3给 v2rayN 换一个端口
如果占用端口的程序你还要用、不能关,那就让 v2rayN 避开它:
- 菜单「参数设置」→ 找到「本地监听端口」(SOCKS 端口)一栏。
- 把
10808改成一个没被占用的端口,比如10818;HTTP 端口相应改成10819。 - 确定保存后「重启服务」。
改了端口,系统代理也要跟着对:如果你之前是手动给浏览器或其他软件填的 127.0.0.1:10808,改端口后这些地方也要同步改成新端口,否则它们还连旧端口。用「自动配置系统代理」的话 v2rayN 会自动跟随,不用手动改。
4顺手避免再次冲突
- 别同时开多个代理软件:Clash、SSR、v2rayN 抢同一批端口是冲突重灾区,用哪个就只开哪个。
- 正常退出 v2rayN:右键托盘图标「退出」,而不是直接结束进程,能避免残留进程占着端口。
端口腾出来、内核能正常启动后,如果还是上不了网,继续看 无法上网排查。
下载 v2rayN(Windows 版)v7.22.6 · 支持 x64 / ARM64 · 开源免费