Linux网络状态NetStat命令详细信息和相关参数

Linux网络状态NetStat命令详细信息和相关参数

Netstat是遏制台吩咐,是一个监察和控制TCP/IP搜集的特殊有效的东西,它不妨表露路由表、本质的搜集贯穿以及每一个搜集接口摆设的状况消息。Netstat用来表露与IP、TCP、UDP和ICMP和议关系的统计数据,普遍用来检查本机各端口的搜集贯穿情景。

实行netstat后输入如次:

[root@sy-suz-srv51 ~]# netstat

Active Internet connections (w/o servers)

Proto Recv-Q Send-Q Local Address Foreign Address State

tcp 0 0 k8sdev.sui:sun-sr-https k8sdev.suiyi.com.:34880 SYN_RECV

tcp 0 0 k8sdev.suiyi.com.c:2379 10.1.62.21:47910 ESTABLISHED

tcp 0 0 k8sdev.suiyi.com.c:2379 k8sdev.suiyi.com.:37790 ESTABLISHED

tcp 0 0 sy-suz-srv:pcsync-https 10.1.62.162:49200 ESTABLISHED

tcp 0 0 k8sdev.suiyi.com.:52866 k8sdev.sui:sun-sr-https ESTABLISHED

tcp 0 0 k8sdev.suiyi.com.:37728 k8sdev.suiyi.com.c:2379 ESTABLISHED

tcp 0 0 k8sdev.sui:sun-sr-https k8sdev.suiyi.com.:52852 ESTABLISHED

tcp 0 0 k8sdev.sui:sun-sr-https 10.1.62.162:32841 ESTABLISHED

tcp 0 0 sy-suz-srv:pcsync-https sy-suz-srv51:60094 ESTABLISHED

tcp 0 0 localhost:webcache localhost:40136 ESTABLISHED

tcp 0 0 k8sdev.suiyi.com.:35466 10.1.62.21:sun-sr-https ESTABLISHED

tcp 0 0 k8sdev.suiyi.com.:34358 10.1.62.21:sun-sr-https ESTABLISHED

Active UNIX domain sockets (w/o servers)

Proto RefCnt Flags Type State I-Node Path

unix 3 [ ] DGRAM 18442 /run/systemd/notify

unix 2 [ ] DGRAM 18444 /run/systemd/cgroups-agent

unix 2 [ ] DGRAM 23822 /var/run/chrony/chronyd.sock

unix 8 [ ] DGRAM 18455 /run/systemd/journal/socket

unix 18 [ ] DGRAM 18457 /dev/log

unix 2 [ ] DGRAM 14151 /var/run/nscd/socket

unix 2 [ ] DGRAM 584 /run/systemd/shutdownd

unix 3 [ ] STREAM CONNECTED 124439388 /run/dbus/system_bus_socket

unix 3 [ ] STREAM CONNECTED 42312 /run/systemd/journal/stdout

unix 3 [ ] STREAM CONNECTED 39909

unix 3 [ ] STREAM CONNECTED 21675

unix 3 [ ] STREAM CONNECTED 47538

unix 3 [ ] STREAM CONNECTED 124585242 /var/run/docker/containerd/docker-containerd.sock

unix 3 [ ] STREAM CONNECTED 21658

unix 2 [ ] STREAM CONNECTED 30160

unix 3 [ ] STREAM CONNECTED 33750 /run/systemd/journal/stdout

unix 3 [ ] STREAM CONNECTED 124614293 @/containerd-shim/moby/c44e49ee0f86d8a4109afb176701795c64f44655abb1861275bbd3b2a9f76394/shim.sock

unix 3 [ ] STREAM CONNECTED 124609611 @/containerd-shim/moby/a736ba153c07f0bbf099ae1a1069530e35bfa28ae93f8f235d6c35a6c5ed9ce7/shim.sock

unix 3 [ ] STREAM CONNECTED 124601653 @/containerd-shim/moby/20d3fd59d03455d45b1da2636fca25d0edd79dac1947c17045a797eb8506157c/shim.sock

