当前位置:首页 > Linux > 正文

linux如何查看网络io

Linux中,查看网络IO可使用ifconfig、netstat、ip、nload等命令

Linux系统中,查看网络IO(输入/输出)是监控网络性能、诊断网络问题的重要手段,以下是几种常用的方法及其详细说明:

ifconfig命令

ifconfig命令用于显示和配置网络接口的信息,包括IP地址、MAC地址、发送和接收的数据包等,虽然它主要用于查看网络接口的配置信息,但也可以通过查看接口的RX(接收)和TX(发送)数据包的统计信息来间接了解网络IO情况。

示例命令

ifconfig eth0

示例输出

eth0 Link encap:Ethernet HWaddr 00:0C:29:FD:41:30
 inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:518103 errors:0 dropped:0 overruns:0 frame:0
 TX packets:401733 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:550233798 (524.6 MiB) TX bytes:94066354 (89.7 MiB)

说明

  • RX packets:接收的数据包数量。
  • TX packets:发送的数据包数量。
  • RX bytes:接收的字节数。
  • TX bytes:发送的字节数。

netstat命令

netstat命令用于显示网络连接、路由表、网络接口统计信息等,通过netstat -i可以查看网络接口的数据传输速率。

示例命令

netstat -i

示例输出

Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 518107 0 0 0 401736 0 0 0 BMRU
lo 65536 594 0 0 0 594 0 0 0 LRU

说明

  • RX-OK:接收成功的数据包数量。
  • TX-OK:发送成功的数据包数量。

ip命令

ip命令是ifconfig的替代工具,提供了更多的功能和选项,使用ip命令可以查看网络接口的信息,包括IP地址、子网掩码、广播地址等,同时也可以通过ip -s link查看网络接口的流量统计信息。

linux如何查看网络io  第1张

示例命令

ip -s link

示例输出

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:0c:29:fd:41:30 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped  overrun  mcast
         550233798  518107      0        0        0      0
    TX: bytes  packets  errors  dropped carrier  collsns
          94066354  401736      0        0        0      0

说明

  • RX: bytes:接收的字节数。
  • TX: bytes:发送的字节数。

nload命令

nload是一个基于ncurses库的命令行工具,用于显示网络接口的实时流量信息,它可以以图形化的方式查看网络接口的发送和接收速率。

安装命令(Debian/Ubuntu):

sudo apt-get install nload

示例命令

nload eth0

说明

  • nload会实时显示指定网络接口的上传和下载速率,以及总流量。

iftop命令

iftop是一个实时网络流量监控工具,可以实时显示当前网络接口的流量情况,它可以按照源IP地址、目标IP地址、端口号等进行过滤,还可以按照流量大小进行排序。

安装命令(Debian/Ubuntu):

sudo apt-get install iftop

示例命令

iftop -i eth0

说明

  • iftop会实时显示网络接口的流量情况,包括源IP、目标IP、端口、协议、传输速率等。

vnstat命令

vnstat是一个网络流量监控工具,可以记录和显示网络接口的流量统计信息,它支持按天、周、月、年等时间范围查看流量统计。

安装命令(Debian/Ubuntu):

sudo apt-get install vnstat

示例命令

vnstat -l -i eth0

说明

  • vnstat -l:实时显示网络接口的流量统计信息。
  • -i eth0:指定要监控的网络接口。

sar命令

sar命令用于收集、报告和保存系统活动信息,包括CPU使用情况、内存使用情况、I/O活动等,通过sar -n可以查看网络相关的统计信息。

示例命令

sar -n DEV 1 5

示例输出

Linux 5.4.0-40-generic (ubuntu)   08/26/2021     _x86_64_    (4 CPU)
12:00:00 AM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
12:00:01 AM      eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
12:00:02 AM      eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
12:00:03 AM      eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
12:00:04 AM      eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
12:00:05 AM      eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00

说明

  • rxpck/s:每秒接收的数据包数。
  • txpck/s:每秒发送的数据包数。
  • rxkB/s:每秒接收的字节数。
  • txkB/s:每秒发送的字节数。

FAQs

Q1: ifconfigip命令有什么区别?

A1ifconfigip命令都可以用于查看和配置网络接口的信息,但ip命令是ifconfig的替代工具,提供了更多的功能和选项。ip命令更加现代化,支持更多的网络配置和管理功能。

Q2: nloadiftop命令有什么区别?

A2nloadiftop都是用于监控网络流量的工具,但它们的显示方式和使用场景有所不同。nload以图形化的方式显示网络接口的实时流量信息,适合快速查看网络接口的上传和下载速率,而iftop则是一个实时网络流量监控工具,可以显示详细的网络连接信息,包括源IP、目标IP、端口、协议、传输速率等,适合深入分析网络流量

0