Linux 网络流量监控利器 iftop命令详解及实战

news2024/11/24 3:36:50
  1. 简介

    iftop 是什么

    在 Linux 系统下即时监控服务器的网络带宽使用情况,有很多工具,比如 iptraf、nethogs 等等,但是推荐使用小巧但功能很强大的 iftop 工具。

    iftop 是 Linux 系统一个免费的网卡实时流量监控工具,类似于 top 命令。iftop 可以监控指定网卡的实时流量、端口连接信息、反向解析 IP 等,还可以精确显示本机网络流量及网络内各主机和本机相互通信的流量集合,非常适合于监控代理服务器或路由器的网络流量。

    同时,iftop 对检测流量异常的主机非常有效,通过 iftop 的输出可以迅速定位主机流量异常的根源,这对于网络故障排查、网络安全检测是十分有用的。缺点就是无报表功能,且必须以 root 身份才能运行。

  2. 安装

    这里使用Centos完成下面的实验

     [root@pro-176 ~]# yum -y install iftop
    
  3. 常用参数

  • -i 指定需要检测的网卡, 如果有多个网络接口,则需要注意网络接口的选择,如:# iftop -i eth0,默认是选择第一块网卡
  • -B 将输出以 byte 为单位显示网卡流量,默认是 bit
  • -n 将输出的主机信息都通过 IP 显示,不进行 DNS 解析
  • -N 只显示连接端口号,不显示端口对应的服务名称
  • -F 显示特定网段的网卡进出流量 如: iftop -F 192.168.85.0/24
  • -h 帮助,显示参数信息
  • -p 以混杂模式运行 iftop,此时 iftop 可以用作网络嗅探器
  • -P 显示主机以及端口信息
  • -m 设置输出界面中最上面的流量刻度最大值,流量刻度分 5 个大段显示 如:# iftop -m 100M
  • -f 使用筛选码选择数据包来计数 如 iftop -f filter code
  • -b 不显示流量图形条
  • -c 指定可选的配置文件,如:iftop -c config file
  • -t 使用不带 ncurses 的文本界面,
    以下两个是只和 -t 一起用的:
    -s num num 秒后打印一次文本输出然后退出,-t -s 60 组合使用,表示取 60 秒网络流量输出到终端
    -L num 打印的行数
  • -f 参数支持 tcpdump 的语法,可以使用各种过滤条件。
  1. 界面操作
    4.1. 界面信息
    安装完 iftop 工具后,直接输入 iftop 命令即可显示网卡实时流量信息。在默认情况下,iftop 显示系统第一块网卡的流量信息,如果要显示指定网卡信息,可通过“-i”参数实现。执行“iftop -P -i eth0”命令,得到如下图所示的 iftop 的一个典型输出界面。

     iftop -P -i eth0
    
  • -i 指定网卡

  • -P 显示主机以及端口信息
    在这里插入图片描述

  • 第一部分
    iftop 输出中最上面的一行,此行信息是流量刻度,用于显示网卡带宽流量。
    在这里插入图片描述

  • 第二部分
    此部分为分割线中间的部分,其中又分别分为左、中、右三列。左列和中列,记录了哪些 IP 或主机正在和本机的网络进行连接。其中,中列的“=>”代表发送数据,“<=”代表接收数据,通过这个指示箭头可以很清晰地知道两个 IP 之间的通信情况。最右列又分为三小列,这些实时参数分别表示外部 IP 连接到本机 2 秒内、10 秒内和 40 秒内的平均流量值。
    另外,这个部分还有一个流量图形条,流量图形条是对流量大小的动态展示,以第一部分中的流量刻度为基准。通过这个流量图形条可以很方便地看出哪个 IP 的流量最大,进而迅速定位网络中可能出现的流量问题。
    在这里插入图片描述

    => 向客户端发送数据
    <= 接收客户端的数据

    连续点击t可以切换模式

  • 第三部分
    位于 iftop 输出的最下面,可以分为三行,其中,“TX”表示发送数据,“RX”表示接收数据,“TOTAL”表示发送和接收全部流量。与这三行对应的有三列,其中“cum”列表示从运行 iftop 到目前的发送、接收和总数据流量。“peak”列表示发送、接收以及总的流量峰值。“rates”列表示过去 2s、10s、40s 的平均流量值。
    在这里插入图片描述

    TX: 发送给客户端的数据
    RX: 接收来自客户端的数据
    TOTAL: 表示发送和接收全部流量

    cum: 表示从运行 iftop 到目前的发送、接收和总数据流量
    peak: 表示发送、接收、以及总的流量峰值。
    rates: 表示过去 2s、10s、40s 的平均流量值。

