是“誰”占用了你的帶寬?6個工具幫助你實時監控網絡情況!
作為一個資深的Linux系統管理員,對于能夠時刻獲取你維護機器上的每一個進程占用了多少網絡帶寬、對外開放端口的活動情況是非常重要的!通過這些數據我們能夠及時發現業務出現的問題,以及未來可能遭受的攻擊,同時它也是幫助我們排查故障的重要數據來源!
沒有專用的工具,獲取數據并不容易。下面小編就同大家分享一波咱們日常工作中實用的一些監控工具,幫助大家快速查看服務器帶寬和端口的活動情況!
1. Iftop
iftop是linux命令行程序,用圖形形式實時顯示網絡連接所使用的帶寬。就像top一樣,iftop 每隔幾秒動態更新, iftop顯示的是網絡連接所使用的上傳和下載的帶寬,是運維人員必備的命令工具。
(1) 安裝
iftop在系統中,缺省情況下是沒有安裝,所以需要在使用之前安裝
- yum install iftop
(2) 使用
直接在命令行下輸入iftop運行程序,運行界面如下圖
- 在屏幕的最上方,是iftop 顯示每個連接比例的條形圖。
- 跟著的輸出行對應著每對主機之間的網絡連接。
- 在兩個主機之間的箭頭代表數據流動方向。
- 最后三列最后2秒、20秒以及40秒內的平均連接帶寬。
由此舉例,上圖中最后2秒的平均值約為2.83Mb,最后10秒約為3.32Mb,最后40秒約為3.11Mb。在所有的發送和接收的下方,屏幕的底部是對全部發送和接收的統計(TX和RX),包括在2-、10-和40秒內的平均值,而最后,則是接口的總計。
(3) 常用的參數
2. Dstat
dstat是一個綜合的服務器性能查看命令。Dstat允許你實時查看系統的所有資源情況,例如:或直接將網絡帶寬數與磁盤吞吐量進行比較(在相同的時間間隔內)。
(1) 安裝
- yum install dstat -y
(2) 使用
- [root@localhost ~]# dstat -cdnrsy
(3) 參數詳解
3. Nload
如果你想在命令行界面監控網絡吞吐量,選擇 nload 就對了!它是一個實時監控網絡流量和帶寬使用的控制臺應用程序,它把入站流量和出站流量分開來監控,讓用戶很清楚的知道入站流量和出站流量情況。
(1) nload安裝
- yum install nload -y
(2) 使用
- nload -u M
(3) 參數說明
-u M:以M字節為單位顯示:

這個截圖老王盡力了~紅框標出的文字是:Incoming 和 outgoing,數據部分大家自行腦補~
4. Ifstat
ifstat命令就像iostat/vmstat描述其它的系統狀況一樣,是一個網絡流量監測程序,能查看網卡的流出和流入的字節.是一個統計網絡接口活動狀態的工具。
(1) ifstat安裝
- wget http://distfiles.macports.org/ifstat/ifstat-1.1.tar.gz
- tar xzvf ifstat-1.1.tar.gz
- cd ifstat-1.1
- ./configure
- make
- make install
(2) 使用
- [root@localhost ifstat-1.1]# ifstat -i ens160 1 10
- ens160
- KB/s in KB/s out
- 9.02 6.42
- 4.50 3.23
- 3.84 3.23
- 4.36 3.23
- 5.42 3.23
- 13.50 11.59
- 10.54 12.84
- 3.59 3.52
- 4.39 3.23
- 5.78 3.53
(3) 參數說明
-i:網絡接口名
5. Nicstat
nicstat是一款分析網卡流量信息的工具,原生于Solaris,后來才被移植到Linux上。
(1) nicstat安裝
- yum install http://rpmfind.net/linux/fedora/linux/releases/28/Everything/x86_64/os/Packages/n/nicstat-1.95-7.fc27.x86_64.rpm
(2) 使用
- [root@lkjtest ~]# nicstat -z 1
- Time Int rKB/s wKB/s rPk/s wPk/s rAvs wAvs %Util Sat
- 15:29:14 ens160 4.03 0.91 43.18 1.60 95.61 581.8 0.00 0.00
- 15:29:15 ens160 3.09 0.73 35.95 2.00 88.11 375.5 0.00 0.00
- 15:29:16 ens160 3.93 0.66 43.99 2.00 91.52 335.5 0.00 0.00
- 15:29:17 ens160 3.99 0.66 45.00 2.00 90.71 335.5 0.00 0.00
- 15:29:18 ens160 4.04 0.66 46.99 2.00 88.04 335.5 0.00 0.00
- 15:29:19 ens160 3.64 0.66 42.00 2.00 88.76 335.5 0.00 0.00
(3) 參數說明
-z:跳過0行
輸出參數說明:
- wKB/s,OutKB #每秒寫的千字節數(transmitted)
- rMbps,RdMbps #每秒讀的百萬字節數K(received)
- %Util #接口的利用率百分比
- Sat #每秒的錯誤數,接口接近飽和的一個指標
6. Sar
Sar是系統活動報告,是一個在Unix和Linux操作系統中用來收集、報告和保存CPU、內存、輸入輸出端口使用情況的命令。
(1) 安裝
- yum install sysstat -y
(2) 使用
- [root@181test ifstat-1.1]# sar -n DEV 1 2
(3) 參數說明