时时了解服务器的流量占用情况,是运维人员要掌握的一个入门技能。不过查看流量的情况的手段很多,工具也很多。如ifconfig脚本实现法、cacti、pnp4nagios、mrtg绘图查看以及iptraf、iftop、nload、sar时时查看等 。本文我们就总结下最后提到的四个时时查看的工具。

一、iptraf

在最的常用的linux发行版centos、redhat源中,可以直接通过yum进行安装。当然也可以到其项目主页上下载安装。wget ftp://iptraf.seul.org/pub/iptraf/iptraf-3.0.0.tar.gz

tar zxvf iptraf-3.0.0.tar.gz

cd iptraf-3.0.0

./Setup

yum方式安装

yum -y install iptraf

以上为两种安装方式。iptraf是一个IP网络监控工具。其功能十分强大,它能拦截网络上的报文,获取报文各个部分的信息,如:

IP、TCP、UDP、ICMP报文总数和非IP字节数。

TCP连接的源/目的地址和源/目的端口。

TCP报文数和字节数。

TCP标志状态。

UDP源/目的信息。

ICMP类型信息。

OSPF源/目的信息。

TCP和UDP服务统值。

网络接口报文计数。

网络接口IP校验和错误数目。

网络接口活动指示器。

LAN统计

IPTraf能够用于监视IP网络的负载。IPTraf使用Linux内核的内置原始包捕获接口,可以广泛地用于以太网卡,支持FDDI适配器、ISDN适配器以及任何异步SLIP/PPP接口。

其在终端下的图形化界面看起来也比较直观:

其主要使用参数有:iptraf { [ -f ] [ { -i iface | -g | -d iface | -s iface | -z iface | -l iface } [ -t timeout ] [ -B [ -L logfile ] ] ] | [ -h ] }

参数说明:

-i 让IPTraf监视特定的网络接口,如:eth0,-i all表示监视系统的所有网络接口。

-g 网络接口的一般统计信息。

-d 显示特定网络接口的详细统计信息。

-s 对特定网络接口的TCP/UDP数据流量进行监视。

-z 监视局域网的特定网络接口。-l all表示全部。

-t timeout 使IPTraf在指定的时间后,自动退出。如果没有设置IPTraf就会一直运行,直到用户按下退出键(x)才退出。

-B 使IPTraf在后台运行。单独使用无效(被忽略直接进入菜单界面),只能和-i、-g、-d、-s、-z、-l中的某个参数一块使用。

-L filename 如果使用-B参数,使用-L filename使IPTraf把日志信息写入其它的文件(filename)中。如果filename不包括文件的绝对路径,就把文件放在默认的日志目录(/var/log/iptraf)。

-f 使IPTraf强制清除所有的加锁文件,重置所有实例计数器。

菜单Configure...

对 iptraf 进行配置,所有的修改都将保存在文件:/var/local/iptraf/iptraf.cfg 中。具体配置选项如下:

— 对IP地址反查 DNS名,默认是关闭的

— TCP/UDP Service Names 使用服务器代替端口号,如用www 代替80,默认关闭

— Force promiscuous 混杂模式,此时网卡将接受所有到达的数据,不管是不是发给自己的。

— Color 终端显示彩色,用telnet ,ssh连接除外,也就是用不支持颜色的终端连接肯定还是没有颜色。

— Logging 同时产生日志文件,在/var/log/iptraf 目录下

— Activity mod 可以选择统计单位是kbit/sec 还是 kbyte/sec

— Source MAC addrs in traffic monitor 显示数据包的源MAC地址

菜单Filters...

设置过滤规则,通过该设置可以过滤掉不需要的数据包。它包括六个选项,分别是:Tcp、Udp、Other IP、ARP、RARP、Non-ip。下面以TCP为例说明,其他选项的配置都很相似。

— Defining a New Filter要求填入所建规则的描述名,然后回车确定,Ctrl+x取消。再接下来的对话框里,Host name/IP address: 前面的框填源地址,后面的框填目标地址。Wildcard mask:分别是源地址和目标地址所对应的掩码。

注意,这里的地址即可以是单个地址,也可以是一个网段,如果是单个IP,则相应的子网掩码要填成255.255.255.255,如果是一个网段,则填写相应的子网掩码:例如,想表示192.168.0.0,有256个IP地址的网段,则填写192.168.0.0,子网是:255.255.255.0,其他类推,All则用0.0.0.0,子网也是0.0.0.0表示。Port:填入要过滤的端口号,0表示任意端口号

Include/Exclude:填入I或者E,I表示包括,E表示排除

— Applying a Filter 让过滤规则生效

— Editing a Defined Filter编辑一个已经存在的规则

— Deleting a Defined Filter删除一个已经定义的规则

— Detaching a Filter 取消执行当前所有应用的规则

菜单IP Traffic Monitor

