zoukankan      html  css  js  c++  java
  • netstat

    netstat使用

       命令用于显示各种网络相关信息,如网络连接,路由表,接口状态,masquerade 连接,多播成员等, 文本演示

    输出格式

    jarvis@Jarvis:~$ netstat
    Active Internet connections (w/o servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State
    tcp        0      0 10.141.31.209:http      223.104.188.182:52153   ESTABLISHED
    tcp        0      0 10.141.31.209:43140     10.174.231.167:5574     ESTABLISHED
    tcp        0      0 10.141.31.209:http      117.136.94.169:27249    ESTABLISHED
    tcp        0      0 10.141.31.209:http      223.104.190.12:51091    ESTABLISHED
    tcp        0      0 10.141.31.209:http      223.104.190.12:29270    ESTABLISHED
    tcp        0      0 localhost.localdo:mysql localhost.localdo:44134 ESTABLISHED
    ...
    Active UNIX domain sockets (w/o servers)
    Proto RefCnt Flags       Type       State         I-Node   Path
    unix  2      [ ]         DGRAM                    17397    /run/user/500/systemd/notify
    unix  3      [ ]         DGRAM                    9700     /run/systemd/notify
    unix  10     [ ]         DGRAM                    9716     /run/systemd/journal/dev-log
    unix  2      [ ]         DGRAM                    9719     /run/systemd/journal/syslog
    

      输出结果主要分为两部分

    1. Active Internet connections, 即有源TCP连接, 其中 Recv-QSend-Q 指%0A的是接收队列和发送队列. 这些数字一般都应该是0. 如果不是则表示软件包正在队列中堆积.
    2. Active UNIX domain sockets, 称为有源Unix域套接口(用于本地的进程/线程间socket连接信息), Proto为连接使用的协议, RefCnt表示连接到本套接口上的进程号, Types显示套接口的类型(流式套接字SOCK_STREAM、数据包套接字SOCK_DGRAMSOCK_SEQPACKET和原始套接字), State显示套接口当前的状态,Path表示连接到套接口的其他进程使用的路径名.

    常见参数

    1. {-a|--all} 显示所有选项, 默认不显示udp协议和State值为LISTEN信息而State值为ESTABLISHED是显示的已连接到改端口的信息
    2. {-c|--continuous} 每隔一个固定时间,执行该netstat命令。
    3. {-e|--expansion} 显示扩展信息,例如uid等
    4. {-l|--listen} 仅列出有在 Listen (监听) 的服务状态
    5. {-n|--numeric} 拒绝显示别名,能显示数字的全部转化成数字。
    6. {-p|--program} 显示建立相关链接的程序名
    7. {-r|--router} 显示路由信息,路由表
    8. {-s|--statistic} 按各个协议进行统计
    9. {-t|--tcp} 仅显示tcp相关选项
    10. {-u|--udp} 仅显示udp相关选项
    11. {-x|--unix} 仅显示unix相关选项 提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

    Useful

    1. {-r|--route}: Display the kernel routing tables

      jarvis@Jarvis:~$ netstat -r
      Kernel IP routing table
      Destination Gateway Genmask Flags MSS Window irtt Iface
      default 10.141.0.1 0.0.0.0 UG 0 0 0 eth0
      10.141.0.0 * 255.255.192.0 U 0 0 0 eth0
      • Destination 目的网络或主机
      • Gateway 经过网关
      • Genmask 目标网络的网络掩码
      • Flags 路由flag

        • A 被addrconf安装
        • C 缓存记录
        • D 路由表的条目是由ICMP重定向消息生成的
        • H 目标是一台主机
        • G 路由使用网关
        • M 路由表条目已被ICMP重定向消息修改
        • R 动态路由复原
        • S 此路由为手动添加
        • U 路由可用
        • W 由一个条目Clone而来
        • ! 拒绝路由
      • MSS(Maximum Segment Size) 最大分段尺寸, 也是内核所构建以通过该路由发送的数据报的最大尺寸

      • Window 系统一次从远程主机接收突发的最大量数据

      • irtt(initial round trip tim) 初始往返时间

      • Iface 网络接口名称

    2. {-g|--groups} Display multicast group membership information for IPv4 and IPv6.

      jarvis@Jarvis:~$ netstat -g
      IPv6/IPv4 Group Memberships
      Interface RefCnt Group
      #------------------------------------------
      lo 1 all-systems.mcast.net
      eth0 1 all-systems.mcast.net
      lo 1 ip6-allnodes
      lo 1 ff01::1
      eth0 1 ip6-allnodes
      eth0 1 ff01::1
    3. {-i|--interfaces} Display a table of all network interfaces.

      jarvis@Jarvis:~$ netstat -i
      Kernel Interface table
      Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
      eth1 1500 0 0 0 0 0 0 0 0 BMRU
      eth2 1500 0 0 0 0 0 0 0 0 BMRU
      eth3 1500 0 0 0 0 0 0 0 0 BMRU
      lo 1500 0 0 0 0 0 0 0 0 LRU
      wifi0 1500 0 0 0 0 0 0 0 0 BMRU
      • Iface 网络接口名称
      • MTU(Maximum Trasmission Unit) 最大传输单元
      • RX-OK 接收时, 正确的数据包数
      • RX-ERR 接收时, 产生错误的数据包数
      • RX-DRP 接收时, 丢弃的数据包数
      • RX-OVR 接收时, 由于过速而丢失的数据包数
      • TX-OK 发送时,正确的数据包数
      • TX-ERR 发送时,产生错误的数据包数
      • TX-DRP 发送时,丢弃的数据包数
      • TX-OVR 发送时,由于过速而丢失的数据包数
      • Flg 标志
        • B 已经设置了一个广播地址
        • L 该接口是一个回送设备
        • M 接收所有数据包(混乱模式)
        • N 避免跟踪
        • O 在该接口上,禁用ARP
        • P 这是一个点到点链接
        • R 接口正在运行
        • U 接口处于“活动”状态

    参考资料

    1. Linux netstat命令详解
    2. Linux学习:netstat命令
    3. Socket 的功能 和 套接字的三种类型
    4. [TCPIP] IP路由表及选路 Note
    5. “genmask”和“netmask”之间的区别
    6. netstat -i FLG含义
    7. netstat -i 和ifconfig -s的输出解释
  • 相关阅读:
    常见的排序算法--java版
    使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?
    在JAVA中如何跳出当前的多重嵌套循环
    说说&和&&的区别
    家族/亲戚(relation)
    面积(area)
    珍珠(bead)
    N皇后问题
    纪念品分组 2007年NOIP全国联赛普及组
    二叉树的序遍历
  • 原文地址:https://www.cnblogs.com/QQ-1615160629/p/netstat.html
Copyright © 2011-2022 走看看