文章原文:在Linux中查看网络流量作为非专业运维人员,需要时常查看Linux服务器上的网络流量状况。本文介绍几个常用的查看网络流量的Linux命令,并简单介绍一下它们的用法。已经内置了部分命令系统,部分命令需要从软件仓库或自行编译安装。本文以CentOS系统为例介绍软件安装方法。查看总流量ipip命令来自iproute2util包,是一个查看和配置网络/路由的工具。作为ifconfig的替代,ip命令更强大并且具有更多的语义用法。大多数系统默认已经安装了ip命令,也可以通过yuminstall-yiproute安装。使用ip的“-s-h”参数可以查看各个网卡的总流量。下图是ip-s-hlink:nloadnload命令的输出,可以查看各个网络设备当前的网速,也可以显示流经该设备的总流量。nload来自EPEL软件库,CentOS安装命令为:yuminstall-yepel-release&&yuminstall-ynload。查看eth0网卡流量nloadeth0命令输出如下:PS:netstat-s和ifconfig-s都可以查看发送和接收的总包数(由netstat子协议给出),但不会给出字节数据。查看实时网速nload命令可以输出当前网速,上面已经介绍过,本节不再赘述。dstatdstat是一个全面的系统信息统计工具,用于替代vmstat、iostat、netstat、nfsstat和ifstat。支持实时数据刷新,输出直观易懂。默认不安装dstat,安装命令为:yuminstall-ydstat。dstat-tnf110输出未来10秒每秒的网络数据:sarsar是SystemActivityReport的缩写,是一款综合性的Linux系统运行状态统计和性能分析工具,可以从磁盘IO、CPU负载、以及内存和其他维度来报告系统活动。sar命令来自sysstat包,可以使用以下命令安装:yuminstall-ysysstat。sar-nTCP110可以查看接下来10秒的tcp数据:查看连接/进程流量ss/netstatss和netstat是查看活跃链接/监听端口的常用命令。ss是netstat的替代品,性能更好,推荐使用。ss是iproute2util包的一部分,因此它在大多数系统上默认安装,也可以通过yuminstall-yiproute安装。netstat来自net-tools包,新系统需要安装:yuminstall-ynet-tools。下图是用ss查看tcp连接的输出:iftopiftop是一个实时流量监控工具,可以查看每个连接的实时速率。iftop来自EPEL软件库,安装命令为:yuminstall-yepel-release&&yuminstall-yiftop。iftop-nN-ieth0实时查看eth0网卡的各种连接数和网速:nethogsnethogs是一款专门用来查看单个进程流量的工具,可以根据进程对带宽进行分组。nethogs来自EPEL软件库,安装命令为:yuminstall-yepel-release&&yuminstall-ynethogs。nethogs-d2eth0每2秒刷新一次流经eth0网卡的进程流量信息:其他可以使用tcpdump抓包,保存的数据可以用wireshark打开查看。参考1.Linuxsar命令详解2.每个系统管理员都应该知道的30个Linux系统监控工具
