Linux网络监控工具 - iftop

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: Linux网络监控工具 - iftop

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

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

sudo apt-get install iftop
1
启动
在终端中输入 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]
1
选项
-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 的工作原理可以概括为以下几个步骤:

打开指定的网络接口:iftop 首先会打开用户指定的网络接口,如 eth0、wlan0 等。
抓取数据包:iftop 使用 libpcap 库来抓取从指定网络接口上收到的数据包。libpcap 是一个网络数据包捕获库,它可以在不同的操作系统上进行网络数据包捕获。
解析数据包:iftop 对抓取到的数据包进行解析,提取出数据包中的源地址、目标地址、源端口、目标端口、协议等信息。
统计流量信息:iftop 根据解析到的数据包信息,统计并计算出每个网络连接的发送速率和接收速率,以及总的发送流量和接收流量。
实时显示信息:iftop 将统计的流量信息以实时更新的方式显示在终端界面上,以便用户实时监控网络流量
————————————————
版权声明:本文为CSDN博主「爱尚你1993」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/i_love_t/article/details/133691867

目录
相关文章
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
161 8
|
2月前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
92 2
|
6天前
|
数据采集 人工智能 自然语言处理
FireCrawl:开源 AI 网络爬虫工具,自动爬取网站及子页面内容,预处理为结构化数据
FireCrawl 是一款开源的 AI 网络爬虫工具,专为处理动态网页内容、自动爬取网站及子页面而设计,支持多种数据提取和输出格式。
55 18
FireCrawl:开源 AI 网络爬虫工具,自动爬取网站及子页面内容,预处理为结构化数据
|
14天前
|
存储 安全 物联网
浅析Kismet:无线网络监测与分析工具
Kismet是一款开源的无线网络监测和入侵检测系统(IDS),支持Wi-Fi、Bluetooth、ZigBee等协议,具备被动监听、实时数据分析、地理定位等功能。广泛应用于安全审计、网络优化和频谱管理。本文介绍其安装配置、基本操作及高级应用技巧,帮助用户掌握这一强大的无线网络安全工具。
43 9
浅析Kismet:无线网络监测与分析工具
|
3天前
|
安全 网络协议 Linux
结合 `nc` 工具利用笑脸漏洞(Smile Bug)攻击 Metasploitable2 Linux
本文介绍如何使用 `nc`(Netcat)工具结合笑脸漏洞(Smiley Bug)攻击 Metasploitable2 Linux 靶机。首先概述了 `nc` 的基本功能和高级用法,包括建立连接、监听端口、文件传输等操作。接着详细描述了笑脸漏洞的原理及其在网络攻防中的应用,展示了通过 `nc` 发送恶意输入检测漏洞的方法。最后结合 Python 脚本实现更复杂的攻击场景,并强调了合法性和环境隔离的重要性。
29 13
|
7天前
|
Ubuntu Linux 开发者
Ubuntu20.04搭建嵌入式linux网络加载内核、设备树和根文件系统
使用上述U-Boot命令配置并启动嵌入式设备。如果配置正确,设备将通过TFTP加载内核和设备树,并通过NFS挂载根文件系统。
43 15
|
1天前
|
网络协议 安全 测试技术
Nping工具详解:网络工程师的瑞士军刀
### Nping工具详解:网络工程师的瑞士军刀 Nping是Nmap项目的一部分,支持TCP、UDP、ICMP和ARP等多种协议,用于生成和分析网络数据包。它提供灵活的命令行界面,适用于网络探测、安全测试和故障排除。本文介绍Nping的基础与高级用法,包括发送不同类型的网络请求、自定义TCP标志位、路由跟踪等,并通过实战案例展示其应用。掌握Nping有助于更好地理解和管理网络环境。 (239字符)
26 8
|
10天前
|
运维 监控 Linux
推荐几个不错的 Linux 服务器管理工具
推荐几个不错的 Linux 服务器管理工具
|
12天前
|
Ubuntu Unix Linux
Linux网络文件系统NFS:配置与管理指南
NFS 是 Linux 系统中常用的网络文件系统协议,通过配置和管理 NFS,可以实现跨网络的文件共享。本文详细介绍了 NFS 的安装、配置、管理和常见问题的解决方法,希望对您的工作有所帮助。通过正确配置和优化 NFS,可以显著提高文件共享的效率和安全性。
94 7
|
2月前
|
安全 Windows
【Azure Cloud Service】在Windows系统中抓取网络包 ( 不需要另外安全抓包工具)
通常,在生产环境中,为了保证系统环境的安全和纯粹,是不建议安装其它软件或排查工具(如果可以安装,也是需要走审批流程)。 本文将介绍一种,不用安装Wireshark / tcpdump 等工具,使用Windows系统自带的 netsh trace 命令来获取网络包的步骤
76 32