4.2. 交互操作
在 iftop 的实时监控界面中,还可以对输出结果进行交互式操作,用于对输出信息进行整理和过滤,在上图所示界面中,按键 “h” 即可查看,选择参数后按h返回,如下图所示。iftop 的交互功能和 Linux 下的 top 命令非常类似,交互参数主要分为 4 个部分,分别是一般参数主机显示参数端口显示参数输出排序参数。相关参数的含义如下表所示。

在这里插入图片描述

参数含义
P通过此键可切换暂停/继续显示
h通过此键可在交互参数界面/状态输出界面之间来回切换
b通过此键可切换是否显示平均流量图形条
B通过此键可切换显示2秒、10秒、40秒内的平均流量
T通过此键可切换是否显示每个连接的总流量
j/k按j键或k键可以向上或向下滚动屏幕显示当前的连接信息
l通过此键可打开iftop输出过滤功能,比如输入要显示的IP,按回车后,屏幕就只显示与这个IP相关的流量信息
L通过此键可切换显示流量刻度范围,刻度不同,流量图形条会跟着变化
q通过此键可退出iftop流量监控界面
n通过此键可使iftop输出结果以IP或主机名的方式显示
s通过此键可切换是否显示源主机信息
d通过此键可切换是否显示远端目标主机信息
t通过此键可切换iftop显示格式,连续按此键可依次显示:以两行显示发送接收流量、以一行显示发送接收流量、只显示发送流量/接收流量
N通过此键可切换显示端口号/端口号对应服务名称
S通过此键可切换是否显示本地源主机的端口信息
D通过此键可切换是否显示远端目标主机的端口信息
p通过此键可切换是否显示端口信息
1/2/3根据最近 2 秒、10 秒、40 秒的平均网络流量排序
<通过此键可根据左边的本地主机名或IP地址进行排序
>通过此键可根据远端目标主机的主机名或IP地址进行排序
o通过此键可切换是否固定显示当前的连接
  1. 使用示例
    5.1. 显示网卡eth0的信息,主机通过ip显示

     [root@pro-176 ~]# iftop -i eth0 -n
    
  • -i 指定网卡
  • -n 将输出的主机信息都通过 IP 显示,不进行 DNS 解析

在这里插入图片描述
5.2. 显示端口号(添加-P参数,进入界面可通过p参数)

[root@pro-176 ~]# iftop -i eth0 -n -P
  • -i 指定网卡

  • -n 将输出的主机都通过IP显示,不进行DNS解析

  • -P 显示主机以及端口号信息
    在这里插入图片描述
    5.3. 显示将输出以byte为单位显示网卡流量,默认是bit

      [root@pro-176 ~]# iftop -i eth0 -n -B
    
  • -i 指定网卡

  • -n 将输出的主机都通过IP显示,不进行DNS解析

  • -B 将输出以byte为单位显示
    在这里插入图片描述
    5.4. 显示流量进度条

    iftop -i eth0 -n
    

    在交互界面按L显示流量进度条

  • -i 指定网卡名称

  • -n 将输出的主机都通过IP显示,不进行DNS解析
    在这里插入图片描述

    5.5. 显示每个连接的总流量

      iftop -i eth0 -n
    

    在交互界面按T显示每个连接的总流量

  • -i 指定网卡名称

  • -n 将输出的主机都通过IP显示,不进行DNS解析
    在这里插入图片描述
    5.6. 显示指定IP 192.168.0.71的流量

      iftop -i eth0 -n 
    

    在交互界面按l筛选你要查看的ip地址,回车确定

  • -i 指定网卡名称

  • -n 将输出的主机都通过IP显示,不进行DNS解析
    在这里插入图片描述
    在这里插入图片描述

  1. 实战
    下面我们将通过找出最耗费流量的 IP 和端口号这一具体实例,来演示 iftop 强大的功能。
    6.1. 进入界面

     iftop -i  eth0 -nNB -m 10M
    
  • -i 指定网卡名称
  • -n 将输出的主机都通过IP显示,不进行DNS解析
  • -N 只显示连接端口号,不显示端口对应的服务名称(不加会显示如ssh这样的服务名称,不便于排查)
  • B 指定显示单位为Kb,默认是bit,不利于计算
  • -m 设置输出界面中最上面的流量刻度最大值,流量刻度分5个大段显示

在这里插入图片描述
6.2. 按L显示流量刻度
可以找出流量峰值最高的ip
在这里插入图片描述
6.3. 按T显示总量
可以查看接收和发送的流量总和
在这里插入图片描述
6.4. 按下3,根据最新40s统计排序
用平均值来统计最权威点

