灬小肥狗灬
1
灬小肥狗之家灬

【原创】netstat命令详解

netstat命令

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

输出详解

netstat命令的输出可以分为两部分:第一部分是Active Internet connections,即互联网连接;第二部分是Active UNIX domain sockets,即UNIX域套接字。

Active Internet connections

  • Proto协议
    • tcp IPv4的TCP连接
    • udp IPv4的UDP连接
    • tcp6 IPv6的TCP连接
    • udp6 IPv6的UDP连接
  • Recv-Q接收队列
  • Send-Q发送队列
  • Local Address本地地址
  • Foreign Address远程地址
  • State状态

常用选项

  • -a –all 显示所有连接的详细信息
  • -p –programs 显示程序的名称和PID
  • -e –extend 显示网络其他相关信息
  • -n –numeric 使用IP地址而不是DNS
  • -t –tcp 显示TCP协议信息
  • -u –udp 显示UDP协议信息
  • -v –verbose 显示指令执行过程
  • -s –statistics 显示统计信息
  • -l –listening 只显示监听端口
  • -c –continuous 持续输出netstat的信息

常用用法及结果分析

netstat -naput  # 以数字方式显示所有TCP和UDP的连接及其对应的程序
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1277/sshd  # PID为1277的sshd进程在0.0.0.0上监听tcp协议的ssh端口(22)         
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1289/cupsd          
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      946218/sshd: root@p 
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 192.168.1.90:52650      192.168.1.150:445       ESTABLISHED -                   
tcp        0    196 192.168.1.90:22         192.168.1.1:41797       ESTABLISHED 946182/sshd: root [ 
tcp6       0      0 :::22                   :::*                    LISTEN      1277/sshd           
tcp6       0      0 ::1:631                 :::*                    LISTEN      1289/cupsd          
tcp6       0      0 ::1:6010                :::*                    LISTEN      946218/sshd: root@p 
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
udp        0      0 0.0.0.0:53187           0.0.0.0:*                           1058/avahi-daemon:  
udp        0      0 0.0.0.0:67              0.0.0.0:*                           2035/dnsmasq        
udp        0      0 0.0.0.0:111             0.0.0.0:*                           1/systemd           
udp        0      0 127.0.0.1:323           0.0.0.0:*                           1080/chronyd        
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           1058/avahi-daemon:  
udp6       0      0 :::111                  :::*                                1/systemd           
udp6       0      0 ::1:323                 :::*                                1080/chronyd        
udp6       0      0 :::45796                :::*                                1058/avahi-daemon:  
udp6       0      0 :::5353                 :::*                                1058/avahi-daemon:  
参考资料
  1. Linux netstat命令 | 菜鸟教程
  2. Linux下netstat命令详解 – SegmentFault 思否

灬小肥狗灬

文章作者

发表回复

textsms
account_circle
email

19 + 14 =

灬小肥狗之家灬

【原创】netstat命令详解
netstat命令 netstat命令(network status)是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。netstat用于显示与IP、TCP、UDP…
扫描二维码继续阅读
2022-07-24