一天一个Linux命令——netstat

2021-01-05 22:28:30 浏览数 (1)

兄弟们好,今天我们来聊一下netstat命令

没有安装这个命令的兄弟可以安装一下这个工具包net-tools

1. 简介

netstat命令用于显示IPTCPUDPICMP等网络协议的统计数据,一般用于检验本机端口的网络连接情况。

2. 常用命令

2.1 列出所有连接
  • netstat -a——输出本机所有端口使用(包括监听的或者为监听的)
代码语言:javascript复制
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
代码语言:javascript复制
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
代码语言:javascript复制
inkstack@inkstack-OptiPlex-7070:~$ netstat -u
2.3 禁用反向域名解析

默认情况下,netstat会通过反向域名解析技术解析IP地址,这会耗费一定的时间;如果你不想让其解析,则使用-n参数禁止解析。

  • netstat -tn。禁止域名反向解析,并且输出所有的TCP连接
代码语言:javascript复制
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
代码语言:javascript复制
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和进程名字。
代码语言:javascript复制
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。显示当前连接所属的用户名
代码语言:javascript复制
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命令相同
代码语言:javascript复制
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。显示协议的发包总数等信息
代码语言:javascript复制
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命令就到这里了,我们明天再见亚。

0 人点赞