交互界面下

  • 1/2/3 根据最近 2 秒、10 秒、40 秒的平均网络流量排序
    在这里插入图片描述
    6.5. 按下t,发送和接收合成一行
    在这里插入图片描述
    6.6. 多按几次B,查看最近2s,10s,40s的统计

    交互界面下

  • B 通过此键可切换显示2秒、10秒、40秒内的平均流量
    在这里插入图片描述
    通过这里就能查看出 192.168.0.71是最耗费流量的ip

6.7. 赛选指定IP 192.168.0.71
按下l筛选192.168.0.71,回车确认

交互界面下

  • l 筛选指定内容

在这里插入图片描述
到这里就能查看到192.168.0.71这个ip的流量监控了

6.8. 找出这个IP下,哪个端口流量用的最多
按下p回车确认

交互界面下

  • p 通过此键可切换是否显示端口信息
  • B 通过此键可切换显示2秒、10秒、40秒内的平均流量
    在这里插入图片描述
    到此使用iftop监控流量使用情况就已经学会了

参考链接: http://t.cn/A6tM3oLg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1161895.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智能防雷浪涌保护器的行业应用

智能浪涌保护器是一种能够自动监测和控制电涌保护器&#xff08;SPD&#xff09;的工作状态&#xff0c;实现SPD的自我保护和远程管理的设备。智能防雷是一种将云计算、移动互联网和物联网技术引入到综合防雷措施中&#xff0c;实现雷电预警、智能化防雷、智能化监测的系统。这…

群晖 | Synology Directory Server 批量导入用户 文件模板格式

目录 错误写法 正确写法 错误写法 在网上找到过类似的教程&#xff0c;但是一律都以失败告终&#xff1a; 正确写法 其实并不是只要写上前面的属性即可&#xff0c; 就算后面不写也需要使用 tab 补齐 &#xff0c;所有的属性&#xff1a; 1.名称 2.密码 3.描述 4…

开源问答平台网站源码系统商业运营版源码系统 带完整的搭建教程

在我们现在的日常生活中&#xff0c;人们对于获取信息的需求越来越大&#xff0c;而问答平台作为一种快速、有效的信息获取方式&#xff0c;受到了广泛的关注和使用。同时&#xff0c;随着开源技术的普及和成熟&#xff0c;越来越多的开发者选择使用开源技术进行网站的开发和维…

几种常见的接地类型详解

接地作为一种应用最为广泛的电气安全措施&#xff0c;是指电力系统和电气装置的中性点、电气设备的外露导电部分和装置外导电部分经由导体与大地相连。接地的作用主要是防止人身遭受电击、设备和线路遭受损坏、预防火灾和防止雷击、防止静电损害和保障电力系统正常运行。按其功…

关于 iOS 报Multiple commands produceMultiple 错误的解决方案

今天在运行一个RN老项目的时候&#xff0c;报了一个下面的错误。 对应的信息如下&#xff1a; Multiple commands produce /Users/xzh/RN/work/cgv_app/ios/build/Debug-iphonesimulator/cgv_app.app/Entypo.ttf Multiple commands produce /Users/xzh/RN/work/cgv_app/ios/bu…

EASYX实现多物体运动

eg1:单个物体运动使用easyx实现单个小球的运动 #include <stdio.h> #include <easyx.h> #include <iostream> #include <math.h> #include <stdlib.h> #include <conio.h> #include <time.h> #define PI 3.14 #define NODE_WIDTH 4…

应用在阀门控制中的直流有刷驱动芯片

控制阀又称阀门&#xff0c;是流体运送系统中的控制部件&#xff0c;具有导流、截流、调节、节流、防止倒流、分流或溢流卸压等功能。阀门是一种用于控制流体&#xff08;液体、气体、粉体等&#xff09;流动的装置&#xff0c;广泛应用于工业生产、建筑、农业、能源等领域。 …

提高效率!5个顶级网页开发工具助你事半功倍!

1.WordPress–一站式网站建设工具 价格&#xff1a;基本版终身免费&#xff0c;个人版HK$30&#xff0c;高级版HK$63&#xff0c;商务版HK$1993 推荐指数&#xff1a;★★★★ WordPress是一个使用PHP语言开发的博客平台。它可以在PHP和MySQL数据库的服务器上设置自己的网站&…

从项目开始学习Vue——01

目录标题 一、官方文档二、搭建环境三、停止服务四、使用 webstorm 一键创建项目创建过程可能出现错误 五、启动和访问项目&#xff08;一&#xff09;启动&#xff08;二&#xff09;访问项目六、项目目录讲解 一、官方文档 https://cn.vuejs.org/ 二、搭建环境 参考&#…

