网络命令之netstat

内容概述

1.网络命令之netstat

内容详细

1.netstat命令
显示网络连接情况,路由表信息,端口状态,网络连接情况等信息.
一个进程服务运行之后,会暴露一个端口号,以及产生响应的进程信息.
怎么用?
1.查看所有的网络连接情况
netstat -an		# -a 显示所有的socket(套接字)信息	-n 显示数字地址信息而非主机名(省去了主机名)
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0     52 192.168.174.26:22       192.168.174.1:64601     ESTABLISHED
tcp6       0      0 :::22                   :::*                    LISTEN     
udp        0      0 127.0.0.1:323           0.0.0.0:*                          
udp6       0      0 ::1:323                 :::*                               
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node   Path
常见字段解释:
Proto	套接字使用的协议是什么
Recv-Q 	连接套接字的用户还未拷贝的字节数
Local Address	socket本地的地址和端口号
Foreign Address	socket的远程主机地址和端口号
State 	socket	socket的运行情况,LISTEN表示监听中
我们需要记住一些重要的socket连接情况的参数
ESTABLISHED	套接字有一个有效连接
SYN_SENT	套接字尝试建立一个连接
SYN_RCVD	从网络上收到一个连接请求
FIN_WAIT1	套接字已关闭,连接正在断开
FIN_WAIT2	连接已关闭,套接字等待远程方终止
TIME_WAIT	在关闭之后,套接字等待处理仍然在网络中的分组
CLOSED	套接字未启用
CLOSED_WAIT	远程方已关闭,等待套接字关闭
LAST_ACK	远程方终止,套接字已关闭,等待确认.
LISTEN	套接字监听进来的连接.如果不设置 --listening (-l)或者 --all(-a)选项,将不显示出这些连接
CLOSING	套接字都已关闭,而还未把所有数据发出.
UNKNOWN	状态未知.
2.netstat常用的参数组合
# netstat -tunlp	# 查看机器上正在运行的所有端口情况以及进程情况	
-t	显示出TCP的连接情况. 
-u	显示出UDP的连接情况
-n	不进行DNS解析
-l	只显示正在监听的套接字情况
-p	显示出套接字所属的进程PID和进程名
127.0.0.1	# 本地回环地址,用于机器内部应用通信,外人无法访问次地址.
0.0.0.0		# 绑定机器所有的网卡地址
netstat -tunlp | grep 3306	# 检查服务器是否运行了3306端口 (查看是否运行了mysql数据库)
# 显示系统的路由表情况
netstat -rn 等同于 route -n
# 显示网络的接口情况
netstat -i 	# 显示所有网络接口的列表情况
Kernel Interface table
Iface             MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0             1500     1140      0      0 0           495      0      0      0 BMRU
eth1             1500        0      0      0 0            14      0      0      0 BMRU
lo              65536       32      0      0 0            32      0      0      0 LRU
Iface	网卡的名字
MTU	最大的传输单元,单位是字节
RX-OK/TX-OK	正确接收了多少数据包,发送了多少数据包
RX-ERR/TX-ERR	接收,发送数据包时,丢弃了多少数据包
RX-OVR/TX/OVR	由于错误遗失了多少数据包
FLg标记
	L	回环地址
	R:	这个网络接口正在运行
	U:	接口正在处于活动的状态
	M:	接收所有的数据包
	O:	该接口上禁止arp
	P:	端与端的连接
	B:	设置了广播地址
查看TX-ERR RX-ERR最好是0,否则表示网络情况不健康,有丢包的现象
# 查看服务器监听
netstat -tunlp | grep 3306	# 监听数据库是否运行
netstat -tunlp | grep 80	# 监听web服务是否运行
netstat -tunlp | grep 3306	# 监听https服务是否运行
...
# linux还有一个网络查看工具,叫做ss	# 没装的话需要安装
# yum install iproute -y
ss -an	# 显示所有的socket套接字连接情况.
# 显示所有正在监听中的套接字情况
ss -tunlp | grep 80
posted @ 2021-07-24 22:34  堇雪月寒风  阅读(246)  评论(0)    收藏  举报
Live2D