Linux网络监控工具 - iftop

iftop 是一个基于 libpcap 库的网络流量监控工具。它通过监听指定网络接口上的数据包,并分析这些数据包的源地址、目标地址、源端口、目标端口、协议等信息,从而实时显示网络流量的相关统计信息。

安装

在大多数Linux发行版中,您可以使用包管理器来安装 iftop。例如,在Ubuntu/Debian上,可以使用以下命令安装:

sudo apt-get install iftop

启动

在终端中输入 iftop 命令即可启动 iftop。默认情况下,它会显示所有正在进行的网络连接的信息。
直接运行 iftop 后的样子

界面说明

标准视图,端口显示关闭,每对主机两行
在这里插入图片描述

主机名隐藏,显示源端口,每对主机一行=按服务划分的网络流量
在这里插入图片描述

  • 顶部:流量刻度尺,刻度分五个大段显示。数据行的流量条与之对应。
  • 数据行:显示实时的网络流量信息,每一行表示一个网络连接。
    • 本主机信息;
    • 目标主机信息; => 箭头表示流量方向,=>代表发送数据,<=代表接收数据;
    • 流量数据,这些实时参数分别表示主机间 2秒内10秒内40秒内的平均流量值;
  • 底部:显示当前的总发送和接收流量、平均发送和接收速率,以及当前的流量峰值。
    • TX 表示发送数据
    • RX 表示接收数据
    • TOTAL 表示发送和接收全部流量
    • cum 表示从运行iftop到目前的发送、接收和总数据流量
    • peak 表示发送、接收以及总的流量峰值
    • rates 表示过去2s、10s、40s的平均流量值

用法

语法
 iftop -h | [-npblNBP] [-i interface] [-f filter code]  [-F net/mask] [-G net6/mask6]
选项
  • -h
    display this message
    帮助信息
  • -n
    don’t do hostname lookups
    不要进行主机名查找,第一列默认显示的是hostname,加上该参数后就直接显示为IP
  • -N
    don’t convert port numbers to services
    只显示连接端口号,不显示端口对应的服务名称
  • -p
    run in promiscuous mode (show traffic between other hosts on the same network segment)
    以混杂模式运行(显示其他同一网段上的主机)
  • -b
    don’t display a bar graph of traffic
    不显示流量条形图
  • -B
    display bandwidth in bytes
    以字节为单位的显示带宽
  • -a
    display bandwidth in packets
    以数据包形式显示带宽
  • -i interface
    listen on named interface
    指定需要检测的网卡,默认为第一个活动网卡, 一般为 eth0
  • -f filter code
    use filter code to select packets to count (default: none, but only IP packets are counted)
    设置过滤规则,只显示符合规则的网络流量。
    过滤规则可以使用BPF(Berkley Packet Filter)语法,它允许您根据源IP地址、目标IP地址、端口号等条件进行过滤。
    例如,要只显示源IP地址为192.168.1.10的流量,可以使用以下过滤规则:iftop - -f “src host 192.168.1.10”
  • -F net/mask
    show traffic flows in/out of IPv4 network
    显示进出IPv4网络的流量
  • -G net6/mask6
    show traffic flows in/out of IPv6 network
    显示进出IPv6网络的流量
  • -l
    display and count link- -local IPv6 traffic (default: off)
    显示和计数链路本地IPv6流量(默认值:关闭)
  • -P
    show ports as well as hosts
    显示端口和主机
  • -m limit
    sets the upper limit for the bandwidth scale
    设置条形图带宽范围的上限,流量刻度分 5 个大段显示 如:# iftop - -m 100M
  • -c config file
    specifies an alternative configuration file
    指定可选的配置文件
  • -t
    use text interface without ncurses
    使用没有ncurses的文本界面
    排序选项
  • -o 2s
    Sort by first column (2s traffic average)
    按第一列(2秒流量平均值)排序
  • -o 10s
    Sort by second column (10s traffic average) [default]
    按第二列(10s 流量平均值)[默认值]排序
  • -o 40s
    Sort by third column (40s traffic average)
    按第三列(平均流量40秒)排序
  • -o source
    Sort by source address
    按源地址排序
  • -o destination
    Sort by destination address
    按目标地址排序

以下选项仅与- -t组合使用

  • -s num
    print one single text output afer num seconds, then quit
    在数秒内打印一个文本输出,然后退出;,-t -s 60 组合使用,表示取 60 秒网络流量输出
  • -L num
    number of lines to print
    要打印的行数
运行时命令
Host display
  • n - toggle DNS host resolution 切换DNS主机解析
  • s - toggle show source host 切换显示本主机Host
  • d - toggle show destination host 切换显示目标主机Host
  • t - cycle line display mode 切换显示模式,没对主机显示1/2行
Port display
  • N - toggle service resolution 切换显示端口号或端口服务名称
  • S - toggle show source port 切换是否显示本机的端口信息
  • D - toggle show destination port 切换是否显示远端目标主机的端口信息
  • p - toggle port display 切换是否显示端口信息
