Linux查看網絡流量

文章原文: Linux查看網絡流量

做爲一個非職業運維,不時須要查看Linux服務器上的網絡流量情況。本文介紹幾個經常使用的Linux查看網絡流量命令,並簡要介紹其用法。部分命令系統已經內置,某些命令則須要從軟件倉庫或者自行編譯安裝,本文以CentOS系統爲例介紹軟件安裝方法。html

查看總流量

ip

ip 命令來自 iproute2util 包,是查看、配置網絡/路由的工具。做爲 ifconfig 的替代品,ip 命令功能更強大,用法更語義化。linux

ip命令在大多數系統上都已經默認安裝,也可經過 yum install -y iproute 安裝。ip 的 "-s -h" 參數查看各網卡的總流量,下圖是 ip -s -h link 的輸出結果:ios

ip命令輸出結果

nload

nload 命令能夠查看各個網絡設備的當前網絡速率,也會展現流經設備的總流量。服務器

nload 來自EPEL軟件庫,CentOS安裝命令爲:yum install -y epel-release && yum install -y nload。查看eth0網卡流量 nload eth0命令輸出以下:網絡

nload查看網絡流量

PS:netstat -sifconfig -s 均可以查看收發的總包(netstat分協議給出),但不會給出字節數據。運維

查看實時網速網速

nload 命令能夠輸出當前網速,上面已經介紹過,本節再也不贅述。tcp

dstat

dstat 是一個用來替換vmstatiostatnetstatnfsstatifstat的全能系統信息統計工具,支持數據實時刷新,輸出直觀易懂。工具

dstat 默認沒有安裝,安裝命令爲:yum install -y dstatdstat -tnf 1 10 輸出接下來10秒內每秒的網絡數據:性能

dstat輸出

sar

sar 是System Activity Report的縮寫,是一款全面的Linux系統運行狀態統計和性能分析工具,可從磁盤IO、CPU負載、內存使用等多個維度對系統活動進行報告。spa

sar 命令來自 sysstat 包,可以使用這個命令安裝:yum install -y sysstatsar -n TCP 1 10可查看接下來10秒內的tcp數據:

sar查看tcp數據

查看鏈接/進程流量

ss/netstat

ssnetstat 是查看活動連接/監聽端口的經常使用命令。ssnetstat 的替代,性能更好,建議使用。

ssiproute2util 包的一部分,所以在大多數系統上默認安裝,也可經過yum install -y iproute安裝。netstat 來自 net-tools 包,新版系統上須要自行安裝:yum install -y net-tools

下圖是用ss查看tcp鏈接的輸出:

ss查看tcp鏈接

iftop

iftop 是一款實時流量監控工具,能夠查看每一個鏈接的實時速率。

iftop 來自EPEL軟件庫,安裝命令是:yum install -y epel-release && yum install -y iftopiftop -nN -i eth0實時查看eth0網卡的各個鏈接和網速:

iftop查看實時網速

nethogs

nethogs 是爲了查看單個進程流量而設計的工具,按照進程進行帶寬分組。

nethogs 來自EPEL軟件庫,安裝命令是:yum install -y epel-release && yum install -y nethogsnethogs -d 2 eth0 每2秒刷新流經eth0網卡的進程流量信息:

nethogs輸出

其餘

tcpdump能夠用來抓包,保存的數據能夠用wireshark打開和查看。

參考

1. Linux sar命令詳解

2. 30 Linux System Monitoring Tools Every SysAdmin Should Know

相關文章
相關標籤/搜索