菜鸟科技网

Linux查看网络流量有哪些常用命令?

在Linux系统中,监控网络流量是系统管理和网络故障排查的重要环节,通过合适的命令,可以实时查看网络接口的流量统计、连接状态以及数据传输情况,以下是常用的Linux查看网络流量命令及其详细使用方法。

Linux查看网络流量有哪些常用命令?-图1
(图片来源网络,侵删)

ifconfigip命令是基础的网络接口管理工具,虽然主要用于配置网络接口,但也能显示基本的流量统计信息,使用ifconfig eth0可以查看eth0接口的接收(RX)和发送(TX)字节数、数据包数量等,这些信息不会实时更新,且功能相对有限,相比之下,ip -s link show eth0能提供更详细的接口统计,包括错误数、丢包数等,适合快速检查接口健康状况。

更专业的流量监控工具包括iftopnethogsvnstatiftop以实时列表形式显示网络连接的带宽使用情况,按流量大小排序,并支持按主机、端口等维度过滤,安装后直接运行iftop -i eth0即可监控指定接口,其界面清晰显示源IP、目标IP以及实时流量。nethogs则按进程统计网络使用情况,适合定位占用带宽的具体程序,运行nethogs -i eth0后,可看到每个进程的实时上传和下载速度。vnstat是一个轻量级的网络流量监控工具,通过后台服务记录历史流量数据,支持按天、周、月查看统计报告,例如vnstat -m显示月流量统计。

对于需要深度分析的场景,tcpdumpwireshark是强大的协议分析工具。tcpdump通过命令行捕获网络数据包,如tcpdump -i eth0 -w capture.pcap将数据包保存到文件,后续可通过wireshark图形化工具分析。tcpdump -i eth0 host 192.168.1.1则可过滤与特定主机相关的流量。sar命令作为系统活动报告工具,通过安装sysstat包后,使用sar -n DEV 1 5每秒统计一次网络接口流量,共输出5次,适合长期监控。

以下是部分命令的参数对比表格:

Linux查看网络流量有哪些常用命令?-图2
(图片来源网络,侵删)
命令 常用参数示例 主要功能 适用场景
iftop iftop -i eth0 实时显示连接带宽使用情况 快速查看实时流量分布
nethogs nethogs -i eth0 按进程统计网络使用情况 定位高带宽占用进程
vnstat vnstat -m 查看历史流量统计(月/周/日) 流量趋势分析
tcpdump tcpdump -i eth0 host 192.168.1.1 捕获并过滤网络数据包 协议分析和故障排查
sar sar -n DEV 1 5 定期统计网络接口流量 长期监控和性能分析

在实际使用中,可根据需求选择合适的工具,临时查看实时流量可用iftop,分析历史趋势可用vnstat,而调试网络问题则需tcpdumpwireshark,需要注意的是,部分命令需要安装额外工具包,如iftop需通过apt install iftopyum install iftop安装。

相关问答FAQs:

  1. iftop和nethogs的主要区别是什么?
    iftop按网络连接(IP对)统计带宽使用,侧重显示主机间的实时流量分布;nethogs则按进程统计网络使用,能直接定位到具体消耗带宽的程序,适合排查异常进程导致的流量问题。

  2. 如何使用vnstat设置流量告警?
    vnstat本身不直接支持告警功能,但可通过结合脚本实现,编写一个Shell脚本,用vnstat --oneline获取当前流量,当超过阈值时发送邮件或通知,需配合cron定期执行脚本,实现自动化监控。

    Linux查看网络流量有哪些常用命令?-图3
    (图片来源网络,侵删)
分享:
扫描分享到社交APP
上一篇
下一篇