{{ cat }}'s docs

17.6.0: 系统管理-netstat


1. netstat

作用:查看网络状况 常用语法:

  • netstat -lnp 查看开启的端口及socket,l只显示监听的socket,p显示pid和程序名,n数字化显示port、host、user名
  • netstat -an 查看当前系统所有的连接,a是所有连接,n是数字化显示port、host、user名

参数:

  • route相关命令
    • -n numberic 数字化显示
    • -r route table 显示路由表,和route命令一样效果
  • 与网络相关命令
    • -a 列出所有连接类型的连接状态
    • -t TCP 只列出TCP封包的连接
    • -u UDP 只列出UDP封包的连接
    • -l listen 只列出正在监听的服务的连接
    • -p PID 列出PID与程序名
    • -c 设置刷新时间间隔
    • --protocol={inet,inet6,unix,ipx,ax25,netrom,ddp, ... } 指定需要输出的协议

DISPLAY列名含义
stat:状态列,主要的状态有:

  • ESTABLISED:已建立连接的状态;
  • SYN_SENT:发出主动连线 (SYN 标志) 的连线封包;
  • SYN_RECV:接收到一個要求连接的主动连接封包;
  • FIN_WAIT1:该套接字服务(socket)已中断,该连线正在断线当中;
  • FIN_WAIT2:该连接已挂断,但正在等待对方主机回应断线确认的封包;
  • TIME_WAIT:该连接已挂断,但 socket 还在网络上等待结束;
  • LISTEN:通常用在服务的监听 port !可使用"-l"参数查阅。

1、netstat的"-r"参数与route效果相同

route -n        #"-n" numberic数字化显示结果
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 eth0

#效果与上面的route相同
netstat -nr        #"-n"数字化显示,"-r" 代表route
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface   
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth0
0.0.0.0         192.168.0.1     0.0.0.0         UG        0 0          0 eth0

2、"-p"参数增加显示PID与Program name

netstat -apn   #"-a"参数列出所有的连接
Active Internet connections (servers and established)    #这一部分显示活动的网络连接
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 172.16.2.47:3306            0.0.0.0:*                   LISTEN      1728/mysqld
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1504/sshd
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      1796/master
tcp        0     64 172.16.2.47:22              172.16.2.28:53860           ESTABLISHED 2026/sshd
tcp        0      0 :::22                       :::*                        LISTEN      1504/sshd
tcp        0      0 ::1:25                      :::*                        LISTEN      1796/master
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node PID/Program name    Path
unix  2      [ ACC ]     STREAM     LISTENING     10497  1382/dbus-daemon    /var/run/dbus/system_bus_socket
unix  2      [ ACC ]     STREAM     LISTENING     7824   1/init              @/com/ubuntu/upstart
unix  2      [ ACC ]     STREAM     LISTENING     11375  1796/master         public/cleanup
unix  2      [ ACC ]     STREAM     LISTENING     11382  1796/master         private/tlsmgr
unix  2      [ ACC ]     STREAM     LISTENING     11386  1796/maste
Active UNIX domain sockets (servers and established)   #这一部分显示sockets
Proto RefCnt Flags       Type       State         I-Node PID/Program name    Path
unix  2      [ ACC ]     STREAM     LISTENING     6778   1/init              @/com/ubuntu/upstart
unix  2      [ ACC ]     STREAM     LISTENING     9446   1110/hald           @/var/run/hald/dbus-NN07bNl2XK
。。。省略。。。

3、"ss -an"与"netstat -an"一样效果

ss -an
State       Recv-Q Send-Q   Local Address:Port     Peer Address:Port
LISTEN      0      80         172.16.2.47:3306                *:*  
LISTEN      0      128                 :::22                 :::*  
LISTEN      0      128                  *:22                  *:*  
LISTEN      0      100                ::1:25                 :::*  
LISTEN      0      100          127.0.0.1:25                  *:*  
ESTAB       0      64         172.16.2.47:22        172.16.2.28:53860
ss - another utility to investigate sockets 用来观察sockets的工具
# -i参数查看interface的网络状况
netstat -i
Kernel Interface table
Iface       MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0       1500   0    31219      0      0      0      811      0      0      0 BMRU
lo        65536   0        0      0      0      0        0      0      0      0 LRU

# 可搭配-c使用,持续化的监控interface的网络情况
netstat -ci
Kernel Interface table
Iface       MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0       1500   0    31433      0      0      0      817      0      0      0 BMRU
lo        65536   0        0      0      0      0        0      0      0      0 LRU
eth0       1500   0    31445      0      0      0      818      0      0      0 BMRU
lo        65536   0        0      0      0      0        0      0      0      0 LRU
eth0       1500   0    31456      0      0      0      819      0      0      0 BMRU
lo        65536   0        0      0      0      0        0      0      0      0 LRU
eth0       1500   0    31469      0      0      0      820      0      0      0 BMRU
lo        65536   0        0      0      0      0        0      0      0      0 LRU
eth0       1500   0    31480      0      0      0      821      0      0      0 BMRU
lo        65536   0        0      0      0      0        0      0      0      0 LRU
。。。。。。

4、netstat -an |grep -ic xxx 看xxx的并发数

Contents