Linux运维之网络运维

在这里我主要介绍三个网络运维工具:

iftop     ntopng     iperf

一、先来看看 iftop

I ftop 是一个免费的网卡实时流量监控工具,类似于 linux 下的 top 命令, iftop 可以监控指定网卡的实时流量、端口连接信息,反向解析 ip ,还可以精确的显示本机网络流量情况及网络内各主机与本机互相通信的流量状况。

I ftop 的安装

iftop官网:http://www.ex-parrot.com/pdw/iftop/

有源码编译安装和 rpm 包安装,两种方法都很简单。如果用源码编译安装,下载下来直接 ./configure  就可以了, rpm 包安装则更简单就不用说了。

I ftop  使用参数:

- 指定需要监测的网卡

-n  将输出的主机信息都通过 IP 显示,不进行 DNS 反向解析

-B  将输出以 byte 为单位显示网卡流量,默认是 bit

-p  以混杂模式运行 iftop ,此时 iftop 可以用作网络嗅探器

-N  只显示连接端口号,不显示端口对应的服务名称

-P  显示主机以及端口信息

-F  显示特定网段的网卡进出流量

-m  设置 iftop 输出界面中最上面的流量刻度最大值,流量刻度分 5 个大段显示

wKioL1RluCXih16OAALVUEct0Rk251.jpg

在最下面三行, TX 表示发送数据, RX 表示接收数据, TOTAL 表示发送和接收的全部流量。其中, cumm 表示从运行 iftop 到目前的发送、接收和总数据流量。 P eak表示发送、接收以及总的流量峰值; rates 表示过去 2s10s40s 内的平均流量值。

二、网络管理系统 Ntopng

安装 Ntopng

下载地址: http://www.nmon.net/centos/

这里有提供 rpm 格式的安装包,直接使用 yum 安装即可。

Y um install pfring n2disk nProbe ntopng ntopng-data nbox -y

创建配置文件

vim /etc/ntopng/ntopng.conf

-G=/var/tmp/ntopng.gid

--local-networks "192.168.31.0/24"

--interface eth0

--user nobody

--http-port 3000

相关参数含义如下:

-G  指定存储 Ntopng 进程号的文件路径

--local-network  指定要监控的本地子网段

--interface eth0  指定要监听 eth0 网卡上的流量

--user 指定运行 Ntopng 服务所使用的帐户

--http-port 指定 Ntopng Web 服务端口号,默认端口为 3000.

启动 Ntopng 服务之前需要启动 redis 服务,因为 Ntopng 服务依赖 redis 服务的键值存储。

S ervice redis start

S ervice Ntopng start

Ntopng  常用参数 :

-d  Ntopng 进程放到后台执行,默认 Ntop 在前台运行。

-u  指定启动 Ntopng 执行的用户,默认是 nobody 用户。

-i   指定 Ntopng 监听的网卡设备,指定多块网卡时,用逗号隔开。

-M  如果通过 -i  参数指定了多块网卡,那么输出的网卡流量信息默认是合并的,如果要将多块网卡信息分开统计,就需要添加此参数。

-L  Ntopng 的输出信息写入系统日志文件中,对应于 Centos ,就是 /var/log/message 文件

-w  设置 Ntopng Web 界面使用的端口,默认是 3000

-r  设定 Ntopng Web 界面自动刷新频率,默认是每 3s 刷新一次。

服务启动起来以后,就可以通过 web 界面访问了。

默认帐号密码: admin

wKioL1RluZ7yYw3wAAFyO8lgkU4582.jpg

wKioL1Rlu3_gZLxEAAFLGKf57Bk891.jpg

三、网络性能评估工具 iperf

I perf 是一个基于 TCP/IP UDP/IP 的网络性能测试工具,它可以用来测量网络带宽和网络质量,还可以提供网络延迟抖动、数据包丢失率、最大传输单元等统计信息。网络管理员可以根据这些信息了解并判断网络性能问题,从而定位网络瓶颈。

