巧用Netstat排除网络故障

原创 2017年04月23日 21:18:16

巧用Netstat排除网络故障

作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs

当在Linux服务器上遇到网络故障时,ping和traceroute是常用的两个命令,但是很多时候你需要了解更多的网络细节才有助于解决问题。要实现这一点,可以使用netstat命令,它可以提供网络套接字的详细信息以及其它有用的信息。与ping和traceroute命令一样,可以简单地在命令行使用netstat并立即获取结果。

一、什么是Netstat

netstat命令是处理网络问题的一个非常有用的工具。netstat是“Network Statistics”即网络统计的缩写,它可以显示传入和传出的网络连接,还可以用于获取网络统计信息、协议统计信息、路由表信息等。

我们可以使用netstat来查找网络问题并测量网络流量,因此可以用它收集网络的中断、降速或网络瓶颈。

二、基本的Netstat

要获取当前所有连接的一个列表,只需使用-a选项。

# netstat -a
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 *:1922                  *:*                     LISTEN     
tcp        0    216 chdc154:1922            223.99.111.233:11303    ESTABLISHED
tcp6       0      0 [::]:9000               [::]:*                  LISTEN     
tcp6       0      0 [::]:8009               [::]:*                  LISTEN     
tcp6       0      0 [::]:mysql              [::]:*                  LISTEN     
tcp6       0      0 [::]:1922               [::]:*                  LISTEN     
tcp6       0      0 [::]:9090               [::]:*                  LISTEN     
tcp6       0      0 localhost:8005          [::]:*                  LISTEN     
......

它提供了一些对于不同类型的协议(比如TCP和UDP)等的连接的基本信息,以及活跃的Unix域套接字信息。但是,natstat还允许用户获取更具体的信息,以便对调试更有帮助。

三、按连接类型过滤

基于连接类型对结果进行过滤有助于找到所需的信息。比如,你想查看TCP连接,那么可以在上面的-a选项后紧跟一个t选项,具体如下:

# netstat -a
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 *:1922                  *:*                     LISTEN     
tcp        0    216 chdc154:1922            223.99.111.233:11303    ESTABLISHED
tcp6       0      0 [::]:9000               [::]:*                  LISTEN     
tcp6       0      0 [::]:8009               [::]:*                  LISTEN   
......

相似的,如果在-a选项后紧跟u选项,则值列出UDP连接。

四、按监听连接进行过滤

如果想要查看正在监听的连接,那么可以使用-l选项(移除-a选项),比如:

# netstat -l
Active Internet connections (only servers)
......
Active UNIX domain sockets (only servers)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  2      [ ACC ]     STREAM     LISTENING     47834116 /run/systemd/private
unix  2      [ ACC ]     STREAM     LISTENING     1661287  /run/user/0/systemd/private
unix  2      [ ACC ]     SEQPACKET  LISTENING     15450    /run/udev/control
unix  2      [ ACC ]     STREAM     LISTENING     96528873 /run/snapd-snap.socket
unix  2      [ ACC ]     STREAM     LISTENING     10581    /var/lib/lxd/unix.socket
unix  2      [ ACC ]     STREAM     LISTENING     10578    /run/uuidd/request
unix  2      [ ACC ]     STREAM     LISTENING     10582    /run/acpid.socket
......

与-a选项相似,-l选项紧跟t选项,即-lt选项,表示查看正在监听的TCP连接;-lu表示查看正在监听的TCP连接。使用这种方式,可以轻松查看指定端口是否打开和监听,并确定网站应用或APP是否按预期方式运行。

五、查看网络统计信息

# netstat -s
Ip:
    1473970908 total packets received
    17795365 with invalid addresses
    0 forwarded
    0 incoming packets discarded
    1453512118 incoming packets delivered
    2392531460 requests sent out
    40 outgoing packets dropped
    3 fragments dropped after timeout
    48 reassemblies required
    15 packets reassembled ok
    3 packet reassembles failed
Icmp:
    3589646 ICMP messages received
    37 input ICMP message failed.
    ICMP input histogram:
        destination unreachable: 178
        timeout in transit: 18
        echo requests: 3589445
        echo replies: 5
......

如你所见,-s选项提供了一些在调试时可能有用的统计信息,例如总数,传入和传出数据包以及收到,发送和失败的ICMP消息。

版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。

相关文章推荐

Linux查看端口使用状态、关闭端口方法 netstat 使用

比如我有“123ab45”,我想把数字抽出来成为字符串"12345",去掉中间的ab,该怎么做,我记得php就可以直接转换,但是python里面用int或者atoi都出错。 filter(str...

cmd几个小命令排除网络故障

cmd下几个常用且实用的命令 | 浏览:109 | 更新:2013-07-12 16:50 1 2 3 4 5 6 分步阅读 ...

RS-485网络故障查找与排除

尽管更加现代化的替代技术日益增多,但RS-485技术仍然在无数的通信网络中保持着中流砥柱的地位。以下是检查常见故障和建立比较麻烦的RS-485网络的8步方法。   1. RS-485使用一对非平衡差...

网络故障诊断和排除

一个成熟的网络管理机构一般都制定有一整套完整的故障管理日志记录机制,同时人们也率先把专家系统和人工智能技术引进到网络故障管理中心。但对于大多数初学网络的人来说,这未免有点过于复杂,不过没关系,我来帮大...

思科路由器:网络故障诊断与排除命令

在出现网络故障时,作为网络工程师能够及时定位故障并解决网络故障是十分重要的。CiscoISO操作系统软件提供了一组功能丰富的命令,可以用来进行网络故障查找与排除、问题诊断以及性能检测。命令大致可以分为...
  • Galdys
  • Galdys
  • 2011年10月22日 22:10
  • 661

记一次网络故障排除:nat虚拟机不能ping外网 浏览器可以上网

记一次网络故障排除:nat虚拟机不能ping外网 浏览器可以上网起因在虚拟机中使用A软件需要联网注册,但是注册失败,随手ping了一下baidu,不通。但是可以用浏览器打开baidu。...

IT运维管理:排除网络故障常见的五种方法

网络管理员在日常工作中,常常遇到各种各样的网络故障问题,有些问题能够迅速解决,但遇到一些麻烦的问题就需要费很大的功夫。路由器、交换机、水晶头、线路、服务器等,我们要一一排查。   下面笔者将介绍一...

排除网络故障

  • 2012年10月19日 10:56
  • 1.01MB
  • 下载

牛逼的网络故障排除宝典大全

  • 2015年04月14日 12:48
  • 331KB
  • 下载

电脑网络故障:LSP造成?

网络连接正常但无法上网(能ping通外网DNS)解决方法  (2013-11-03 00:47:17) 转载▼ 标签:  辅助工具   在线聊天   解决方法   有用   不用...
  • H002399
  • H002399
  • 2015年06月07日 14:57
  • 432
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:巧用Netstat排除网络故障
举报原因:
原因补充:

(最多只允许输入30个字)