當前位置:首頁 » 操作系統 » linux監控流量

linux監控流量

發布時間: 2022-04-20 18:58:15

linux 系統是如何對流量的進行監控和過濾的

iptables裡面有系統默認的設置,流量過濾在這個裡面設置,你可以自己添加
top 這個命令式監控進程和流量的

㈡ Linux流量監控的幾個方法

看你用哪個linux系統啊,建議你用專業的linux系統,比如WFilter NGF系統,基於Linux,專門做上網行為管理和流控技術。流量監控只是其中的小功能。

㈢ linux查看網路流量命令

方法一、nload工具
查看參數幫助命令:
nload –help
-a :這個好像是全部數據的刷新時間周期,單位是秒,默認是300.
-i :進入網卡的流量圖的顯示比例最大值設置,默認10240 kBit/s.
-m :不顯示流量圖,只顯示統計數據。
-o :出去網卡的流量圖的顯示比例最大值設置,默認10240 kBit/s.
-t :顯示數據的刷新時間間隔,單位是毫秒,默認500。
-u :設置右邊Curr、Avg、Min、Max的數據單位,默認是自動變的.注意大小寫單位不同!
h|b|k|m|g h: auto, b: Bit/s, k: kBit/s, m: MBit/s etc.
H|B|K|M|G H: auto, B: Byte/s, K: kByte/s, M: MByte/s etc.
-U:設置右邊Ttl的數據單位,默認是自動變的.注意大小寫單位不同(與-u相同)!
Devices:自定義監控的網卡,默認是全部監控的,使用左右鍵切換。
如只監控eth0命令: nload eth0
方法二、iftop工具
1、iftop界面相關說明
界面上面顯示的是類似刻度尺的刻度范圍,為顯示流量圖形的長條作標尺用的。
中間的<= =>這兩個左右箭頭,表示的是流量的方向。
TX: 發送流量
RX: 接收流量
TOTAL:總流量
Cumm: 運行iftop到目前時間的總流量
peak: 流量峰值
rates: 分別表示過去 2s 10s 40s 的平均流量
2、iftop相關參數
常用的參數 《Linux就該這么學》
-i 設定監測的網卡,如:# iftop -i eth1
-B 以bytes為單位顯示流量(默認是bits),如:# iftop -B
-n 使host信息默認直接都顯示IP,如:# iftop -n
-N 使埠信息默認直接都顯示埠號,如: # iftop -N
-F 顯示特定網段的進出流量,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0
-h(display this message),幫助,顯示參數信息
-p 使用這個參數後,中間的列表顯示的本地主機信息,出現了本機以外的IP信息;
-b 使流量圖形條默認就顯示;
-f 這個暫時還不太會用,過濾計算包用的;
-P 使host信息及埠信息默認就都顯示;
-m設置界面最上邊的刻度的最大值,刻度分五個大段顯示,例:# iftop -m 100M
進入iftop畫面後的一些操作命令(注意大小寫)
按h切換是否顯示幫助;
按n切換顯示本機的IP或主機名;
按s切換是否顯示本機的host信息;
按d切換是否顯示遠端目標主機的host信息;
按t切換顯示格式為2行/1行/只顯示發送流量/只顯示接收流量;
按N切換顯示埠號或埠服務名稱;
按S切換是否顯示本機的埠信息;
按D切換是否顯示遠端目標主機的埠信息;
按p切換是否顯示埠信息;
按P切換暫停/繼續顯示;
按b切換是否顯示平均流量圖形條;
按B切換計算2秒或10秒或40秒內的平均流量;
按T切換是否顯示每個連接的總流量;
按l打開屏幕過濾功能,輸入要過濾的字元,比如ip,按回車後,屏幕就只顯示這個IP相關的流量信息;
按L切換顯示畫面上邊的刻度;刻度不同,流量圖形條會有變化;
按j或按k可以向上或向下滾動屏幕顯示的連接記錄;
按1或2或3可以根據右側顯示的三列流量數據進行排序;
按<根據左邊的本機名或IP排序;
按>根據遠端目標主機的主機名或IP排序;
按o切換是否固定只顯示當前的連接;
按f可以編輯過濾代碼,這是翻譯過來的說法,我還沒用過這個!
按!可以使用Shell命令,這個沒用過!沒搞明白啥命令在這好用呢!
按q退出監控。
方法三、 ifstat
參數:
-a 監測能檢測到的所有網路介面的狀態信息
-z 隱藏流量是無的介面,例如那些介面雖然啟動了但是未用的
-i 指定要監測的介面,後面跟網路介面名
時間:
-T 報告所有監測介面的全部帶寬
-w 用指定的列寬,而不是為了適應介面名稱的長度而去自動放大列寬
-W 如果內容比終端窗口的寬度還要寬就自動換行
-b 用kbits/s顯示帶寬而不是kbytes/s

㈣ kali linux怎麼嗅探路由器下所有設備的流量