General
  • P - pause display 暂停/继续显示
  • h - toggle this help display 切换帮助信息和主页面
  • b - toggle bar graph display 切换是否显示平均流量图形条
  • B - cycle bar graph average 切换流量图形条为 2秒或10秒或40秒内的平均流量
  • T - toggle cumulative line totals 切换是否显示每个连接的总流量
  • j/k - scroll display 可以向上或向下滚动屏幕显示的连接记录
  • f - edit filter code 编辑过滤代码
  • l - set screen filter 打开屏幕过滤功能,输入要过滤的字符,比如ip,按回车后,屏幕就只显示这个IP相关的流量信息
  • L - lin/log scales 切换显示画面上边的刻度
  • ! - shell command 使用shell命令
  • q - quit 退出
Sorting
  • 1/2/3 - sort by 1st/2nd/3rd column 根据右侧显示的三列流量数据进行排序
  • < - sort by source name 根据本主机信息列排序
  • > - sort by dest name 根据远端目标主机列排序
  • o - freeze current order 切换是否固定只显示当前的连接

工作原理

iftop 的工作原理可以概括为以下几个步骤:

  1. 打开指定的网络接口:iftop 首先会打开用户指定的网络接口,如 eth0、wlan0 等。
  2. 抓取数据包:iftop 使用 libpcap 库来抓取从指定网络接口上收到的数据包。libpcap 是一个网络数据包捕获库,它可以在不同的操作系统上进行网络数据包捕获。
  3. 解析数据包:iftop 对抓取到的数据包进行解析,提取出数据包中的源地址、目标地址、源端口、目标端口、协议等信息。
  4. 统计流量信息:iftop 根据解析到的数据包信息,统计并计算出每个网络连接的发送速率和接收速率,以及总的发送流量和接收流量。
  5. 实时显示信息:iftop 将统计的流量信息以实时更新的方式显示在终端界面上,以便用户实时监控网络流量。

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

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

相关文章

计算机竞赛 行人重识别(person reid) - 机器视觉 深度学习 opencv python

文章目录 0 前言1 技术背景2 技术介绍3 重识别技术实现3.1 数据集3.2 Person REID3.2.1 算法原理3.2.2 算法流程图 4 实现效果5 部分代码6 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习行人重识别(person reid)系统 该项目…

配置文件生成器-秒杀SSM的xml整合

配置文件生成器-秒杀SSM的xml整合 思路&#xff1a; 通过简单的配置&#xff0c;直接生成对应配置文件。 maven坐标 <dependencies><!-- 配置文件生成 --><dependency><groupId>org.freemarker</groupId><artifactId>freemarker<…

maven 初学

1. maven 安装 配置安装 路径 maven 下载位置: D:\software\apache-maven-3.8.6 默认仓库位置: C:\Users\star-dream\.m2\repository 【已更改】 本地仓库设置为&#xff1a;D:\software\apache-maven-3.8.6\.m2\repository 镜像已更改为阿里云中央镜像仓库 <mirrors>…

Kubernetes概述架构与工作流程简述

文章目录 Kubernetes概述Kubernetes优势Kubernetes 集群组件控制平面组件Node 组件 Kubernetes工作流程下期预告 Kubernetes概述 Kubernetes 是一个可移植、可扩展的开源平台&#xff0c;用于管理容器化的工作负载和服务&#xff0c;可促进声明式配置和自动化。 Kubernetes 拥…

简易版Pycharm(2023)+Conda开发环境配置教程

困 扰 不知道为什么&#xff0c;自从Pycharm更新了新的版本以后&#xff0c;在Pycharm中为项目工程配置Python解释器环境时&#xff0c;总是不能像以前那么方便。 比如&#xff0c;当前Conda中有十个不同的开发环境&#xff0c;每个环境一个名称&#xff0c;比如&#xff0c;p…

VB.NET vs. VB6.0:现代化编程语言 VS 经典老旧语言

目录 ​.NET背景&#xff1a; 特点: VB6.0背景&#xff1a; 特点: 两者之间的不同: 总结: 升华: .NET背景&#xff1a; VB.NET一种简单&#xff0c;现代&#xff0c;面向对象计算机编程语言&#xff0c;有微软开发&#xff0c;VB.NET是一种基于.NET Framework的面向对象…

golang gin——中间件编程以及jwt认证和跨域配置中间件案例

中间件编程jwt认证 在不改变原有方法的基础上&#xff0c;添加自己的业务逻辑。相当于grpc中的拦截器一样&#xff0c;在不改变grpc请求的同时&#xff0c;插入自己的业务。 简单例子 func Sum(a, b int) int {return a b }func LoggerMiddleware(in func(a, b int) int) f…

【C++设计模式之观察者模式:行为型】分析及示例

