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

这是所有与服务器连接的外部 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

也可以使用 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

使用 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

使用 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

使用 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

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

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

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

netstat -ntu | grep tcp | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -nr | head -10

4 219.133.170.172
1 173.194.202.188

linux下查询当前所有连接的ip相关推荐

  1. linux下用C语言实现TCP/IP服务器与客户端互相发送数据的socket编程

    linux下用C语言实现TCP/IP服务器与客户端互相发送数据的socket编程 server.c #include <sys/stat.h>#include <fcntl.h> ...

  2. linux配置指定ip访问指定端口号,操作系统linux和dos linux下通过iptables只允许指定ip地址访问指定端...

    一篇 : linux下通过iptables只允许指定ip地址访问指定端口的设置方法 首先,清除所有预设置 iptables -F#清除预设表filter中的所有规则链的规则 iptables -X#清 ...

  3. linux上mysql允许远程连接,linux下mysql允许远程连接

    1. MySql安装教程 https://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html 默认情况下mysq的 roo ...

  4. linux如何修改ip文件夹,求助!Linux下C++程序如何修改系统IP?

    求助!Linux下C++程序如何修改系统IP? 发布时间:2014-11-19 19:00:55来源:红联作者:firespout 项目是用C++做的,需要修改系统IP,本以为这种很通用的功能已经有成 ...

  5. Linux下配置Apache虚拟主机(基于IP地址)

    Linux下配置Apache虚拟主机(基于IP地址) 一.虚拟主机 虚拟主机,又称虚拟服务器,是一种在单一主机或主机群上,实现多网域服务的方法,可以运行多个网站或服务的技术.虚拟主机之间完全独立,并可 ...

  6. Linux下PHP使用 PHP_ODBC 连接微软SQLSERVER数据库

    写本文时的环境是 ubuntu 16.04 LTS php 7.0.27 unixODBC 2.3.5 FreeTDS 1.00.82 2018-03-02日 PHP使用sqlSrv连接微软的SQLS ...

  7. tftpd32服务器软件在Windows与linux 下的文件传输(服务器ip 的设置问题)

    tftpd32服务器软件在Windows与linux 下的文件传输 https://blog.csdn.net/stoic163/article/details/42804421 2015年01月17 ...

  8. Linux下pppoe开机自动连接,Linux 系统 PPPoE 宽带连接设置方法

    Linux 系统 PPPoE 宽带连接设置方法 要在Linux下使用PPPOE认证方式,必须安装PPPOE客户端软件.下面说明如何进行安装: 本文以RedHat Linux 6.2为实验平台,其它平台 ...

  9. linux下配置多网卡或多IP的方法

    第一种方法: ifconfig eth0:1 192.168.5.129 netmask 255.255.255.0 然后,你用ifconfig,就会发现多了一个ip,但这个ip是暂时的,重启以后就不 ...

最新文章

  1. OpenCV 中的三大数据类型( 概述 )
  2. C#访问远程主机资源的方法
  3. Serverless 实战 —— Funcraft OSS ROS 进行 CI/CD
  4. 长春市计算机学校老照片,松江这所学校一百年啦!一组老照片回忆曾经的旧时光…...
  5. 微信小程序-京东购物系列一
  6. xampp安装后apache(端口占用)/mysql无法打开(Attempting to start MySQL service...)/Mysql无法修改端口
  7. oracle select 行数据_【赵强老师】什么是Oracle的数据字典?
  8. ASP.NET 开源导入导出库Magicodes.IE Docker中使用
  9. VS 2010 OpenGL 配置与实例开发
  10. emctl start dbconsole OC4J_dbconsole*** not found
  11. 分享实录+PPT | 高通高级技术标准总监李俨:移动车联网技术解析
  12. 3.凤凰架构:构建可靠的大型分布式系统 --- 事务处理
  13. 3. HTML DOM Attribute 对象
  14. foobar2000 正式登陆 iOS/Android
  15. Mac安装jdk并配置环境变量
  16. 中标麒麟V7系列OS强制破解密码
  17. 英语词典软件测试大乐,软件测试和评估(百词斩和扇贝单词)
  18. 签证上的mult是什么意思_美国签证页上面英文表示的是什么意思?
  19. Markdowm编辑器推荐和Emoji 表情
  20. JPA 学习(四) JPA_EntityManager系列

热门文章

  1. Fiddler工具 — Fiddler检查器(Inspectors)详解
  2. gflags使用示例
  3. MC20 OpenCPU开发记录
  4. 极米H5亮度如何?极米H5智能投影评测
  5. 浅谈汽车软件的质量保证
  6. IDEA 提交项目至Git与获取Git项目
  7. ORACLE通过两个日期计算出刚出生小孩年龄,几月几天表示
  8. 硅胶相电线电缆的相关耐热性能简介
  9. 广发聚丰股票型证券投资基金
  10. 35岁之后,不太建议你再进大公司