必須要在
路由器
上配置「
埠鏡像
」或者「埠監控」才可以。linux下只能用tcpmp
抓包
,還是要拷貝到windows下來用
wireshark
查看。
我建議你不如直接在windows下安裝「WFilter
上網行為管理軟體
」,可以監控所有設備的流量,還可以配置封堵策略。

㈤ suse linux系統怎樣監控流量

如果採用編譯安裝可以到iftop官網下載最新的源碼包。
安裝前需要已經安裝好基本的編譯所需的環境,比如make、gcc、autoconf等。安裝iftop還需要安裝libpcap和libcurses。
CentOS上安裝所需依賴包:
yum install flex byacc libpcap ncurses ncurses-devel libpcap-devel
Debian上安裝所需依賴包:
apt-get install flex byacc libpcap0.8 libncurses5
下載iftop
wget http://www.ex-parrot.com/pdw/iftop/download/iftop-0.17.tar.gz
tar zxvf iftop-0.17.tar.gz
cd iftop-0.17

㈥ linux下面有什麼工具可以查看每個進程的網路流量

iftop
很強大的,完全
可以做到
-i設定監測的網卡,如:#
iftop
-i
eth1
-B
以bytes為單位顯示流量(默認是bits),如:#
iftop
-B
-n使host信息默認直接都顯示IP,如:#
iftop
-n
-N使埠信息默認直接都顯示埠號,如:
#
iftop
-N
-F顯示特定網段的進出流量,如#
iftop
-F
10.10.1.0/24或#
iftop
-F
10.10.1.0/255.255.255.0
-h(display
this
message),幫助,顯示參數信息
-p使用這個參數後,中間的列表顯示的本地主機信息,出現了本機以外的IP信息;
-b使流量圖形條默認就顯示;
-f這個暫時還不太會用,過濾計算包用的;
-P使host信息及埠信息默認就都顯示;
-m設置界面最上邊的刻度的最大值,刻度分五個大段顯示,例:#
iftop
-m
100M

㈦ 如何在Linux上配置基於Web的網路流量監控系統

在Linux上安裝ntopng

如果你是Debian、Ubuntu或Linux Mint,執行以下命令:

㈧ 聽說用Linux系統可以控制流量

用ulimit 這個命令。
ulimit:顯示(或設置)用戶可以使用的資源的限制(limit),這限制分為軟限制(當前限制)和硬限制(上限),其中硬限制是軟限制的上限值,應用程序在運行過程中使用的系統資源不超過相應的軟限制,任何的超越都導致進程的終止。
ulimited 不限制用戶可以使用的資源,但本設置對可打開的最大文件數(max open files)
和可同時運行的最大進程數(max user processes)無效
-a 列出所有當前資源極限
-c 設置core文件的最大值.單位:blocks
-d 設置一個進程的數據段的最大值.單位:kbytes
-f Shell 創建文件的文件大小的最大值,單位:blocks
-h 指定設置某個給定資源的硬極限。如果用戶擁有 root 用戶許可權,可以增大硬極限。任何用戶均可減少硬極限
-l 可以鎖住的物理內存的最大值
-m 可以使用的常駐內存的最大值,單位:kbytes
-n 每個進程可以同時打開的最大文件數
-p 設置管道的最大值,單位為block,1block=512bytes
-s 指定堆棧的最大值:單位:kbytes
-S 指定為給定的資源設置軟極限。軟極限可增大到硬極限的值。如果 -H 和 -S 標志均未指定,極限適用於以上二者
-t 指定每個進程所使用的秒數,單位:seconds
-u 可以運行的最大並發進程數
-v Shell可使用的最大的虛擬內存,單位:kbytes
eg: ulimit -c 1000(可以先通過ulimit -c 查看原來的值)

㈨ 如何在Linux下統計高速網路中的流量

一般的linux下可以通過

/proc/net/dev

文件對某個或多個網路介面進行流量監控

通過定時讀取該文件中的數據然後通過計算就可以算是當前是否有數據流通

並且流通的速度

該文件內部也記錄了該網路介面所有流通的流量數量和數據包的數量

包括上傳與下載的數量


下面是一個利用該文件的簡單代碼

#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include<string.h>
#include<errno.h>
#include<ncurses.h>
#include<pthread.h>
#include<locale.h>

typedefstruct
{
unsignedlonglongintup_bytes;
unsignedlonglongintdn_bytes;
unsignedlonglongintup_packs;
unsignedlonglongintdn_packs;
}SP;

intget_traffic(SP*sp,char*interface)
{
char*buf=NULL;
size_tlen;
FILE*fp;

if((fp=fopen("/proc/net/dev","rb"))==NULL)
{
perror("Read/proc/net/devError!");
return-1;
}

while(!feof(fp))
{
getline(&buf,&len,fp);
if(buf==NULL)
return-1;

if(strstr(buf,interface))
break;

free(buf);
buf=NULL;
}

if(feof(fp))
{
printf("CanNotFind%sInterface! ",interface);
fclose(fp);

return-1;
}

sscanf(buf,"%*[^:]:%lld%lld%*s%*s%*s%*s%*s%*s%lld%lld",
&sp->dn_bytes,&sp->dn_packs,
&sp->up_bytes,&sp->up_packs);

free(buf);
fclose(fp);
return0;
}