简介 观察者模式&#xff08;Observer Pattern&#xff09;是一种行为型设计模式&#xff0c;它定义了一种一对多的依赖关系&#xff0c;使得当一个对象的状态发生变化时&#xff0c;所有依赖它的对象都能够自动收到通知并更新。 描述 观察者模式由两个核心件组成&#xff1…

来单提醒/客户催单 ----苍穹外卖day9

来单提醒 需求分析 代码开发 注意:前端请求的并不是8080端口;而是先请求Nginx,Nginx进行反向代理以后转发到8080端口 这段代码首先创建了一个orders类用于更新订单状态 并且在更新状态后使用websocket发送给后端提醒 将信息放在map后,使用json的string化方式传给一个接收对象,…

类 ChatGPT 模型存在的局限性

尽管类ChatGPT模型经过数月的迭代和完善&#xff0c;已经初步融入了部分领域以及人们的日常生活&#xff0c;但目前市面上的产品和相关技术仍然存在一些问题&#xff0c;以下列出一些局限性进行详细说明与成因分析&#xff1a; 1&#xff09;互联网上高质量、大规模、经过清洗…

【广州华锐互动】动物解剖学AR互动学习平台

增强现实&#xff08;AR&#xff09;是一种将虚拟信息叠加到现实世界中的技术。通过智能手机、平板电脑或AR眼镜等设备&#xff0c;AR技术可以创建出逼真的虚拟物体&#xff0c;这些物体可以与现实世界的环境相互交互。 AR技术在教育领域的应用非常广泛&#xff0c;包括历史、科…

postman测试文件上传接口教程

postman是一个很好的接口测试软件&#xff0c;有时候接口是Get请求方式的&#xff0c;肯定在浏览器都可以测了&#xff0c;不过对于比较规范的RestFul接口&#xff0c;限定了只能post请求的&#xff0c;那你只能通过工具来测了&#xff0c;浏览器只能支持get请求的接口&#xf…

CCF CSP认证 历年题目自练Day21

题目一 试题编号&#xff1a; 201909-1 试题名称&#xff1a; 小明种苹果 时间限制&#xff1a; 2.0s 内存限制&#xff1a; 512.0MB 题目分析&#xff08;个人理解&#xff09; 先看输入&#xff0c;第一行输入苹果的棵树n和每一次掉的苹果数m还是先如何存的问题&#xf…

ASP.NET Core 开发 Web API

2. Web Api 的创建与Http类型的介绍 2.1 ASP.Net Core Web API项目的创建 1.创建ASP.NET Core Web API项目 从“文件”菜单中选择“新建”“项目”。 在搜索框中输入“Web API”。 选择“ASP.NET Core Web API”模板&#xff0c;然后选择“下一步”。 在“配置新项目”对话框中…

[护网杯 2018]easy_tornado 解析

打开网页有三个链接&#xff0c;依次点开之后获得一个fllllllllllllag一个render和一个MD5加密格式 之后尝试去访问/fllllllllllllag 直接跳出报错界面。 但这个报错界面居然是可以改的 试着注入一下 看了师傅的wp发现好像没有&#xff0c;要从框架入手 框架就是标题的torna…

【框架风格】解释器模式

1、描述 解释器框架风格&#xff08;Interpreter Framework Style&#xff09;是一种软件架构风格&#xff0c;其核心思想是构建一个解释器&#xff08;Interpreter&#xff09;来解释并执行特定领域或问题领域的语言或规则。以下是解释器框架风格的一些特点&#xff1a; 1. 领…

【leetcode】 vscode leetcode [ERROR] invalid password? 问题解决

目录 问题解决 问题 使用vscode连接leetcode出现下列问题&#xff1a; vscode leetcode [ERROR] invalid password?出现invalid password?的问题&#xff0c;首先需要检查账号密码是否出错&#xff0c;leetcode的账号可以是手机或邮箱&#xff0c;然后密码去check一下&…

RabbitMQ 介绍与 SpringBootAMQP使用

一、MQ概述 异步通信的优点&#xff1a; 耦合度低吞吐量提升故障隔离流量削峰 异步通信的缺点&#xff1a; 依赖于Broker的可靠性、安全性、吞吐能力架构复杂&#xff0c;业务么有明显的流程线&#xff0c;不方便追踪管理 什么是的MQ MQ&#xff08;Message Queue&#xf…

elasticsearch基本语法

这里写自定义目录标题 elasticsearch简介基本语法索引创建索引修改索引删除索引 查询简单查询精确查询条件查询范围查询&#xff1a;聚合查询&#xff1a;排序和分页&#xff1a; 参考文献&#xff1a; elasticsearch简介 Elasticsearch 是一个开源的分布式搜索和分析引擎&…

ctfshow web入门 php特性 web136-web140

1.web136 还有一种写文件的命令时tee命令 payload&#xff1a; : ls /|tee 1 访问1下载查看文件1发现根目录下有flag cat /f149_15_h3r3|tee 2 访问下载查看文件22.web137 call_user_func <?php class myclass {static function say_hello(){echo "He…