兄弟们好,今天我们来聊一下netstat
命令
没有安装这个命令的兄弟可以安装一下这个工具包net-tools
1. 简介
netstat
命令用于显示IP
、TCP
、UDP
和ICMP
等网络协议的统计数据,一般用于检验本机端口的网络连接情况。
2. 常用命令
2.1 列出所有连接
netstat -a
——输出本机所有端口使用(包括监听的或者为监听的)
inkstack@inkstack-OptiPlex-7070:~$ netstat -a
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 localhost:domain 0.0.0.0:* LISTEN
tcp 0 0 localhost:ipp 0.0.0.0:* LISTEN
tcp 0 0 localhost:43965 0.0.0.0:* LISTEN
tcp 0 1 inkstack-OptiPlex:43728 58.49.137.175:https LAST_ACK
tcp 0 0 inkstack-OptiPlex:50904 104.17.33.82:https ESTABLISHED
tcp 0 0 inkstack-OptiPlex:42640 10.108.192.140:https ESTABLISHED
tcp 0 0 inkstack-OptiPlex:36910 10.108.192.141:https ESTABLISHED
2.2 只列出TCP和UDP协议的连接
netstat -t
。只显示TCP
协议的连接。记忆方式:tcp
中的t
inkstack@inkstack-OptiPlex-7070:~$ netstat -t
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 inkstack-OptiPlex:46100 tl-in-f157.1e100.:https ESTABLISHED
tcp 0 0 inkstack-OptiPlex:34978 118.178.109.187:https ESTABLISHED
tcp 0 0 inkstack-OptiPlex:53802 42.121.254.191:https ESTABLISHED
netstat -u
。只显示UDP
协议的连接。记忆方式:upd
中的u
inkstack@inkstack-OptiPlex-7070:~$ netstat -u
2.3 禁用反向域名解析
默认情况下,netstat
会通过反向域名解析技术解析IP
地址,这会耗费一定的时间;如果你不想让其解析,则使用-n
参数禁止解析。
netstat -tn
。禁止域名反向解析,并且输出所有的TCP
连接
inkstack@inkstack-OptiPlex-7070:~$ netstat -tn
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 78 0 10.224.120.168:53802 42.121.254.191:443 CLOSE_WAIT
tcp 0 0 10.224.120.168:48368 117.34.82.212:443 ESTABLISHED
2.4 只列出正在监听的连接
netstat -tl
。列出正在监听的tcp
连接。记忆方式:listen
中的l
inkstack@inkstack-OptiPlex-7070:~$ netstat -tl
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 localhost:domain 0.0.0.0:* LISTEN
tcp 0 0 localhost:ipp 0.0.0.0:* LISTEN
tcp 0 0 localhost:43965 0.0.0.0:* LISTEN
2.5 显示进程名和用户ID
netstat -p
。显示当前连接的所属的进程ID
和进程名字。
inkstack@inkstack-OptiPlex-7070:~$ netstat -nlpt
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:43965 0.0.0.0:* LISTEN -
tcp6 0 0 127.0.0.1:63342 :::* LISTEN 21100/java
netstat -e
。显示当前连接所属的用户名
inkstack@inkstack-OptiPlex-7070:~$ netstat -nlet
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 101 678279
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 0 1729947
tcp 0 0 127.0.0.1:43965 0.0.0.0:* LISTEN 0 1082815
2.6 显示路由信息
netstat -r
。显示当前主机的路由信息。和route
命令相同
inkstack@inkstack-OptiPlex-7070:~$ route
内核 IP 路由表
目标 网关 子网掩码 标志 跃点 引用 使用 接口
default _gateway 0.0.0.0 UG 100 0 0 eno1
10.224.120.0 0.0.0.0 255.255.248.0 U 100 0 0 eno1
link-local 0.0.0.0 255.255.0.0 U 1000 0 0 eno1
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
inkstack@inkstack-OptiPlex-7070:~$ netstat -r
内核 IP 路由表
Destination Gateway Genmask Flags MSS Window irtt Iface
default _gateway 0.0.0.0 UG 0 0 0 eno1
10.224.120.0 0.0.0.0 255.255.248.0 U 0 0 0 eno1
link-local 0.0.0.0 255.255.0.0 U 0 0 0 eno1
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
2.7 显示每一种协议的具体发包总数
netstat -s
。显示协议的发包总数等信息
inkstack@inkstack-OptiPlex-7070:~$ netstat -s
Ip:
Forwarding: 1
5702490 total packets received
22 with invalid addresses
0 forwarded
0 incoming packets discarded
5702409 incoming packets delivered
3803805 requests sent out
2 outgoing packets dropped
138 dropped because of missing route
Icmp:
95 ICMP messages received
2.8 持续输出连接内容
netstat -ct
持续输出TCP
连接内容
好啦,今天的Linux
命令就到这里了,我们明天再见亚。