Linux系统下查看每个IP连接数的方法:使用netstat和ss命令轻松统计

要查看 Linux 系统上每个 IP 的连接数,可以使用 netstatss 命令结合其他工具,如 awksort

以下是两种方法,分别使用 netstatss 命令:

1、使用 netstat 命令:

netstat -an | grep ESTABLISHED | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr

2、使用 ss 命令:

ss -tan state established | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr

这两个命令的工作原理相似,首先列出所有已建立的连接,然后提取远程 IP 地址(去除端口号),接着统计每个 IP 的连接数,并按连接数降序排列。

图片[1]-Linux系统下查看每个IP连接数的方法:使用netstat和ss命令轻松统计-不念博客

命令解释:

  • netstat -anss -tan:列出系统上所有已建立的 TCP 连接。
  • grep ESTABLISHED:过滤出状态为已建立(ESTABLISHED)的连接。
  • awk '{print $5}':使用 awk 提取每行的第 5 列,即远程 IP 地址和端口号。
  • awk -F: '{print $1}':使用 awk 再次提取 IP 地址(去除端口号)。
  • sort:对 IP 地址进行排序。
  • uniq -c:统计每个唯一 IP 地址的连接数。
  • sort -nr:按连接数降序排列结果。

执行以上命令之后,你将看到一个按连接数降序排列的 IP 列表。

© 版权声明
THE END