zoukankan      html  css  js  c++  java
  • netstat 监控TCP/IP网络

    Netstat

      

     

     

    控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。Netstat用于显示与IPTCPUDPICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

    该命令(linux下)的一般格式为 :

     

      netstat [-a][-b][-e][-n][-o][-p proto][-r][-s][-t][-v][interval]

     

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

     

     

    -a 显示所有socket,包括正在监听的。

     

      -c 每隔1秒就重新显示一遍,直到用户中断它。

     

      -i 显示所有网络接口的信息,格式“netstat -i”。

     

      -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 -s--本选项能够按照各个协议分别显示其统计数据。如果你的应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么你就可以用本选项来查看一下所显示的信息。你需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。

     

      netstat -e--本选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量)。

    其他

      netstat -r--本选项可以显示关于路由表的信息,类似于后面所讲使用route print命令时看到的 信息。除了显示有效路由外,还显示当前有效的连接。

     

      netstat -a--本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接。

     

      netstat -n--显示所有已建立的有效连接。

     

    编辑本段Netstat命令的应用

      Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

     

      如果你的计算机有时候接收到的数据报导致出错数据或故障,你不必感到奇怪,TCP/IP可以容许这些类型的错误,并能够自动重发数据报。但如果累计的出错情况数目占到所接收的IP数据报相当大的百分比,或者它的数目正迅速增加,那么你就应该使用Netstat查一查为什么会出现这些情况了。

     

    编辑本段Netstat的常用参数

    netstat -

      ——本选项能够按照各个协议分别显示其统计数据。如果你的应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么你就可以用本选项来查看一下所显示的信息。你需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。

    netstat -e

      ——本选项用于显示关于以太网的统计数据,它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量。

    netstat -r

      ——本选项可以显示关于路由表的信息,类似于后面所讲使用route print命令时看到的信息。除了显示有效路由外,还显示当前有效的连接。

    netstat -a

      ——本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接。

    netstat -n

      ——显示所有已建立的有效连接。

     

    编辑本段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部分解释

  • 相关阅读:
    python-Web-django-路由保护
    python-Web-django-图表统计
    python-linux-集群nginx
    python-Web-数据库-oracle
    python-Web-数据库-mysql
    python-爬虫-scrapy
    Educational Codeforces Round 90 (Rated for Div. 2) A~C
    leetcode周赛192
    Codeforces Round #597 (Div. 2) C dp
    Codeforces Round #645 (Div. 2) A~D
  • 原文地址:https://www.cnblogs.com/guanghuiqq/p/2749538.html
Copyright © 2011-2022 走看看