环球短讯!Windows系统如何处理应用程序端口冲突?
我们在使用电脑的过程中,如果在打开某一个应用程序时,出现端口冲突提示消息,导致我们不能正常使用应用程序。其原因是因为应用程序需要使用的TCP/UDP端口被其它正在运行的程序、或者病毒木马占用了,导致了端口冲突,应用程序运行异常。本文详细介绍出现这种错误的解决方法。
查看所有的端口
按住【WIN+R】快捷键打开运行输入窗口,输入“cmd”指令,打开命令提示符窗口输入【netstat -ano】,系统将显示所有的端口占用信息。
(资料图片)
字段说明
【协议】包含TCP和UDP
【本地地址,四个点分十进制数:端口】属于IPv4,如果是[::]或者[一长串的十六进制数]则属于IPv6。均属于计算机本地ip。
【外部地址】是属于本地与外网进行通信的IP地址。
【状态】
LISTENING:侦听状态;
ESTABLISHED:已经建立连接,并正在通信;
CLOSE_WAIT:对方主动关闭连接或者网络异常导致连接中断,这时我方的状态会变成CLOSE_WAIT,此时我方要调用close()来使得连接正确关闭;
TIME_WAIT:我方主动调用close()断开连接,收到对方确认后状态变为TIME_WAIT。TCP协议规定TIME_WAIT状态会一直持续2MSL(即两倍的分段最大生存期),以此来确保旧的连接状态不会对新连接产生影响。处于TIME_WAIT状态的连接占用的资源不会被内核释放,所以作为服务器,在可能的情况下,尽量不要主动断开连接,以减少TIME_WAIT状态造成的资源浪费。
SYN_SENT:SYN_SENT状态表示请求连接,当我们要访问其它的电脑的服务时,首先要发个同步信号给该端口,此时状态为SYN_SENT。如果连接成功,就变为ESTABLISHED,此时SYN_SENT状态非常短暂。如果发现SYN_SENT非常多且在向不同的机器发出,我们的电脑可能中了病毒。病毒为了感染其它的电脑,会扫描其它的电脑,在这个过程中,会对每个要扫描的电脑都会发出了同步请求,这就是出现许多SYN_SENT的原因。
【PID(进程号)】作为一种身份别名
查询指定的端口占用
在命令窗口,输入【netstat -ano | findstr “指定端口”】,例如查询80端口。
查询PID对应的进程
在命令窗口,输入【tasklist | findstr “指定PID号”】,例如上图的4788
杀死/结束/终止进程
在命令窗口,输入【taskkill /f /t /im 程序名】,例如上图中的mysqld.exe。
再次查看进程已经被终止不存在了
更多电脑实用技巧,关注【源自生活随笔】公众号
关键词: