通过PORT监控networkingstream量/使用情况

如果这个话题没有问题,我提前道歉。

目前我正在使用Icinga和Cacti来分别监控机器和networking。 虽然我没有这个设置的大问题,我真的很想有实时监控networkingstream量BY PORT的选项。

有没有这样的工具? 我只知道Paesler和Solar Winds,但是现在什么都不是开源的。

有任何想法吗?

你问的想法和…这是我的。

为了解决你的问题,你有两个非常有限的条件:

  1. 你无法接触思科(因为它不是你的,它的configuration不能改变,以满足你的需求);

  2. 你不能改变(至less,不是很容易)Zeroshell的工作方式(由于Zeroshell本身的特性(根据你的需求重新构buildZeroshell是相当复杂的)。

另一方面,如果你想REAL_TIME_MONITORING和PER-PORT-TRAFFIC-ACCOUNTING,你大多被迫至less有一个点(一个networking接口),其中:

  1. 所有的交通将会stream动,所以你要“考虑”所有的交通;
  2. 该界面由您可以pipe理的某些设备“拥有”。

在这种情况下,我所做的是将现有的设备(在你的情况下是:零件箱;在我的情况下,来自不同供应商的各种硬件设备)replace成我可以完全pipe理而没有限制的东西:一个至less有两个接口正确configuration路由/防火墙stream量。

让我们假设这对你来说可能是好的(…即使强硬,我明白这可能是一个问题,对你来说,由于最初的设置努力)。

如果这样的机器是可用的, 那么我会添加到一组软件来安装它:

  • IPTRAF :尽pipe它的年龄,它仍然是完全能够从您的networking接口发出实时数据。 它提供了一个字符用户界面,所以它可以在一个简单的SSH连接(没有网页,没有大的图书馆等)远程启动。

  • NTOP :从官方网站:“ 一个显示networking使用情况的networkingstream量探测器,类似于stream行的顶级Unix命令…… ”。 NTOP比IPTRAFfunction丰富得多。 绝对更强大(但configuration/安装比单个“ apt-get install ”或“ yum install ”更复杂)

如上所述,上述两个工具都提供了很好的实时数据(正如您在问题中提出的那样)。 无论如何,我很确信你还需要asynchronous数据:我确定你也希望能够检查一下这样的东西:“ 谁是昨天生成/消耗大部分stream量的主机/ MAC?协议? “,可能会将这些数据回溯到单个IP / MAC / PORT,并降低到1分钟的粒度。 你不是吗? 在这种情况下,我强烈build议:

  • PMACCT :来自官方网站:“ … pmacct是一套小型的被动networking监测工具,用于测量,计算,分类,聚合和导出IPv4和IPv6stream量。 ” 请注意,PMACCT可以解决很多问题,其中大多数适用于大/大型ISP /运营商。 尽pipe如此,它可以完美的运行在你的linux-box上并且考虑到stream量沿着它的接口stream动。 有了这样的configuration:

host:~# cat /etc/pmacct/pmacctd.conf interface: eth0 daemonize: true aggregate: src_mac,dst_mac,src_host,dst_host,proto,src_port,dst_port ports_file: /etc/pmacct/ports.list plugins: mysql sql_user: pmacct sql_passwd: sqlpassword sql_db: pmacct sql_table: acct_v4_%Y_%m_%d [...] 

它可以很容易地跟踪在mysql表中沿eth0stream动的stream量,因此您可以使用通用/简单的SQL查询来轻松检查networking上发生了什么。

只是为了给你一些真实的数字,我已经成功地使用XEON X3350服务器上的PMACCT; 4GB的RAM; 4个broadcom GigaEth接口; 在eth0和pmacct上configuration了近70个VLAN监听所有VLAN; 每天路由的+/- 300GB的各种IPstream量; PMACCT生成EVERY_MINUTE,EVERY_VLAN,EVERY元组(src_mac,dst_mac,src_ip,dst_ip,src_port,dst_port); 每天+/- 60万美元的会计logging。 所有这一切,没有任何问题(但写在文本文件,而不是在MySQL中)。 在较小的环境中,无论如何,直接写入MySQL都没有问题。

另外,请注意,由于PMACCT,我每天跟踪在我的networking上看到的每个 IP地址(换句话说,我知道自2014年7月16日以来没有看到10.29.19.89; 172.17.1.45从未[自PMACCT会计开始以来];等等)。

同样在PMACCT上:我configuration了连接主互联网网关的以太网交换机,将其stream量“镜像”到一个空闲端口,在那里我插入了一个特殊的linux-box来logging所有的互联网stream量(一个1GE的链路) 。 没有问题。

关于PMACCT的最后一个注意事项:你是否应该(或者其他一些读者)想知道为什么我select一些更常见的NETFLOW / IPFIX探测器/采集器,原因很简单:PMACCT是我发现的唯一一个能够loggingMAC -addresses。

此程序可以通过端口10-Strike带宽监视器( http://www.10-strike.com/bandwidth-monitor/ )监控stream量,另一个优点是可以将所有监控结果实时显示在图表和图表中访问程序的网页,有很多的截图