有的时候,端口会被占用,导致一系列问题,比如:
clash端口显示为0,导致上网失败。这可能是因为clash的进程没有结束,导致端口一直被占用。当然这只是其中一种情况,其他的情况请自行百度。这种问题的解决方式如下:
1.查看当前所有端口(已知端口的话这步可以跳过)
netstat -nultp
指令结果中端口为listen即被占用。
2.查看自己的端口有没有被占用
# 查看7890端口是否被占用
netstat -anp |grep 7890
没有LISTEN那一行,所以就表示没有被占用。此处注意,图中显示的LISTENING并不表示端口被占用,不要和LISTEN混淆哦,查看具体端口时候,必须要看到tcp,端口号,LISTEN那一行,才表示端口被占用了
在linux中查看进程占用的端口号
在Linux 上的 /etc/services 文件可以查看到更多关于保留端口的信息。
3.找到对应端口在系统中的进程ID(PID)
lsof -i :7890
4.结束进程
kill -9 [PID]
注意:有的时候电脑端没用,但手机端或者平板端正常。可能有以下原因:
- 电脑端节点链接没更新
- 浏览器安装有相关插件
- 没有打开系统接口
- 如果上面的都没有问题,那么可以尝试打开tune模式,有网后再关掉tune即可(有点玄学,还不清楚是为什么)