设为首页 收藏本站
查看: 1409|回复: 0

[经验分享] windows下用cmd命令netstat查看系统端口使用情况

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-9-4 09:56:17 | 显示全部楼层 |阅读模式
开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列"

经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用

假如我们需要确定谁占用了我们的9050端口

1、Windows平台
在windows命令行窗口下执行:
1.查看所有的端口占用情况
C:\>netstat -ano
  协议    本地地址                     外部地址              状态                   PID
  TCP   127.0.0.1:1434        0.0.0.0:0             LISTENING       3236
  TCP   127.0.0.1:5679        0.0.0.0:0             LISTENING       4168
  TCP   127.0.0.1:7438        0.0.0.0:0             LISTENING       4168
  TCP   127.0.0.1:8015        0.0.0.0:0             LISTENING       1456
  TCP   192.168.3.230:139     0.0.0.0:0             LISTENING       4
  TCP   192.168.3.230:1957     220.181.31.225:443     ESTABLISHED     3068
  TCP   192.168.3.230:2020    183.62.96.189:1522    ESTABLISHED     1456
  TCP   192.168.3.230:2927    117.79.91.18:80       ESTABLISHED     4732
  TCP   192.168.3.230:2929    117.79.91.18:80       ESTABLISHED     4732
  TCP   192.168.3.230:2930    117.79.91.18:80       ESTABLISHED     4732
  TCP   192.168.3.230:2931    117.79.91.18:80       ESTABLISHED     4732

2.查看指定端口的占用情况
C:\>netstat -aon|findstr"9050"
  协议    本地地址                     外部地址              状态                  PID
  TCP   127.0.0.1:9050        0.0.0.0:0             LISTENING       2016
P: 看到了吗,端口被进程号为2016的进程占用,继续执行下面命令: (也可以去任务管理器中查看pid对应的进程)
3.查看PID对应的进程
C:\>tasklist|findstr "2016"
映像名称                       PID 会话名             会话#       内存使用
========================= ========================
  tor.exe                     2016 Console                 0     16,064 K

P:很清楚吧,tor占用了你的端口。

4.结束该进程
C:\>taskkill /f /t /im tor.exe


其他不懂的用 help吧~


netstat命令的功能是显示网络连接、路由表和网络接口信息,可以让用户得知目前都有哪些网络连接正在运作。
该命令的一般格式为:

netstat [选项]

命令中各选项的含义如下:

-a 显示所有socket,包括正在监听的。
-c 每隔1秒就重新显示一遍,直到用户中断它。
-i 显示所有网络接口的信息,格式同“ifconfig -e”。
-n 以网络IP地址代替名称,显示出网络连接情形。
-r 显示核心路由表,格式同“route -e”。
-t 显示TCP协议的连接情况。
-u 显示UDP协议的连接情况。
-v 显示正在进行的工作。

-A 显示任何关联的协议控制块的地址。主要用于调试
-a 显示所有套接字的状态。在一般情况下不显示与服务器进程相关联的套接字
-i 显示自动配置接口的状态。那些在系统初始引导后配置的接口状态不在输出之列
-m 打印网络存储器的使用情况
-n 打印实际地址,而不是对地址的解释或者显示主机,网络名之类的符号
-r 打印路由选择表
-f address -family对于给出名字的地址簇打印统计数字和控制块信息。到目前为止,唯一支持的地址簇是inet
-I interface 只打印给出名字的接口状态
-p protocol-name 只打印给出名字的协议的统计数字和协议控制块信息
-s 打印每个协议的统计数字
-t 在输出显示中用时间信息代替队列长度信息。

netstat命令的列标题
Name 接口的名字
Mtu 接口的最大传输单位
Net/Dest 接口所在的网络
Address 接口的IP地址
Ipkts 接收到的数据包数目
Ierrs 接收到时已损坏的数据包数目
Opkts 发送的数据包数目
Oeers 发送时已损坏的数据包数目
Collisions 由这个接口所记录的网络冲突数目

netstat的一些常用选项:
netstat -s--本选项能够按照各个协议分别显示其统计数据。如果你的应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么你就可以用本选项来查看一下所显示的信息。你需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。
netstat -e--本选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量)。
netstat -r--本选项可以显示关于路由表的信息,类似于后面所讲使用routeprint命令时看到的 信息。除了显示有效路由外,还显示当前有效的连接。
netstat -a--本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接。
bnetstat -n--显示所有已建立的有效连接。
? AWKPHP经典 ?netstat -an中state含义


netstat -an中state含义
LISTEN:侦听来自远方的TCP端口的连接请求
SYN-SENT:再发送连接请求后等待匹配的连接请求
SYN-RECEIVED:再收到和发送一个连接请求后等待对方对连接请求的确认
ESTABLISHED:代表一个打开的连接
FIN-WAIT-1:等待远程TCP连接中断请求,或先前的连接中断请求的确认
FIN-WAIT-2:从远程TCP等待连接中断请求
CLOSE-WAIT:等待从本地用户发来的连接中断请求
CLOSING:等待远程TCP对连接中断的确认
LAST-ACK:等待原来的发向远程TCP的连接中断请求的确认
TIME-WAIT:等待足够的时间以确保远程TCP接收到连接中断请求的确认
CLOSED:没有任何连接状态
其实可以man netstat , 看其中的stat部分解释
State
The state of thesocket. Since there are no states in raw mode and usually no states used inUDP, this column may be left
blank. Normally thiscan be one of several values:
ESTABLISHED
The socket has anestablished connection.
SYN_SENT
The socket isactively attempting to establish a connection.
SYN_RECV
A connection requesthas been received from the network.
FIN_WAIT1
The socket is closed,and the connection is shutting down.
FIN_WAIT2
Connection is closed,and the socket is waiting for a shutdown from the remote end.
TIME_WAIT
The socket is waitingafter close to handle packets still in the network.
CLOSED The socket isnot being used.
CLOSE_WAIT
The remote end hasshut down, waiting for the socket to close.
LAST_ACK
The remote end hasshut down, and the socket is closed. Waiting for acknowledgement.
LISTEN The socket islistening for incoming connections. Such sockets are not included in the outputunless you specify
the –listening (-l)or –all (-a) option.
CLOSING
Both sockets are shutdown but we still don’t have all our data sent.
UNKNOWN
The state of thesocket is unknown




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-24375-1-1.html 上篇帖子: Windows Server 2008 R2 Failover Cluster 下篇帖子: window2008 64位系统没有office组件问题分析及解决 windows
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表