Linux系统的通信分析工具中,有的程序功能强大,特性也不少,如ntop 和vnstat等就得到了广泛使用。不过,有时,你只是需要一个能够给你快速分析通信量的工具,它可以提供进出网络主机的通信量基本信息。 Darkstat,是一个数据包嗅探器,它以一个后台过程的形式运行,并能完成上述任务。它收集关于网络利用情况的统计数据,并通过HTTP协议显示出 来。

  笔者在CentOS 5和 Fedora 7系统上测试了最新的版本(darkstat-3.0.707.tar.bz2)。你可以用tar-xvjf darkstat-3.0.707.tar.bz2解开新的内核源程序,然后安装之。要调用darkstat,请键入:

 

以下是引用片段:
  darkstat –i eth0

  这个程序会在选中的接口开始检查数据,并以后台形式运行,并将结果返回到外壳。这些行看起来是如下的样子:

 

以下是引用片段:
  darkstat 3.0.707 (built with libpcap 2.4)
  darkstat (19646): starting up
  darkstat (19646): daemonizing to run in the background!
  darkstat (19647): I am the main process
  darkstat (19647): DNS child has PID 19648
  darkstat (19646): parent waiting
  darkstat (19647): caplen is 54
  darkstat (19648): set uid/gid to 99/99
  darkstat (19647): capturing in promiscuous mode
  darkstat (19647): listening on 0.0.0.0:667
  darkstat (19647): loaded 129 protos
  darkstat (19647): loaded 4594 tcp and 4549 udp servs, from total 9158
  darkstat (19647): chrooted into: /var/empty
  darkstat (19647): set uid/gid to 99/99
  darkstat (19647): local_ip update(eth0) = 192.168.0.5
  darkstat (19647): entering main loop
  darkstat (19646): parent done reading, calling waitpid
  darkstat (19646): waitpid ret 0, status is 3
  可以从第三行看出,darkstat作为一种服务运行,并自动成为一个后台进程。第四行指出了其PID。如果要终止这个程序可以用:

 

以下是引用片段:
  kill -9 19647

  或

 

以下是引用片段:
  killall darkstat

  但用户必须用一个浏览器(http:server:667)来显示由darkstat所收集的数据,其实用darkstat自身内置的Web服务器就可以实现。第十行指明了667是浏览器应当连接的端口。用户可以用-p选项将它改为另外一个端口。

  -l开关用“网络/掩码”的语法形式定义了一个本地网络,这个网络的所有通信(进入的或离开的)都以图形化的形式显示。-f选项允许用户过滤数据包:

 

以下是引用片段:
  darkstat –i eth0 –l 192.168.0.0/255.255.255.0 –f "port 22"

  在这个例子中,我们正在过滤运行在22号端口上的SSH协议的网络数据包,因此用户可以定义哪些机器正在使用这个协议。其过滤器语法基于tcpdump,用户可以参考其文档以了解更多的信息。

 

Darkstat帮你快速分析网络通信(组图)  _Darkstat 

 图1

 

Darkstat帮你快速分析网络通信(组图)  _快速分析_02 

  图2

 Linux系统的通信分析工具中,有的程序功能强大,特性也不少,如ntop 和vnstat等就得到了广泛使用。不过,有时,你只是需要一个能够给你快速分析通信量的工具,它可以提供进出网络主机的通信量基本信息……

 

Darkstat帮你快速分析网络通信(组图)  _Darkstat_03 

图3

   Darkstat很简单,因此不要期望它有什么特异功能。图1中的页面显示了四个图表和一些基本的信息。将鼠标放到柱形图的某个柱上就会以字节 数显示这个时点进入和输入的数据。图2显示了网络上每台主机的IP地址和MAC地址,以及进入、转出的数据包数量。在IP地址上单击,就会显示关于特定主 机的更多信息,如哪些端口是开放的,正使用哪些协议。用户可以按照降序对进入、转出和总共的流量进行排序。

  不过,darkstat显示在浏览器中的信息并不能自动加载,因此为了刷新内容,你必须重新加载页面。不过, dartstat数据能够以简单易懂的形式显示局域网中的基本通信信息,对一般的网络监视、管理已足矣。