Linux 查看访问 IP 尝试查看

转载   https://blog.csdn.net/tojohnonly/article/details/82772323

 

不知道准确定如何  待确认 

 

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

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

# netstat -ntu

Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 23.105.193.199:29631    219.133.170.172:49136   ESTABLISHED
tcp        0      0 23.105.193.199:59562    172.217.11.67:443       ESTABLISHED
tcp        0      0 23.105.193.199:29631    219.133.170.172:5493    ESTABLISHED
tcp        0      0 23.105.193.199:33782    172.217.5.78:443        ESTABLISHED
tcp        0      0 23.105.193.199:37098    216.58.193.194:443      ESTABLISHED
tcp        0      0 23.105.193.199:29666    219.133.170.172:10904   ESTABLISHED
tcp        0      0 23.105.193.199:29631    219.133.170.172:43688   ESTABLISHED
tcp        0      0 23.105.193.199:46806    74.125.28.188:5228      ESTABLISHED
tcp        0      0 23.105.193.199:29631    219.133.170.172:52865   ESTABLISHED
tcp        0      0 23.105.193.199:33780    172.217.5.78:443        ESTABLISHED
tcp        0      0 23.105.193.199:29631    219.133.170.172:59935   ESTABLISHED
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

这是所有与服务器连接的外部 IP 信息列表 , 可以看到第五列是所有的外部 IP 信息 ;

使用 grep将 tcp 过滤出来 :

# netstat -ntu | grep tcp

tcp        0      0 23.105.193.199:29631    219.133.170.172:19386   ESTABLISHED
tcp        0      0 23.105.193.199:29631    219.133.170.172:43857   ESTABLISHED
tcp        0      0 23.105.193.199:29631    219.133.170.172:49136   ESTABLISHED
tcp        0      0 23.105.193.199:29631    219.133.170.172:5493    ESTABLISHED
tcp        0      0 23.105.193.199:60876    172.217.5.74:443        ESTABLISHED
tcp        0      0 23.105.193.199:29666    219.133.170.172:10904   ESTABLISHED
tcp        0      0 23.105.193.199:33790    172.217.5.78:443        ESTABLISHED
tcp        0      0 23.105.193.199:59566    172.217.11.67:443       ESTABLISHED
tcp        0      0 23.105.193.199:46806    74.125.28.188:5228      ESTABLISHED
tcp        0      0 23.105.193.199:33780    172.217.5.78:443        ESTABLISHED
tcp        0      0 23.105.193.199:29631    219.133.170.172:39416   ESTABLISHED
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

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

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

# netstat -ntu | grep tcp | awk '{print $5}'

219.133.170.172:19386
219.133.170.172:43857
219.133.170.172:12527
172.217.5.77:443
219.133.170.172:53970
219.133.170.172:5493
172.217.5.74:443
173.194.78.188:5228
219.133.170.172:10904
172.217.11.74:443
172.217.5.78:443
219.133.170.172:39416
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

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

# netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1

219.133.170.172
219.133.170.172
219.133.170.172
219.133.170.172
173.194.78.188
219.133.170.172
172.217.11.74
172.217.5.78
172.217.11.67
219.133.170.172
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

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

# netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort

172.217.11.67
172.217.11.74
172.217.5.78
173.194.78.188
219.133.170.172
219.133.170.172
219.133.170.172
219.133.170.172
219.133.170.172
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

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

# netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c

1 172.217.11.67
1 172.217.11.74
1 172.217.5.78
1 173.194.78.188
5 219.133.170.172
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

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

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

# netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr

4 219.133.170.172
1 173.194.202.188
1 172.217.2.238
1 172.217.11.67
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

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

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

# netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head -2

4 219.133.170.172
1 173.194.202.188
  • 1
  • 2
  • 3
  • 4

原文链接 https://www.linuxidc.com/Linux/2012-05/61126.htm

作者 Github : tojohnonly , 博客 : EnskDeCode

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值