netstat是一个控制台命令,可用于监控本机的TCP/IP网络,获得路由表、网络连接以及所有网络接口设备的状态信息。一般情况下,我们主要使用netstat命令显示与IP、TCP、UDP和ICMP协议相关的统计数据,检验本机各端口的网络连接情况。
比如说,在日常使用电脑时,如果连接到了网络,或多或少的会因接收到的数据包导致出错数据或故障,在正常量的情况下,TCP/IP可以容许这些类型的错误,并且能够自动重新发送数据包。但是如果累计的出错情况数占所接收IP数据报的百分比过大,而且数目还在不断增加,那么我们就要进入控制台,使用netstat命令查看一下出现问题的连接端口。
netstat结果详解
[root@honey-master ~] netstat
Active UNIX domain sockets (w/o servers) |
Proto RefCnt Flags Type State I-Node Path |
unix 3 [ ] DGRAM 1703 /run/systemd/notify |
unix 2 [ ] DGRAM 1705 /run/systemd/cgroups-agent |
... |
unix 3 [ ] STREAM CONNECTED 29975 /run/systemd/journal/stdout |
unix 3 [ ] STREAM CONNECTED 1543565 /var/run/docker.sock |
unix 3 [ ] STREAM CONNECTED 323733 |
unix 3 [ ] STREAM CONNECTED 189654 |
lo 1 all-systems.mcast.net
ens33 1 all-systems.mcast.net
docker0 1 all-systems.mcast.net
lo 1 ff01::1
ens33 1 ff02::1
ens33 1 ff01::1
docker0 1 ff02::1
* 查看服务是否在运行
[root@honeypot ~]# netstat -aple | grep nginx
tcp 0 0 0.0.0.0:http 0.0.0.0:* LISTEN root 42158 3359/nginx: master
tcp 0 0 0.0.0.0:81 0.0.0.0:* LISTEN root 42160 3359/nginx: master
tcp 0 0 0.0.0.0:https 0.0.0.0:* LISTEN root 42159 3359/nginx: master
tcp 0 0 honeypot:https 10.0.80.6:46770 ESTABLISHED nginx 1406865 3360/nginx: worker
说明nginx正在运行,但如果关闭掉redis服务,状态都变成了关闭或者等待关闭
[root@honeypot ~] netstat -aple | grep redis
tcp 1 0 honeypot:41338 honeypot:redis CLOSE_WAIT root 73035 8683/python3
tcp 1 0 honeypot:32926 honeypot:redis CLOSE_WAIT root 1467648 159493/python3
tcp 0 0 honeypot:redis honeypot:41332 FIN_WAIT2 root 0 -
tcp 1 0 honeypot:41376 honeypot:redis CLOSE_WAIT root 73107 8822/python3
tcp 0 0 localhost:redis localhost:47240 TIME_WAIT root 0 -
组合命令
- 查看TCP连接状态
[root@honeypot ~]# netstat -nat |awk '{print $6}' |sort|uniq -c|sort -rn
174 ESTABLISHED
35 TIME_WAIT
31 LISTEN
26 CLOSE_WAIT
1 established)
1 Foreign
- 查找请求数请20个IP
[root@honeypot ~]# netstat -anlp|grep 80|grep tcp|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -n20
先把状态全都取出来,然后使用uniq -c统计,之后再进行排序。
15 127.0.0.1
4 10.0.81.29
3 10.0.81.35
3 10.0.80.6
2 0.0.0.0
1
- 查看连接某服务端口最多的的IP地址
[root@honeypot ~]# netstat -nat | grep "10.0.81.29:22" |awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -20
1 10.0.91.13
Original: https://www.cnblogs.com/ivanlee717/p/16298654.html
Author: ivanlee717
Title: linux命令_netstat
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/523535/
转载文章受原作者版权保护。转载请注明原作者出处!