命令 netstat 顾名思义指的是网络状态的意思,因此在Linux系统中,命令 netstat 是用于查看当前网络连接状态、路由表和网络接口信息的工具。我们可以从它的输出结果中很轻松的得知的当前系统网络状态,以方便排查问题。
语法
netstat [参数选项]
主要参数说明
-a 显示处于监听状态和非监听状态的socket信息
-A 显示指定网络类型的网络连接状态
-n 不解析主机、端口并以数字的形式显示出地址(默认解析)
-c 其后接秒数,表示每几秒刷新显示一次
-t 显示所有TCP连接情况
-u 显示所有UDP连接情况
-l 显示连接状态为‘LISTEN’服务的网络状态
-p 显示socket所属进程的PID和名称
-s 显示各类协议的统计信息
-r 显示路由表信息
-g 显示多播功能组成员
-i 显示网络接口信息
案例 组合参数 -lntup 显示正在监听的所有TCP、UDP连接信息
[[email protected] ~]# netstat -lntupActive Internet connectio[[email protected] ~]# netstat -lntupActive Internet connections (only servers)Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1368/master tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1076/sshd tcp6 0 0 ::1:25 :::* LISTEN 1368/master tcp6 0 0 :::3306 :::* LISTEN 1182/mysqld tcp6 0 0 :::22 :::* LISTEN 1076/sshd [[email protected] ~]# ns (only servers)Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1368/master tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1076/sshd tcp6 0 0 ::1:25 :::* LISTEN 1368/master tcp6 0 0 :::3306 :::* LISTEN 1182/mysqld tcp6 0 0 :::22 :::* LISTEN 1076/sshd [[email protected] ~]#
组合参数 -rn 显示当前系统路由表
[[email protected] ~]# netstat -rnKernel IP routing tableDestination Gateway Genmask Flags MSS Window irtt Iface0.0.0.0 192.168.116.2 0.0.0.0 UG 0 0 0 ens33192.168.116.0 0.0.0.0 255.255.255.0 U 0 0 0 ens33[[email protected] ~]#
参数 -i 显示网络接口状态(类似于之前讲的命令 ifconfig)
[[email protected] ~]# netstat -iKernel Interface tableIface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flgens33 1500 150 0 0 0 129 0 0 0 BMRUlo 65536 0 0 0 0 0 0 0 0 LRU[[email protected] ~]#
组合参数 -an 显示所有连接信息
[[email protected] ~]# netstat -anActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 36 192.168.116.100:22 192.168.116.1:59577 ESTABLISHEDtcp6 0 0 ::1:25 :::* LISTEN tcp6 0 0 :::3306 :::* LISTEN tcp6 0 0 :::22 :::* LISTEN raw6 0 0 :::58 :::* 7 Active UNIX domain sockets (servers and established)Proto RefCnt Flags Type State I-Node Pathunix 2 [ ACC ] STREAM LISTENING 21926 public/qmgr# 此处省略中间内容unix 3 [ ] STREAM CONNECTED 19329 # 此处省略中间内容unix 3 [ ] STREAM CONNECTED 21986 unix 3 [ ] STREAM CONNECTED 21955 unix 3 [ ] STREAM CONNECTED 18490 /run/systemd/journal/stdoutunix 3 [ ] STREAM CONNECTED 21956 unix 3 [ ] STREAM CONNECTED 21988 [[email protected] ~]#
主要参数说明
Proto socket使用的协议(TCP、UDP、RAW)
Recv-Q 接收到但还未处理的字节数
Send-Q 已发送但还未被远程主机确认收到的字节数
Local Address 本地主机地址和端口
Foreign Address 远程主机地址和端口
State socket状态,一般只有 TCP的状态
往期合集 每天一条Linux命令(25) ifconfig (网络接口信息) 每天一条Linux命令(25) ln (软连接与硬链接) 每天一条Linux命令(24) ssh (远程安全登录)