netstat:查看网络状态
简介 netstat命令用于显示本机网络的连接状态、运行端口和路由表信息
说明
netstat命令用于显示本机网络的连接状态、运行端口和路由表信息
格式
netstat [option]
常用参数
- -a或—all:显示所有连线中的Socket,监听状态和非监听状态的socket信息
- -A<网络类型>或—<网络类型>:列出该网络类型连线中的相关地址;
- -c或—continuous:持续列出网络状态,后面跟秒数表示每隔几秒就刷新显示一次
- -g或—groups:显示多重广播功能群组组员名单;
- -h或—help:在线帮助;
- -i或—interfaces:显示网络接口信息,该功能类似于前面的ip -s link
- -l或—listening:显示监控中的服务器的Socket;
- -n或—numeric:直接使用ip地址,而不通过域名服务器;
- -p或—programs:显示正在使用Socket的程序识别码PID和程序名称;
- -r或—route:显示Routing Table;
- -s或—statistice:显示网络工作信息统计表;
- -t或—tcp:显示TCP传输协议的连线状况;
- -u或—udp:显示UDP传输协议的连线状况;
示例
1、常用选项组合一(-an)
[root@localhost ~]# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 192.168.71.108:22 192.168.71.1:51578 ESTABLISHED
tcp 0 52 192.168.71.108:22 192.168.71.1:57791 ESTABLISHED
tcp6 0 0 :::3306 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
udp 0 0 0.0.0.0:35416 0.0.0.0:*
udp 0 0 0.0.0.0:5353 0.0.0.0:*
raw6 0 0 :::58 :::* 7
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ACC ] STREAM LISTENING 15623 /var/run/NetworkManager/private
unix 2 [ ACC ] SEQPACKET LISTENING 12872 /run/udev/control
unix 2 [ ] DGRAM 7512 /run/systemd/notify
unix 2 [ ] DGRAM 7514 /run/systemd/cgroups-agent
...
第一行活动网络连接说明:
| 列数 | 名称 | 含义 |
|---|---|---|
| 第1列 | Proto | socket使用协议(TCP、UDP、RAW) |
| 第2列 | Recv-Q | 接收到但是还未处理的字节数 |
| 第3列 | Send-Q | 已经发送但是未被远程主机确认收到的字节数 |
| 第4列 | Local Address | 本地主机地址和端口 |
| 第5列 | Foreign Address | 远程主机地址和端口 |
| 第6列 | State | socket的状态,通常仅仅有TCP的状态,状态值可能有LISTEN、ESTABLISHED、SYN_SEND、SYN_RECV、FIN_WAIT1、FIN_WAIT2、FIN_WAIT等 |
State状态信息:
- CLOSED:初始(无连接)状态。
- LISTEN:侦听状态,等待远程机器的连接请求。
- SYN_SEND:在TCP三次握手期间,主动连接端发送了SYN包后,进入SYN_SEND状态,等待对方的ACK包。
- SYN_RECV:在TCP三次握手期间,主动连接端收到SYN包后,进入SYN_RECV状态。
- ESTABLISHED:完成TCP三次握手后,主动连接端进入ESTABLISHED状态。此时,TCP连接已经建立,可以进行通信。
- FIN_WAIT_1:在TCP四次挥手时,主动关闭端发送FIN包后,进入FIN_WAIT_1状态。
- FIN_WAIT_2:在TCP四次挥手时,主动关闭端收到ACK包后,进入FIN_WAIT_2状态。
- TIME_WAIT:在TCP四次挥手时,主动关闭端发送了ACK包之后,进入TIME_WAIT状态,等待最多MSL时间,让被动关闭端收到ACK包。
- CLOSING:在TCP四次挥手期间,主动关闭端发送了FIN包后,没有收到对应的ACK包,却收到对方的FIN包,此时,进入CLOSING状态。
- CLOSE_WAIT:在TCP四次挥手期间,被动关闭端收到FIN包后,进入CLOSE_WAIT状态。
- LAST_ACK:在TCP四次挥手时,被动关闭端发送FIN包后,进入LAST_ACK状态,等待对方的ACK包。
2、常用组合二(-lntup)
[root@localhost ~]# netstat -lntup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 1449/php-fpm: maste
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 1736/mongod
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1199/nginx: master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1114/sshd
tcp6 0 0 :::3306 :::* LISTEN 3598/mysqld
tcp6 0 0 :::22 :::* LISTEN 1114/sshd
udp 0 0 0.0.0.0:35416 0.0.0.0:* 863/avahi-daemon: r
udp 0 0 0.0.0.0:5353 0.0.0.0:* 863/avahi-daemon: r
显示所有TCP和UDP正在监听的连接信息:
- -l:显示所有LINTEN状态的网络连接
- -n:显示IP地址,不进行DNS解析成主机名、域名
- -t:显示所有tcp连接
- -u:显示所有udp连接
- -p:显示进程号和进程名
3、统计当前系统的路由表
[root@localhost ~]# netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.71.2 0.0.0.0 UG 0 0 0 eno16777736
192.168.71.0 0.0.0.0 255.255.255.0 U 0 0 0 eno16777736
4、统计各个状态的网络连接数
[root@localhost ~]# netstat -an|awk '/^tcp/ {++count[$NF]} END {for(a in count) print a,count[a]}'
LISTEN 6
ESTABLISHED 1
[root@localhost ~]# netstat -n|awk '/^tcp/ {++count[$NF]} END {for(a in count) print a,count[a]}'
LISTEN 6
ESTABLISHED 1
图像梯度计算的是图像变化的速度。对于图像的边缘部分,其灰度值变化较大,梯度值也较大;相反,对于图像中比较平滑的部分,其灰度值变化较小,相应的梯度值也较小。图像梯度计算需要求导数,但是图像梯度一般通过计算像素值的差来得到梯度的近似值(近似导数值)。本节主要介绍Sobel算子、Scharr算子、Laplacian算子和Canny算子的使用.
图标组件是展示图标的组件,但是再Flutter中,Icon组件是只是起一个展示效果,不能进行交互,如果要实现交互,就需要使用图标按钮IconButton组件。
网页扫描二维码库:Html5-Qrcode,官网地址:https://scanapp.org/html5-qrcode-docs/
快速生成表格
Electron页面跳转、浏览器打开链接和打开新窗口
Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题
在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。