netstat的输入截止不妨分为两个局部

1、Active Internet connections 有源TCP贯穿,个中”Recv-Q”和”Send-Q”指接受部队和发送部队。那些数字普遍都该当是0。即使不是则表白软硬件包正在部队中积聚。这种情景只能在特殊少的情景见到。

2、Active UNIX domain sockets 有源Unix域套接口(和搜集套接字一律,然而只能用来本机通讯,本能不妨普及一倍)。

列名证明:

Proto:表露贯穿运用的和议。

RefCnt:表白贯穿到本套接口上的过程号。

Types:表露套接口的典型。

State:表露套接口暂时的状况。

Path:表白贯穿到套接口的其它过程运用的路途名。

netstat罕见参数

-a (all) 表露一切选项,默许不表露LISTEN关系。

-t (tcp) 仅表露tcp关系选项。

-u (udp) 仅表露udp关系选项。

-n 中断表露别号,能表露数字的十足变化成数字。

-l 仅列出有在 Listen (监听) 的效劳状况。

-p 表露创造关系链接的步调名

-r 表露路由消息,路由表

-e 表露扩充消息,比方uid等

-s 按各个和议举行统计

-c 每隔一个恒定功夫,实行该netstat吩咐。

LISTEN和LISTENING的状况只有效-a大概-l本领看到。

netstat搜集状况详解

一个平常的TCP贯穿,城市有三个阶段:1、TCP三次拉手;2、数据传递;3、TCP四次挥手

SYN:(同步序列编号,Synchronize Sequence Numbers)该标记仅在三次拉手创造TCP贯穿时灵验。表白一个新的TCP贯穿乞求。

ACK:(确认编号,Acknowledgement Number)是对TCP乞求简直认标记,同声提醒对端体例仍旧胜利接受一切数据。

FIN:(中断标记,FINish)用来中断一个TCP回音.但对应端口仍居于盛开状况,筹备接受后续数据。

LISTEN:开始效劳端须要翻开一个socket举行监听,状况为LISTEN, The socket is listening for incoming connections. 侦听来自远处TCP端口的贯穿乞求 。

SYN_SENT:存户端经过运用步调挪用connect举行active open.所以存户端tcp发送一个SYN以乞求创造一个贯穿,之后状况置为SYN_SENT,The socket is actively attempting to establish a connection. 在发送贯穿乞求后等候配合的贯穿乞求。

SYN_RECV:效劳端应发出ACK确认存户端的SYN,同声本人向存户端发送一个SYN, 之后状况置为SYN_RECV ,

A connection request has been received from the network. 在收到和发送一个贯穿乞求后等候对贯穿乞求简直认 。

ESTABLISHED:代办一个翻开的贯穿,两边不妨举行或仍旧在数据交互了, The socket has an established connection. 代办一个翻开的贯穿,数据不妨传递给用户。

FIN_WAIT1:积极封闭(active close)端运用步调挪用close,所以其TCP发出FIN乞求积极封闭贯穿,之保守入FIN_WAIT1状况。 The socket is closed, and the connection is shutting down. 等候长途TCP的贯穿阻碍乞求,或先前的贯穿阻碍乞求简直认。

CLOSE_WAIT:被迫封闭(passive close)端TCP接到FIN后,就发出ACK以回应FIN乞求(它的接受也动作文献中断符传播给表层运用步调),并加入CLOSE_WAIT, The remote end has shut down, waiting for the socket to close. 等候从当地用户寄送的贯穿阻碍乞求 。

FIN_WAIT2:积极封闭端接到ACK后,就加入了FIN-WAIT-2 , Connection is closed, and the socket is waiting for a shutdown from the remote end. 从长途TCP等候贯穿阻碍乞求。

LAST_ACK:被迫封闭端一段功夫后,接受到文献中断符的运用步调将挪用CLOSE封闭贯穿。这引导它的TCP也发送一个 FIN,等候对方的ACK.就加入了LAST-ACK , The remote end has shut down, and the socket is closed. Waiting for acknowledgement. 等候从来发向长途TCP的贯穿阻碍乞求简直认。

