Linux 查看访问 IP的工具

2021-07-27 10:56:41 浏览数 (1)

Linux 系统有很多用于快速处理数据的工具如 grep , awk , cut , sort , uniq , sort 可以帮助我们分析网络情况 , 他们非常非常地好用 , 如果你熟练掌握他们的使用技巧 , 他们则可以帮你快速定位问题 ; 接下来一步步来查看访问系统的 IP 情况

通过 netstat -ntu , 找出通过 tcp 和 udp 连接服务器的 IP 地址列表 :

代码语言:javascript复制
# netstat -ntu

Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 ip地址:29631    ip地址:49136   ESTABLISHED
这是所有与服务器连接的外部 IP 信息列表 , 可以看到第五列是所有的外部 IP 信息 ;

使用 grep tcp 过滤出来 :

代码语言:javascript复制
# netstat -ntu | grep tcp

tcp        0      0 ip地址:29631    ip地址:19386   ESTABLISHED

也可以使用 egrep 过滤多个条件 # netstat -ntu | egrep 'tcp|udp'

使用 awk 将第五列单独截出来 :

代码语言:javascript复制
# netstat -ntu | grep tcp | awk '{print $5}'

ip地址:19386

使用 cut 将列信息以 : 为分隔符再分成不同的列 , 显示第一个 field :

代码语言:javascript复制
# netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1

ip地址

使用 sort 默认字符顺序将字段值排序 :

代码语言:javascript复制
# netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort

ip地址

使用 uniq 将已经排序好的字段计算不同值的数目 :

代码语言:javascript复制
# netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c

1 ip地址

uniq -c 根据相近的值计算和 , 因此之前需要排序好

使用 sort -nr 数字降序方式再排一下结果 :

代码语言:javascript复制
# netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr

4 ip地址 

使用 sort -n , 可以按照数字升序排

使用 head 或 tail 取头部几行或尾部几行 :

代码语言:javascript复制
# netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head -2

4 ip地址

0 人点赞