ipstat [-cmnrt] [-a address[,address...]] [-A address[,address...]] [-d d|u] [-i interface[ ,interface...]] [-l nlines] [-p protocol[,protocol... ]] [-s key | -S key] [ -u R|K|M|G|T|P] [-x opt[=val][ ,opt[=val]...]] [interval [count]]
ipstat 实用程序根据选定输出模式和排序顺序来收集和报告有关 IP 通信流量的统计信息。ipstat 还提供了一些选项来仅收集和报告与指定源或目标地址、接口和较高层协议匹配的 IP 通信流量的统计信息。
支持以下选项:
对源地址进行过滤。
对目标地址进行过滤。
在以前的报告下方输出新报告而不是将其覆盖。
每个报告输出时间戳,采用标准日期格式 (-d d) 或自纪元以来的秒数,即 Unix 时间 (-d u)。
对接口名称进行过滤。
每个报告输出的数据行数。
生成计算机可解析的输出。
将网络地址显示为数字。不将 IP 地址解析为主机名。
对协议名称进行过滤。
仅显示接收到的包的数据。
按照 key 以升序 (–S) 或降序 (–s) 排序,其中 key 可以为如下值:
source-源 IP 地址
dest-目标 IP 地址
proto-较高层协议
int-接口名称
bytes-数据量
缺省情况下,数据按字节以降序排序。
仅显示传输的包的数据。
如果使用了该选项,则可以选择显示所有统计信息所用的单位,例如 R:原始计数、K:千位、M:兆位、T:兆兆位、P:千兆兆位。如果没有使用该选项,则将根据情况使用不同单位显示统计信息,采用 xy.zU 格式,其中 x、y 和 z 是数字,U 是相应的单位。
启用或修改 DTrace 运行时选项或 D 编译器选项。完整的选项列表位于 dtrace(1M)。对于此实用程序,最有用的选项为 aggsize 和 aggrate。如果尝试修改以下选项之一,此实用程序将显示如下错误消息:
Data dropped. Consider using '-x aggsize=8k' option.
aggsize 的缺省值为 512k。aggrate 的缺省值为 1Hz。
下面的列表介绍了 ipstat 报告的列标题和含义:
与此通信流量关联的源 IP 地址或主机名。
与此通信流量关联的目标 IP 地址或主机名。
与此通信流量关联的较高层协议(TCP、UDP、SCTP)。
与此通信流量关联的接口的名称。
抽样间隔内的 IP 通信流量速率。在常规输出中,此速率以每秒字节数(无后缀)、千字节数 (K)、兆字节数 (M)、千兆字节数 (G)、兆兆字节数 (T) 或千兆兆字节数 (P) 为单位来报告。在计算机可解析的输出中,此速率以每秒字节数为单位来表示。–u 选项可用于为此数字指定固定单位。
支持下列操作数:
指定统计信息的重复次数。缺省情况下,ipstat 会一直报告统计信息,直至收到终止信号。
以秒为单位指定抽样间隔;缺省间隔是5秒。
将返回以下退出值:
成功完成。
出现错误。
以下命令报告最活跃的五个 IP 通信流。
$ ./ipstat -l 5 SOURCE DEST PROTO IFNAME BYTES adc-twvpn-2.oraclevpn.com duff.cs.uni.edu UDP net0 6.6K inet-bip2v-10.oracle.com bud.bang.uni.edu TCP tun0 6.1K duff.cs.uni.edu adc-twvpn-2.oraclevpn.com UDP net0 964.0 bud.bang.uni.edu inet-bip2v-10.oracle.com TCP tun0 563.0 coors.foo.uni.edu 255.255.255.255 UDP net0 66.0 Total: bytes in: 12.6K bytes out: 2.2K示例 2 显示时间戳
以下命令报告最大 IP 通信流量同时显示标准日期格式的时间戳。新报告会在前一报告下方输出,间隔设置为十秒。
$ ./ipstat -d d -c 10 Monday, March 26, 2012 08:34:07 PM EDT SOURCE DEST PROTO IFNAME BYTES adc-twvpn-2.oraclevpn.com duff.cs.uni.edu UDP net0 15.1K inet-bip2v-10.oracle.com bud.bang.uni.edu TCP tun0 13.9K duff.cs.uni.edu adc-twvpn-2.oraclevpn.com UDP net0 2.4K bud.bang.uni.edu inet-bip2v-10.oracle.com TCP tun0 1.5K coors.foo.uni.edu 255.255.255.255 UDP net0 66.0 bigip-stbeehive-adc.oracle bud.bang.uni.edu TCP tun0 29.0 bud.bang.uni.edu bigip-stbeehive-adc.oracle TCP tun0 20.0 Total: bytes in: 29.1K bytes out: 3.8K示例 3 指定 DTrace 运行时选项
以下命令将 DTrace 运行时选项 aggsize 设置为 4K。由于此大小对于所收集的数据来说过小,因此会显示一条错误,指示数据已被删除。
$ ./ipstat -c -x aggsize=4k 10 SOURCE DEST PROTO IFNAME BYTES adc-twvpn-3.oraclevpn.com duff.cs.uni.edu UDP net0 11.1K adc-proxy.oracle.com stella.baz.uni.edu TCP tun0 10.3K duff.cs.uni.edu adc-twvpn-3.oraclevpn.com UDP net0 907.0 stella.baz.uni.edu adc-proxy.oracle.com TCP tun0 505.0 coors.foo.uni.edu 255.255.255.255 UDP net0 66.0 duff-lite.cs.uni.edu 182.168.1.255 UDP net0 22.0 duff.cs.uni.edu adc-twvpn-3.oraclevpn.com TCP net0 7.0 adc-twvpn-3.oraclevpn.com duff.cs.uni.edu TCP net0 7.0 coors.foo.uni.edu 169.254.1.255 UDP net0 2.0 Data dropped. Consider using '-x aggsize=8k' option. Total: bytes in: 21.5K bytes out: 2.1K示例 4 生成计算机可解析的输出
以下命令按一秒间隔显示数据,采用计算机可解析的格式,并显示 Unix 格式时间戳。
$ ./ipstat -d u -m 1 timestamp:1333141886 duff.cs.uni.edu:duff-dry.cs.uni.edu:TCP:net0:144 duff-dry.cs.uni.edu:duff.cs.uni.edu:SCTP:net0:128 duff.cs.uni.edu:duff-dry.cs.uni.edu:SCTP:net0:128 duff-dry.cs.uni.edu:duff.cs.uni.edu:TCP:net0:80 coors.foo.uni.edu:169.254.1.255:UDP:net0:40 total:280:240 timestamp:1333141887 duff.cs.uni.edu:duff-dry.cs.uni.edu:TCP:net0:144 duff.cs.uni.edu:duff-dry.cs.uni.edu:SCTP:net0:128 duff-dry.cs.uni.edu:duff.cs.uni.edu:SCTP:net0:104 duff-dry.cs.uni.edu:duff.cs.uni.edu:TCP:net0:80 total:228:228
有关下列属性的说明,请参见 attributes(5):
|
显示的数据并不是抽样数据。这些值表示准确的 IP 通信流量计数。如果数据被删除,则会显示一条错误消息予以指示。