使用netstat命名排查网络问题的参考指引


原文链接:http://www.lookdaima.com/WebForms/WebPages/Blanks/Pm/Docs/DocItemDetail.aspx?id=69b487d0-8bf4-4150-96df-79e173380544

1、查看 TIME_WAIT 情况

TIME_WAIT 是一种连接超时,之前遇到一个坑,有一台服务器莫名其妙的应用不能访问了,当时团队经验不足,各种排查都搞不定。最后被迫重启服务器修正。后来遇到类似的问题,发现有TIME_WAIT过多的情况,怀疑上次遇到的问题就是TIME_WAIT过多,占用资源导致。
 
用netstat命名查看time_wait个数:

netstat -ano   | find "TIME_WAIT" /C  

 
 
如上图所示,可以看到有2个time_wait超时,然后用命令
netstat -ano   | find "TIME_WAIT"  
 
可以看到:
10.23.10.102:1521
10.23.10.101:5500
这两个超时。
根据服务器的应用分析,一个是数据库访问的超时,一个是数据接收程序(端口5500)的超时。
 
2、利用netstat查看远程登录服务器的情况和ip
如下指令:
 
可以看到是:
10.28.146.122的IP远程访问的服务器
 
3、利用netstat查看应用软件使用的端口
如下指令:
假定我想知道VTS.exe(服务器上一个定时socket接收数据的程序)占用了哪个端口。
步骤:
(1)用tasklist查看该程序及进程ID
(2)用netstat查看该进程ID对应的端口
如: netstat -ano | find "318904" 
(备注:318904是tasklist查看到的vts.exe对应的进程Id)
 
如下图:

猜你喜欢

转载自www.cnblogs.com/slowx/p/9287686.html