通过netstat查看当前访问服务器最多的IP,非常实用,现在分享给大家:
netstat -ntu | tail -n +3 | awk '{ print $5}' | cut -d : -f 1 | sort | uniq -c| sort -n -r | head -n 3
awk '{ print $5}':取netstat -ntu 出来值的第5列
cut -d : -f 1 :取netstat -ntu 出来值的第5列的IP地址
sort:对IP部分进行排序。
uniq -c:打印每一重复行出现的次数。(并去掉重复行)
sort -n -r:按照重复行出现的次序倒序排列。
head -n 3:取排在前3位的IP 。
# netstat -ntu | tail -n +3|awk '{ print $5}' | cut -d : -f 1 | sort | uniq -c| sort -n -r | head -n 3
21 127.0.0.1
14 183.204.240.36
5 120.33.53.133
打印出来的结果,红色显示次数,绿色显示的是IP地址
最近我又对这个命令做了改进,因为里面会显示有127.0.0.1,这个是本机IP地址,所以这里,我要把这个IP地址也去掉,所以我用到了grep,代码如下:
# netstat -ntu | tail -n +3 | awk '{ print $5}' | cut -d : -f 1 | sort | uniq -c| sort -n -r | head -n 5 | grep -v 127.0.0.1
3 125.86.8.232
2 123.126.50.81
1 98.126.60.250
1 219.150.32.132
这里我选择的是打印出5行,但却只打印出了4行,就是因为我把127.0.0.1这条对应的数据去掉了
转载请注明:IT运维空间 » linux » 巧用netstat——查看当前访问最多的IP
发表评论