void_quit(WINDOW*win)
{
while(getchar()!='q')
continue;

delwin(win);
echo();
endwin();

exit(0);
}

voidhelp(void)
{
printf("Use: ");
printf("netsp[interface] ");

exit(-1);
}

intmain(intargc,char**argv)
{
unsignedlongup_times=0;
unsignedlongdn_times=0;
doubleup_bytes;
doubledn_bytes;
doubleup_sp;
doubledn_sp;
SPstart,end,temp;
WINDOW*win;
intx,y;
pthread_tthread;

if(argc!=2)
help();

setlocale(LC_ALL,"");
if(get_traffic(&start,argv[1])==-1)
return-1;

initscr();
curs_set(0);
noecho();
if(has_colors())
{
start_color();
use_default_colors();
init_pair(1,COLOR_CYAN,-1);
init_pair(2,COLOR_GREEN,-1);
}

getmaxyx(stdscr,y,x);
win=newwin(12,30,y/2-10/2,x/2-30/2);
refresh();
wattron(win,COLOR_PAIR(1));
box(win,0,0);
wattroff(win,COLOR_PAIR(1));
wrefresh(win);
pthread_create(&thread,NULL,(void*)_quit,win);

while(1)
{
get_traffic(&temp,argv[1]);
usleep(500000);
//sleep(1);
++up_times;
++dn_times;
get_traffic(&end,argv[1]);

if(up_times%10==0)
{
up_times=1;
start.up_bytes=temp.up_bytes;
}

if(dn_times%10==0)
{
dn_times=1;
start.dn_bytes=temp.dn_bytes;
}

if(end.up_bytes-temp.up_bytes==0)
{
up_times=1;
temp.dn_bytes=start.dn_bytes;
get_traffic(&start,argv[1]);
start.dn_bytes=temp.dn_bytes;
}

if(end.dn_bytes-temp.dn_bytes==0)
{
dn_times=1;
temp.up_bytes=start.up_bytes;
get_traffic(&start,argv[1]);
start.up_bytes=temp.up_bytes;
}

wattron(win,COLOR_PAIR(2));
up_bytes=(double)end.up_bytes/1024/1024;
dn_bytes=(double)end.dn_bytes/1024/1024;

if(up_bytes<1024)
mvwprintw(win,2,6,"已上傳%.2fMB",up_bytes);
else
mvwprintw(win,2,6,"已上傳%.2fGB",up_bytes/1024);
if(dn_bytes<1024)
mvwprintw(win,3,6,"已下載%.2fMB",dn_bytes);
else
mvwprintw(win,3,6,"已下載%.2fGB",dn_bytes/1024);

mvwprintw(win,5,6,"已上傳包數量%ld",end.up_packs);
mvwprintw(win,6,6,"已下載包數量%ld",end.dn_packs);

up_sp=(double)(end.up_bytes-start.up_bytes)/up_times/1024*2;
dn_sp=(double)(end.dn_bytes-start.dn_bytes)/up_times/1024*2;

if(up_sp<1024)
mvwprintw(win,8,6,"上傳速度%.2fkb/s",up_sp);
else
mvwprintw(win,8,6,"上傳速度%.2fmb/s",up_sp/1024);
if(dn_sp<1024)
mvwprintw(win,9,6,"下載速度%.2fkb/s",dn_sp);
else
mvwprintw(win,9,6,"下載速度%.2fmb/s",dn_sp/1024);

wattroff(win,COLOR_PAIR(2));
wrefresh(win);
wclear(win);
wattron(win,COLOR_PAIR(1));
box(win,0,0);
wattroff(win,COLOR_PAIR(1));
}

return0;
}
熱點內容
會員注冊源碼 發布:2024-10-01 09:15:57 瀏覽:369
linux內 發布:2024-10-01 09:13:39 瀏覽:918
火葯可以壓縮 發布:2024-10-01 09:11:39 瀏覽:71
為什麼微信清除了緩存 發布:2024-10-01 09:03:20 瀏覽:849
如何關閉手機私密密碼 發布:2024-10-01 08:31:49 瀏覽:482
androidframework學習 發布:2024-10-01 08:20:06 瀏覽:63
思維編程化 發布:2024-10-01 08:19:00 瀏覽:404
尊雲伺服器對接 發布:2024-10-01 08:16:36 瀏覽:3
qq賬號密碼忘在哪裡 發布:2024-10-01 07:39:43 瀏覽:669
ade雲存儲平台 發布:2024-10-01 07:18:57 瀏覽:271