I perf 的主要功能:

TCP 方面

测试网络带宽

支持多线程,在客户端与服务器支持多重连接

报告 MSS/MTU 值的大小

支持 TCP 窗口值自定义并可通过套接字缓冲

UDP 方面

可以设置指定带宽的 UDP 数据流

可以测试网络抖动值、丢包数

支持多播测试

支持多线程,在客户端与服务器端支持多重连接

I perf  官网: http://iperf.fr

安装 iperf

tar zxvf  iperf-2.0.5-source.tar.gz

cd iperf-2.0.5

./configure --prefix /usr/local/iperf

make && make install

cp /usr/local/iperf/bin/iperf  /usr/bin/

iperf 参数说明:

服务端专用选项

-s  iperf 以服务器模式启动,例如: iperf  s  iperf 默认启动的监听端口为 5201 ,可以通过“ -p ”选项修改默认监听端口

-D  iperf 作为后台守护进程运行,例如: iperf 

客户端专用选项

-c  iperf 以客户端模式启动

-u  指定使用 UDP 协议

-b [K|M|G]  指定 UDP 模式使用的带宽,单位 bits/sec 。此选项与 -u  选项相关。 默认 1 Mbits/sec

-t  指定传输数据包的总时间。  I perf 将在指定的时间内,重复发送指定长度数据包。 默认 10s

-n [K|M|G]  指定传输数据包的字节数

-l  指定读写缓冲区的长度, TCP 方式默认大小为 8KB UDP 方式默认大小为 1470B

-P  指定客户端与服务器端之间使用的线程数,默认是 1 个线程。需要客户端与服务器端同时使用此参数

-R  切换数据发送、接收模式

-w  指定套接字缓冲区大小

-B  用来绑定一个主机地址或接口,这个参数仅用于具有多个网络接口的主机。

-M  设置 TCP 最大信息段的值

-N  设置 TCP 无延时

客户端与服务器端公用选项

-f [k|m|g|K|M|G]  指定带宽输出单位

-p  指定服务器端使用的端口或客户端所连接的端口

-i  指定每次报告之间的时间间隔,单位为秒。 默认值为 1.

-F  指定文件作为数据流进行带宽测试

实战演练:

要使用ifperf ,首先启动一个服务器端。

./bin/iperf -D -s

然后来到客户端这边测试

# iperf -c 192.168.31.253

------------------------------------------------------------

Client connecting to 192.168.31.253, TCP port 5001

TCP window size: 19.3 KByte (default)

------------------------------------------------------------

[  3] local 192.168.31.254 port 49057 connected with 192.168.31.253 port 5001

[ ID] Interval       Transfer     Bandwidth

[  3]  0.0-10.0 sec  1.41 GBytes  1.21 Gbits/sec

指定发送数据的大小,指定输出的单位,指定线程数。

# iperf -c 192.168.31.253 -n 2000000000 -f M -P 2

-----------------------------------------------------------

Client connecting to 192.168.31.253, TCP port 5001

TCP window size: 0.02 MByte (default)

------------------------------------------------------------

[  4] local 192.168.31.254 port 49058 connected with 192.168.31.253 port 5001

[  3] local 192.168.31.254 port 49059 connected with 192.168.31.253 port 5001

[ ID] Interval       Transfer     Bandwidth

[  3]  0.0-17.5 sec  1907 MBytes   109 MBytes/sec

[  4]  0.0-23.5 sec  1907 MBytes  81.3 MBytes/sec

[SUM]  0.0-23.5 sec  3815 MBytes   163 MBytes/sec

测试UDP丢包和延迟

iperf -c 192.168.31.253 -u -b 50M -f M -i 2

笔者安装的iperf是2.0版本的,建议大家按照3.0版本。 学习总结完成!

我来评几句
登录后评论

已发表评论数()

相关站点

+订阅
热门文章