歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux服務器

幾個Linux流量監控方法分享

因為做Linux常常會要做Linux流量監控的流量查看,Linux流量監控還是比較常用的,於是我研究了一下Linux流量監控的一些方法,在這裡拿出來和大家分享一下,希望對大家有用。下面的三個方法能很好的解決當前流量查看

  Linux流量監控的iftop工具

  用途: 用來即時監看網路狀態和各ip所使用的頻寬

  執行(必須以root身份)

  監控eth1的網卡的流量

  # iftop -i eth1

  以位元組(bytes)為單位顯示流量(預設是位元bits):

  $ iftop -B

  直接顯示IP, 不進行DNS反解:

  $ iftop -n

  直接顯示連接埠編號, 不顯示服務名稱:

  $ iftop -N

  顯示某個網段進出封包流量

  $ iftop -F 192.168.1.0/24 or 192.168.1.0/255.255.255.0

  其他參數可下 iftop -h 看說明.

  進入iftop畫面時, 可按 p 切換是否顯示連接埠, n 切換顯示IP或主機的domain name, N切換顯示連接埠代號或名稱, p暫停顯示, b切換是否顯示長條, B切換計算幾秒內的平均流量, 其他按鍵可以按h觀看說明.

  設定檔的位置在~/.iftoprc , 關於設定檔的寫法可以參考 iftop 的 info page.

  Linux流量監控的nload工具

  用途: 用來即時監看網路狀態和各ip所使用的頻寬(很廢話了)

  nload默認的是eth0網卡,如果你想監測eth1網卡的流量

  #nload eth1

  nload 默認分為上下兩塊:上半部分是:Incoming也就是進入網卡的流量,下半部分是:Outgoing,也就是從這塊網卡出去的流量,每 部分都有當前流量(Curr),平均流量(Avg),最小流量(Min),最大流量(Max),總和流量(Ttl)這幾個部分,看起來還是蠻直觀的。

  另外,你也可以自己定義流量數值顯示的單位

  #nload --help

  就可以看到具體的相關參數了。

  查看網絡平均流量

  下面的腳本可以很好的監控你的網絡的平均流量,你可以提定時間

  #!/bin/bash

  echo -n "which nic?"

  read eth

  echo "the nic is "$eth

  echo -n "how much seconds:"

  read sec

  echo "duration is "$sec" seconds, wait please..."

  infirst=$(awk '/'$eth'/{print {GetProperty(Content)} }' /proc/net/dev |sed 's/'$eth'://')

  outfirst=$(awk '/'$eth'/{print $10 }' /proc/net/dev)

  sumfirst=$(($infirst+$outfirst))

  sleep $sec"s"

  inend=$(awk '/'$eth'/{print {GetProperty(Content)} }' /proc/net/dev |sed 's/'$eth'://')

  outend=$(awk '/'$eth'/{print $10 }' /proc/net/dev)

  sumend=$(($inend+$outend))

  sum=$(($sumend-$sumfirst))

  echo $sec" seconds total :"$sum"bytes"

  aver=$(($sum/$sec))

  echo "avrage :"$aver"bytes/sec"

Copyright © Linux教程網 All Rights Reserved