新版开源UI千月影视APP源码/后端基于ThinkPHP框架/前后端完美匹配

源码简介&#xff1a; 开源UI千月影视APP源码&#xff0c;它是基于ThinkPHP框架&#xff0c;而且前后端完美匹配。这是一个广泛使用的PHP开发框架&#xff0c;具有稳定性和安全性方面的优势。 2023版本UI千月影视APP是一款提供电影、电视剧、综艺节目等视频内容的应用程序&am…

如何使用ps制作ico图标文件

如何使用ps制作ico图标文件 Chapter1 如何使用ps制作ico图标文件Chapter2 ICOFormat.8bi&#xff08;Photoshop Ico、Cur插件&#xff09;的下载使用1. ICOFormat.8bi的作用2. ICOFormat.8bi使用 Chapter3 ps手机计算机图标教程,手绘设计精美手机APP软件图标的PS教程步骤 01 制…

ArcGIS Pro怎么生成高程点

一般情况下&#xff0c;我们从公开渠道获取到的高程数据都是DEM数据&#xff0c;但是如果要用到CAD等软件内则需要用到高程点&#xff0c;那么如何从DEM提取高程点呢&#xff0c;这里为大家介绍一下生成方法&#xff0c;希望能对你有所帮助。 数据来源 本教程所使用的数据是…

Java中的继承和多态

目录 1. 继承 1.1 为什么需要继承 1.2 继承概念 1.3 继承的语法 1.4 父类成员访问 1.4.1 子类中访问父类的成员变量 1.4.2 子类中访问父类的成员方法 1.5 super关键字 1.6 子类构造方法 1.7 super和this 1.8 再谈初始化 1.9 protected 关键字 1.10 继承方式…

【ElasticSearch系列-03】ElasticSearch的高级句法查询Query DSL

ElasticSearch系列整体栏目 内容链接地址【一】ElasticSearch下载和安装https://zhenghuisheng.blog.csdn.net/article/details/129260827【二】ElasticSearch概念和基本操作https://blog.csdn.net/zhenghuishengq/article/details/134121631【二】ElasticSearch的高级查询Quer…

酷开系统丨酷开会员,让你畅享无限的娱乐乐趣

你是否厌倦一成不变的平凡生活&#xff0c;渴望寻找一些刺激和乐趣&#xff1f;那么&#xff0c;让我们一起走进酷开会员的世界&#xff0c;那里充满了无限的可能性和无尽的乐趣&#xff01;酷开系统为会员群体精心打造的娱乐平台&#xff0c;汇聚了众多热门影视、音乐、游戏直…

【功能更新】JVS源码级低代码:列表页组件、标签栏、多流程等等

在数字化时代&#xff0c;低代码平台已经成为企业快速搭建应用、提升开发效率的首选工具。为了满足广大用户不断增长的需求&#xff0c;我们持续努力&#xff0c;对JVS低代码平台进行了一系列重要的更新和优化。本次更新如下&#xff1a; 新增&#xff1a; 1、表单中新增列表…

lua-web-utils库

lua--导入所需的库local web_utilsrequire("lua-web-utils")--定义要下载的URLlocal url"https://jshk.com.cn/"--定义代理服务器的主机名和端口号local proxy_port8000--使用web_utils的download函数下载URLlocal file_pathweb_utils.download(url,proxy_…

【通关选择】upload-labs通关攻略(全)

前提条件&#xff1a; 1.文件能够成功上传到服务器 2.攻击者能够知道文件的上传路径 upload-labs靶场 Pass-01&#xff08; 前端验证&#xff09; 三种方法解决思路 1.禁用客户端JavaScript弹窗 2.通过burp抓包&#xff0c;修改后缀名 3.f12删除return filecheck&#xff0…

uniapp原生插件之安卓原生插件集

插件介绍 安卓原生插件集&#xff0c;集成了常用的插件&#xff0c;包括设备&#xff0c;语音、文件、屏幕、usb、TCP等等 插件地址 安卓原生插件集 - DCloud 插件市场 超级福利 uniapp 插件购买超级福利 详细使用文档 使用文档 插件集成内容 腾讯Bugly插件汉字转…

【C/C++】仿函数

函数调用运算符 () 也可以重载由于重载后使用的方式非常像函数的调用&#xff0c;因此称为仿函数仿函数没有固定写法&#xff0c;非常灵活 示例&#xff1a; #include <iostream> #include <string> using namespace std;class MyPrint { public://重载的运算符是…