IP数据包流量实时监控窗口,监控所有的来往数据包。在这里可以实时的看到每一个连接的流量状态,它有两个窗口,上面的是TCP的连接状态,下面的窗口可以看到UDP、ICMP、OSPF、IGRP、IGP、IGMP、GRE、ARP、RARP的数据包。可以点击s键选择排序,可以按照包的数量排序,也可按照字节的大小排序,如果因为它是实时变化的而导致看不太清楚的话,可以在Configure菜单中把Logging功能打开,它就会在/var/log/iptraf 目录中记录日志,以方便你在日后查看,当Logging功能打开后,当开始监控IP Traffic时,程序会提示你输入Log文件的文件名,默认的是ip_traffic-1.log。

菜单General Interface Statistics

显示每个网络设备出去和进入的数据流量统计信息,包括总计、IP包、非IP包、Bad IP包、还有每秒的流速,单位是kbit/sec或者是kbyte/sec ,这由Configure菜单的Activity选项决定。

菜单Detailed Interface Statistics

显示每个网络设备的详细的统计信息。

Statistical Breakdowns

显示更详细的统计信息,可以按包的大小分类,分别统计;也可以按Tcp/Udp的服务来分类统计 。

注:及于iptraf如此强大的功能,所以平时命令行下我最喜欢使用该工具。

二、iftop

iftop是类似于top的实时流量监控工具。iftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等。其官方主页为:http://www.ex-parrot.com/~pdw/iftop/  。

默认centos、redhat发行版yum源,并不包含iftop包,不过我们可以通过第三方源进行yum安装,也可以通过源码包安装:yum install flex byacc libpcap libpcap-devel ncurses ncurses-devel

以为上其安装时的依赖包

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

./configure

make && make install

界面说明:

界面上面显示的是类似刻度尺的刻度范围,为显示流量图形的长条作标尺用的。中间的<= =>这两个左右箭头,表示的是流量的方向。

TX:发送流量

RX:接收流量

TOTAL:总流量

Cumm:运行iftop到目前时间的总流量

peak:流量峰值

rates:分别表示过去 2s 10s 40s 的平均流量

常用的参数-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

操作键说明

按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排序

按o切换是否固定只显示当前的连接

按f可以编辑过滤代码

按!可以使用shell命令

按q退出监控

三、nload

nload同iptraf相比,功能比较单一,只能查看总的流量,实时地监控网卡的流量,分Incoming,Outgoing两部分流量,同时统计当前,平均,最小,最大,总流量的值,使人看了一目了然。

其项目主页为http://www.roland-riegel.de/nload/index.html ,默认并不在centos、redhat发行版的yum源中。安装下载方法如下:wget http://www.roland-riegel.de/nload/nload-0.7.2.tar.gz

tar zxvf nload-0.7.2.tar.gz

cd nload-0.7.2

./configure;make;make install

安装完成后,默认位置位于/usr/local/nload目录 。安装时可能出现下面的提示:configure: error: ncurses library or development files not found. ncurses is required for nload.

make: *** No targets specified and no makefile found. Stop.