TIME_WAIT:在积极封闭端接受到FIN后,TCP就发送ACK包,并加入TIME-WAIT状况。 The socket is waiting after close to handle packets still in the network.等候充满的功夫以保证长途TCP接受到贯穿阻碍乞求简直认。

CLOSING:比拟罕见, Both sockets are shut down but we still don’t have all our data sent. 等候长途TCP对贯穿阻碍简直认。

CLOSED: 被迫封闭端在接遭到ACK包后,就加入了closed的状况。贯穿中断, The socket is not being used. 没有任何贯穿状况。

TIME_WAIT状况的产生只爆发在积极封闭贯穿的一方。

积极封闭方在接受到被迫封闭方的FIN乞求后,发送胜利给对方一个ACK后,将本人的状况由FIN_WAIT2窜改为TIME_WAIT,而必需再等2倍 的MSL(Maximum Segment Lifetime,MSL是一个数据报在internetwork中能生存的功夫)功夫之后两边本领把状况 都改为CLOSED以封闭贯穿。暂时RHEL里维持TIME_WAIT状况的功夫为60秒。

Linux的关系keepalive参数

1、tcp_keepalive_time – INTEGER

How often TCP sends out keepalive messages when keepalive is enabled.(Default: 2hours)

一个贯穿须要TCP发端发送keepalive探测数据包之前的清闲功夫,以秒为单元。

2、tcp_keepalive_probes – INTEGER

How many keepalive probes TCP sends out, until it decides that the connection is broken. (Default value: 9)

发送TCP keepalive探测数据包的最大数目,默许是9.即使发送9个keepalive探测包后对端仍旧没有相应,就关掉这个贯穿。

3、tcp_keepalive_intvl – INTEGER

How frequently the probes are send out. Multiplied by tcp_keepalive_probes it is time to kill not responding connection,

after probes started. Default value: 75sec i.e. connection will be aborted after ~11 minutes of retries.

发送两个TCP keepalive探测数据包的间隙功夫,默许是75秒。

常用netstat关系吩咐

1、列出一切端口 #netstat -a

2、列出一切 tcp 端口 #netstat -at

3、列出一切 udp 端口 #netstat -au

4、只表露监听端口 #netstat -l

5、只列出一切监听 tcp 端口 #netstat -lt

6、只列出一切监听 udp 端口 #netstat -lu

7、列出一切监听 UNIX 端口 #netstat -lx

8、表露一切端口的统计消息 #netstat -s

9、表露 TCP 或 UDP 端口的统计消息 #netstat -st 或 -su

10、 输入中表露 PID 和过程称呼 #netstat -p

11、netstat 输入中不表露长机,端口和用户名 (host, port or user)

当你不想让长机,端口和用户名表露,运用 netstat -n。将会运用数字包办那些称呼。

同样不妨加快输入,由于不必举行比对查问。

#netstat -an

即使不过不想让这三个称呼中的一个被表露,运用以次吩咐

# netsat -a --numeric-ports

# netsat -a --numeric-hosts

# netsat -a --numeric-users

12、连接输入 netstat 消息  #netstat -c

13、找到步调运转的端口 #netstat  -ap | grep ‘:80’

14、察看贯穿某效劳端口最多的的IP地方(前20个)

#netstat -nat | grep "10.1.62.23:443" |awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -20

15、TCP百般状况列表 

#netstat -nat |awk ‘{print $6}’

统计数目

#netstat -nat |awk ‘{print $6}’|sort|uniq -c

排序

#netstat -nat |awk ‘{print $6}’|sort|uniq -c|sort -rn

#netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’

16、径直统计tcp数目监听的数目

#netstat -ant | wc -l

分享到 :
ping参数详细信息
2021-03-30 下一篇

Leave a Reply

Your email address will not be published. Required fields are marked *