目录

一、被程序占用端口

1.通过终端杀掉占用端口的进程

2.任务管理器

二、被系统列为保留端口


前言:

        首先了解为什么会出现端口被占用的情况

        端口被占用的情况可能出现的原因有很多,主要有以下几点:

        1.多个应用程序同时启动,并且都尝试使用同一个端口进行通信。
        2.之前的程序没有正常关闭,导致端口仍处于占用状态。
        3.某些恶意程序或病毒会尝试占用特定端口进行非法操作。
        3.系统或网络管理员配置错误,导致端口被意外占用。


一、被程序占用端口

1.通过终端杀掉占用端口的进程

        以8080端口为例

        (1) Win + R 打开 命令提示符 输入cmd 打开黑窗口 在黑窗口中输入命令查看被占用端口

// 查看端口情况
netstat -ano | findstr 8080

TCP        协议

0.0.0.0:8080        本地地址

0.0.0.0:0        外部地址

LISTENING        端口处于侦听状态

4804        PID

(2) 输入命令查询终端进程名、此处PID为4804

// 查询占用终端进程名
tasklist | findstr 4804

(3) 杀掉名为java.exe的进程

// 杀死进程
taskkill -f -t -im java.exe

2.任务管理器

同上(1)的方法查看端口情况,打开任务管理器、在详细信息中PID一栏中找到选中对应的PID结束任务即可

二、被系统列为保留端口

当我们进行上述操作时,任找不到占用的进程。可能是因为Windows系统会保留一些端口,这些端口处于被系统保留的端口序列中。

为什么会保留这些端口呢?

        1.发现病毒活动而被微软屏蔽

        2.安装过Windows update后,保留端口列表发生变化

        3.开起了Hyper-V 特性

在黑窗口中运行命令查看保留端口、在下图开始端口和结束端口下方会显示保留端口

netsh interface ipv4 show excludedportrange protocol=tcp

 解决方法:

1.将被占用的程序端口换用其他端口

2.关闭Hyper-V 特性

3.将端口设置为Administered port exclusions,执行命令

netsh int ipv4 add excludedportrange protocol=tcp startport=55500 numberofports=100

执行命令,再次查询保留端口就会显示上图中的情况

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