转载:怎样查看本机打开的端口

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 20:43   1969   0

转载:怎样查看本机打开的端口

经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法。
一、怎样查看本机打开的端口?
1. Windows本身自带的netstat命令
Netstat 显示协议统计和当前的TCP/IP 网络连接。该命令只有在安装了 TCP/IP 协议后才可以使用。

netstat [-a] [-e] [-n][-s] [-p protocol] [-r] [interval]
参数
-a 显示所有连接和侦听端口。服务器连接通常不显示。
-e 显示以太网统计。该参数可以与 -s选项结合使用。
-n 以数字格式显示地址和端口号(而不是尝试查找名称)。
-s 显示每个协议的统计。默认情况下,显示TCP、UDP、ICMP 和 IP 的统计。-p 选项可以用来指定默认的子集。
-p protocol 显示由 protocol指定的协议的连接;protocol 可以是 tcp 或 udp。如果与 -s 选项一同使用显示每个协议的统计,protocol 可以是tcp、udp、icmp 或 ip。

用这个命令看一下自己的机器开放的端口。进入到命令行下,使用netstat命令的a和n两个参数:
C:\>netstat-an

二、如何查看端口号被哪个程序占用了?
1, Cmd 输入 netstat –ano 可以看到
2, 例如我查80端口被什么占用了 对应的进程id是 3600
再输入tasklist来查看 pid 3600是哪个进程什么程序在跑
3, 可以很快看到是tomcat6在用pid 3600 也即此占用了80端口
此时可以用 taskkill /pid 3600 /t /f 快速关闭此进程

三、或者,假如我们需要确定谁占用了我们的9050端口;
1、Windows平台,命令行窗口下执行:
C:\>netstat -aon|findstr"9050"
TCP 127.0.0.1:9050 0.0.0.0:0 LISTENING2016
2、看到了吗,端口被进程号为2016的进程占用,继续执行下面命令:
C:\>tasklist|findstr"2016"
tor.exe 2016 Console 0 16,064 K
很清楚吧,tor占用了你的端口。
taskkill /pid 2016 或者 taskkill /IMtor.exe

原文:http://blog.sina.com.cn/s/blog_8abeac5b01018t11.html
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP