linux如何查看网络流量

Linux中,可使用iftopiptraf等命令行工具查看

使用 ifconfig 命令

ifconfig 是一个传统的网络配置命令,虽然已被 ip 命令取代,但仍广泛使用,它可以显示网络接口的基本信息,包括流量统计。

命令:

ifconfig

输出示例:

eth0      Link encap:Ethernet  HWaddr 00:0c:29:68:34:86  
          inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe68:3486/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:123456 bytes:12345678 (12.3 MB)
          TX packets:654321 bytes:67890123 (67.8 MB)

说明:

  • RX packetsRX bytes 表示接收的数据包数量和字节数。
  • TX packetsTX bytes 表示发送的数据包数量和字节数。

使用 ip 命令

ip 命令是 ifconfig 的现代替代品,功能更强大且支持更多选项。

命令:

ip -s link show

输出示例:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:0c:29:68:34:86 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe68:3486/64 scope link 
       valid_lft forever preferred_lft forever
    RX: bytes  packets  errors  dropped  overrun  mcast
         12345678  123456    0       0        0      0
    TX: bytes  packets  errors  dropped  carrier  collsns
         67890123  654321    0       0        0      0

说明:

  • RXTX 部分分别显示接收和发送的字节数、数据包数量以及错误信息。

使用 netstat 命令

netstat 是一个强大的网络统计工具,可以显示网络连接、路由表、接口统计等信息。

命令:

netstat -i

输出示例:

Kernel Interface table
Iface      MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0      1500   0  123456      0      0      0  654321      0      0      0 BMRU

说明:

  • RX-OKTX-OK 分别表示成功接收和发送的数据包数量。
  • RX-ERRTX-ERR 表示接收和发送的错误包数量。

使用 nload 工具

nload 是一个实时网络流量监控工具,可以以图形化方式显示网络流量。

安装:

sudo apt-get install nload

命令:

nload eth0

说明:

  • nload 会实时显示指定接口(如 eth0)的上传和下载速度。
  • 支持多种选项,如设置刷新间隔、显示单位等。

使用 iftop 工具

iftop 是一个实时网络流量监控工具,类似于 nload,但功能更强大,可以显示具体的连接信息。

安装:

sudo apt-get install iftop

命令:

sudo iftop

说明:

  • iftop 会实时显示网络接口的流量,并列出具体的连接信息,如源IP、目标IP、传输速率等。
  • 支持排序、过滤等功能,方便分析。

使用 vnstat 工具

vnstat 是一个网络流量监控工具,可以记录和统计网络流量的历史数据。

安装:

sudo apt-get install vnstat

命令:

vnstat -l

说明:

  • vnstat -l 会实时显示网络流量。
  • vnstat -m 可以查看月度统计,vnstat -d 可以查看每日统计。

使用 bmon 工具

bmon 是一个基于 nload 的网络流量监控工具,支持多接口监控和历史数据统计。

安装:

sudo apt-get install bmon

命令:

bmon

说明:

  • bmon 提供直观的图形界面,支持多接口监控。
  • 可以查看实时流量、历史数据以及流量峰值。

使用 sar 命令

sarsysstat 包中的一个工具,可以用于系统性能监控,包括网络流量。

安装:

sudo apt-get install sysstat

命令:

sar -n DEV 1 1

输出示例:

Linux 5.4.0-42-generic (hostname)   10/31/2023  _x86_64_    (4 CPU)
12:00:01 AM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
12:00:01 AM      eth0      10.55      15.45       84.4       123.6        0.0       0.0        0.0      12.3%

说明:

  • sar 可以显示每秒的网络流量统计,包括数据包数量、字节数等。
  • 支持定时采样和历史数据查看。

使用 iptables 结合 awk 脚本

通过 iptables 的日志功能,可以记录详细的网络流量信息,并结合 awk 脚本进行分析。

步骤:

  1. 启用 iptables 日志:
    sudo iptables -A INPUT -j LOG --log-prefix "INPUT packets: " --log-level 4
    sudo iptables -A FORWARD -j LOG --log-prefix "FORWARD packets: " --log-level 4
    sudo iptables -A OUTPUT -j LOG --log-prefix "OUTPUT packets: " --log-level 4
  2. 查看日志文件(通常在 /var/log/messages/var/log/syslog):
    tail -f /var/log/syslog | grep "INPUT packets" | awk '{print $1, $2, $3, $4, $5, $6}'

说明:

  • iptables 日志可以记录每个数据包的详细信息,包括时间、协议、源IP、目标IP等。
  • 结合 awk 脚本可以提取和分析特定字段。

使用 collectl 工具

collectl 是一个系统性能监控工具,支持实时监控网络流量、CPU、内存等资源。

安装:

sudo apt-get install collectl

命令:

collectl -s X -i eth0

X 是采样间隔(秒)。

说明:

  • collectl 可以实时显示网络接口的流量,并支持保存历史数据。
  • 支持多种资源监控,适合全面系统性能分析。

相关问答FAQs

问题1:如何查看某个特定网络接口的流量?

解答:
可以使用 ifconfigipnload 等工具指定接口。

  • ifconfig eth0:查看 eth0 接口的流量统计。
  • nload eth0:实时监控 eth0 接口的流量。
  • ip -s link show eth0:查看 eth0 接口的详细流量统计。

问题2:如何查看网络流量的历史数据?

解答:
可以使用 vnstatcollectl 等工具记录和查看历史数据。

  • vnstat -m:查看月度网络流量统计。
  • vnstat -d:查看每日网络流量统计。
  • `collectl -s X -i eth0 –output file.

以上就是关于“linux如何查看网络流量”的问题,朋友们可以点击主页了解更多内容,希望可以够帮助大家!

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/11691.html

(0)
酷番叔酷番叔
上一篇 2小时前
下一篇 1小时前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信