make: *** No rule to make target `install'. Stop.

可通过yum -y install ncurses-devel 解决 。

其可选参数如下:-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:自定义监控的网卡,默认是全部监控的,使用左右键切换。

四、sar

sar 是sysstat工具包里的一个工具,其功能十分强大。之前我也单独对sysstat工具包作为一个单独的总结。不过个人倒不大喜欢使用sar进行流量统计。其显示内容不直观,不是直接以kb/s、Mb/s这种方式显示。sar的-n参数主要用于对流量信息的统计。sar -n { DEV | EDEV | NFS | NFSD | SOCK | ALL }

sar 提供六种不同的语法选项来显示网络信息。-n选项使用6个不同的开关:DEV | EDEV | NFS | NFSD | SOCK | ALL 。DEV显示网络接口信息,EDEV显示关于网络错误的统计数据,NFS统计活动的NFS客户端的信息,NFSD统计NFS服务器的信息,SOCK显示套 接字信息,ALL显示所有5个开关。它们可以单独或者一起使用。

其输出信息如下:

IFACE:LAN接口

rxpck/s:每秒钟接收的数据包

txpck/s:每秒钟发送的数据包

rxbyt/s:每秒钟接收的字节数

txbyt/s:每秒钟发送的字节数

rxcmp/s:每秒钟接收的压缩数据包

txcmp/s:每秒钟发送的压缩数据包

rxmcst/s:每秒钟接收的多播数据包

rxerr/s:每秒钟接收的坏数据包

txerr/s:每秒钟发送的坏数据包

coll/s:每秒冲突数

rxdrop/s:因为缓冲充满,每秒钟丢弃的已接收数据包数

txdrop/s:因为缓冲充满,每秒钟丢弃的已发送数据包数

txcarr/s:发送数据包时,每秒载波错误数

rxfram/s:每秒接收数据包的帧对齐错误数

rxfifo/s:接收的数据包每秒FIFO过速的错误数

txfifo/s:发送的数据包每秒FIFO过速的错误数

totsck:使用的套接字总数量

tcpsck:使用的TCP套接字数量

udpsck:使用的UDP套接字数量

rawsck:使用的raw套接字数量

ip-frag:使用的IP段数量

linux查看某个端口的流量_linux流量查看工具汇总相关推荐

  1. Linux学习之端口、网络协议及查看端口占用情况(学习内容记录)

    端口:设备与外界通讯交流的出口 网络协议: 网络协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则. HTTP协议: HTTP协议(超文本传输协议)是一种网络通信协议,它允许将超 ...

  2. Linux查询某个端口被谁占用,如何查看某个端口被谁占用(Linux如何查询哪些端口被占用)...

    如何确定端口号是不是在Linux或类unix系统软件下占有?怎么检查什么端口号已经Linux网络服务器上被占有?Linux系统软件怎么使用cmd查验端口号是不是早已在占有? Linux端口占用查看 查 ...

  3. mac下查看mysql端口被占用_MAC下查看端口占用并杀死进程

    Eclipse在Run on Server时,Tomcat是开启的,但是报错,显示8080.8005和8009端口被占用 终端输入 查看所有开启的端口 sudo lsof -i -P | grep - ...

  4. ubuntu 查看对外端口_[mcj]Ubuntu如何查看已开放端口|Ubuntu开放关闭指定端口方法...

    有时候我们经常无法连接服务器的某些端口,这时就需要查看一下这些端口是不是放行了,最简单的方法就是使用ufw工具,步骤如下. 1 安装ufw sudo apt install ufw 1 sudo ap ...

  5. linux查看某个端口的流量_linux中查看网卡流量六种方法

    方法一.nload工具 源码包路径: http://heanet.dl.sourceforge.net/project/nload/nload/0.7.2/nload-0.7.2.tar.gz 查看参 ...

  6. ubunt查看网卡流量_Linux下查看网卡流量

    在Linux下怎么看网络流量? 在Windows下,我们可以很方便的通过360来查看网络流量,知道哪个进程占用的网络带宽比较多.那在Linux下怎么看流量呢,对于Web服务器来说这是很重要的. 下面这 ...

  7. linux怎么查看mysql安装在哪里_Linux下查看MySQL的安装路径

    Linux下查看mysql.apache是否安装,并卸载. 指令ps -ef|grep mysql得出结果 root 17659 1 0 2011 ? 00:00:00 /bin/sh /usr/bi ...

  8. linux过滤端口抓包_Linux抓包工具tcpdump使用总结,WireShark的过滤用法

    tcpdump与WireShark是Linux下的两个常用,功能强大的抓包工具,下面列出这两个工具的简单用法. tcpdump用法 tcpdump用法: sudo tcpdump -i ens33 s ...

  9. linux 查看网卡是否万兆_linux 如何查看网卡带宽

    1.先查看网卡 # ifconfig docker0: flags=4163 mtu 1500 inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17 ...

最新文章

  1. 手把手,教你怎样用命令行给apk签名
  2. 【渝粤教育】电大中专Windows操作系统作业 题库
  3. mybatis mysql 配置文件路径_从零搭建SpringBoot+MyBatis+MySQL工程
  4. 就地升级Lync Server 到Skype for Business Server
  5. C++ 函数需要有返回值,但非全分支return(RVO)
  6. CANoe软件安装失败
  7. 抖音protobuf分析
  8. 泊松分布的期望和方差推导
  9. 什么是DOM(超详细解释,建议收藏!!!)
  10. 3GPP协议 25.105
  11. 奥迪q5计算机控制显示,奥迪q5仪表盘功能图解,奥迪q5仪表盘怎么切换
  12. 在命令行下快速进入某一级目录
  13. 如何理解卷积(Convolution)?
  14. Unity 如何实现一个强大的MMO技能系统!
  15. mpu6050.py
  16. 8、spss做因子分析及主成分分析
  17. 液晶屏接口 - MIPI
  18. 人民日报三问区块链:区分是技术创新还是集资创新
  19. linux实现复制文件的两种方法
  20. 前端页面上换行、根据后端返回的换行符(“↵”)进行换行展示(vue、v-html)

热门文章

  1. 交流电计算方法c语言,正弦交流电的计算公式
  2. DeFi+NFT出圈姿势盘点,NFT借贷等应用领域值得关注
  3. AJAX技术介绍(什么是AJAX?)
  4. 搭建论坛discuz
  5. 2023展望未来的stripe经验之谈
  6. asterisk简单实用
  7. Mysql——双机同步
  8. Nginx+keepalived双主配置(双机双主热备)
  9. 梦幻柔焦(奥顿效果)
  10. 制作一个浪漫温馨的生日礼物送她~html+css+javascript蓝色梦幻海洋3D相册(含音乐)...