这对专家来说可能显得天真……但最近我一直在想。
多年来,我一直使用ntop和一个便宜的4端口中枢来嗅探客户端networking,以确定谁在做什么 – 多less。 当他们打电话说“Geeze,networking今天看起来真的很慢”的时候,看看发生了什么的好方法。 不需要引入托pipe交换机(或访问现有交换机),也不需要configuration生成或镜像。 我只是在我想要测量的内联轴线上下降。
最近我注意到,再也无法购买一个真正的诚实中心了。 在寻找一个新的,我有人告诉我,我应该一定要得到一个全双工中心,或者我只能看到一半的stream量,当我监视。
真?
我一直在使用一台硬壳的旧式的Netgear DS104。 没有线索,如果它是一半或FD。 我真的低估了我的测量结果吗? 我只是不够明确的物理层真正知道…
附注:刚刚订购了Dualcomm以太网交换机TAP作为集线器的替代品。 看起来像一个漂亮的小工具。 任何关于它的笔记或提示将受到欢迎,在评论:-)
事情是,虽然集线器通常只允许半双工通信(我听说过全双工集线器,但我从来没有见过),但这并不意味着你只看到一半stream量,这意味着通过集线器相互通信的设备将以半双工方式进行通信。 您仍然会看到所有通过集线器的stream量。 当clientA与clientB通信时,你会看到,当clientB响应clientA时,你也会看到。 集线器将stream量转发到所有端口,因此无论双工都可以看到所有stream量。
在监控过程中,您可能会引入临时性能问题,因为连接到集线器的任何设备都可能尝试以全双工方式进行通信(尤其是在硬编码为全双工时)因此会发生冲突,由于集线器的半双工性质,除了“减速”之外,还需要重新发送相当多的业务。
使用集线器的好处在于它可以作为被动的networking接口。 您可以将其插入到客户交换机和防火墙/路由器之间,监控其互联网使用情况,查看谁在哪里,查看使用情况(HTTP,FTP等),查看他们的互联网连接有多less,并查看networking中存在多less广播stream量。
你可能没有看到与networking上的特定主机相连的问题,因为你无法在networking上的每个主机之间插入集线器(只能将集线器连接到一个交换机端口,而不是全部)。 为此,您需要具有端口镜像function的交换机,以便您可以将来自特定交换机端口或端口组的stream量镜像到您的监控端口。
我使用一个集线器和端口镜像function的交换机,这取决于我正在排除故障的问题。 我通常从连接客户交换机和防火墙/路由器的集线器开始。 这给了我一个关于有多less互联网stream量,它是什么样的stream量,并给我一个在networking上发生多less广播的感觉。 我想说的是,在大多数情况下,问题原因是互联网带宽不足,或者导致拥塞,重传,慢ACK,重复ACK等的大量广播。
根据你的习惯,一个便携式的解决scheme是build立你自己的网桥。 任何有两个接口的笔记本电脑都可以做到。 将电线从墙上插入一个接口,然后将第二根电线连接到报告问题的设备上,然后在电桥上运行嗅探。
双端口可以通过多种方式find。 USB NIC,或使用某些便携式计算机上从未使用的ExpressCard插槽添加第二个GigE NIC(NewEgg上的示例设备 )。
在Linux上,这是一些根模式命令来设置它。
brctl addbr snifbr brctl addif snifbr eth0 eth1
同样可以通过互联网连接共享和其他方式在Windows上完成,但我不知道他们是什么在我头上。
而现在,一个附注:
这样做容易,是一些networking部署端口级安全的原因之一。 为特定的以太网插口注册一个特定的MAC地址,这种内联的数据包捕获要困难得多。 不是不可能的,只是更难。
使用这种方法的优点是,它不需要为交换机/集线器额外的电源砖,它是在笔记本电脑中的所有独立。 如果需要的话,你甚至可以在桥上添加一个地址。
ifconfig snifbr 10.31.25.101 netmask 255.255.255.0
和SSH进入远程捕获。
如果是集线器,它必须是半双工的。 很难find一个中心,几乎不可能find一个100MB的“枢纽”。
这些天10MB只是不削减,所以枢纽真的不是一个很好的解决scheme。
可以做端口镜像的pipe理交换机现在并不是那么昂贵。 或者,如果你喜欢滚动贫民窟的风格,你可以build立自己的networking水龙头。
这是关于如何启用端口镜像的交换机和指令列表。
如果你使用networking分stream器,通常你需要2个接口来监测给定的链路 – 你需要监测进出,希望你的软件可以为你做聚合。