问题 检测非托管第2层交换机的网络图算法?


我继承了一个由大约50台台式机,各种服务器,网络打印机和路由器/交换机组成的仓库/前台网络。

“智能”路由器存在于服务器机房中。随着公司的发展,我们已经吞并了额外的空间,并没有非常优雅地运行各种长度的CAT5通过天花板等。我一直在天花板上找到各种集线器和开关 - 没有任何标签或以任何方式记录。

当然,das blinken-lights告诉我 有人 连接到这些设备,我只是无法找到

我可以运行传统的网络地图工具(有很多这些东西),它向我展示了网络中基于IP的东西。这很好,但我已有的信息。我需要知道的是网络拓扑 - 交换机(网桥)如何互连等等。由于它们是现成的linksys非托管类型,它们不响应SNMP所以我不能使用它...

什么是最好/最便宜的工具,我可以用它来分析和检测网络中不响应SNMP的集线器和交换机等事情?

如果没有你知道的工具 - 你会建议找出什么通用算法?我的猜测是,我可以查看设备(交换机,台式机等)的MAC转发表并以此方式构建链,但我不知道是否可以从非管理型交换机获取该链(更不用说一个中心)。

(这个专利有一些巧妙的想法,但我找不到任何用它构建的软件: http://www.freepatentsonline.com/6628623.html

谢谢!!


2680
now


起源



答案:


一个想法可能是使用像3com网络导演试用版(或The Dude)这样的程序。使用它来发现所有工作站和其他任何具有IP地址的工作站。

等待一段安静的时间并拔下每个集线器/交换机...然后你至少可以开始制作一张地图了,剩下的就是跟着电缆爬行了。网络管理确实意味着变脏。


4
2017-09-17 13:12



哦,我喜欢这个主意。然而,这是破坏性的,所以这意味着我可以在深夜或周末做到这一点......但我认为这可行... - Matt Rogish
是的,这是非常具有破坏性的。但希望你能找到一切。通常有助于使用手机进行另一次perosn :-)。我有时不得不在一些正确的肮脏地方爬行。 - Tubs


答案:


一个想法可能是使用像3com网络导演试用版(或The Dude)这样的程序。使用它来发现所有工作站和其他任何具有IP地址的工作站。

等待一段安静的时间并拔下每个集线器/交换机...然后你至少可以开始制作一张地图了,剩下的就是跟着电缆爬行了。网络管理确实意味着变脏。


4
2017-09-17 13:12



哦,我喜欢这个主意。然而,这是破坏性的,所以这意味着我可以在深夜或周末做到这一点......但我认为这可行... - Matt Rogish
是的,这是非常具有破坏性的。但希望你能找到一切。通常有助于使用手机进行另一次perosn :-)。我有时不得不在一些正确的肮脏地方爬行。 - Tubs


你可能不能明确 检测 非托管设备......但是你的托管设备上有MAC - >交换机端口映射,对吗?如果是这样,你应该能够 推断 存在多个连接客户端的非托管交换机/集线器 - 我不知道你如何找到只有一个端口的端口。

  1. 记录所有智能交换机和客户端设备的MAC地址
  2. 从一个已知的智能开关开始
  3. 对于交换机上的每个端口,列出它转发的MAC地址。如果它列出一个客户端,它是直接的。如果它不止一个,并且没有一个地址在你已知的交换机MAC中,那么你就有了一个愚蠢的开关。如果它在您的已知交换机集合中有多个且一个地址,请在此交换机上进行递归。

您可能在网络拓扑中没有任何意外循环(或者您的网络可能无法正常工作),因此您可以假设核心之外的树结构。


3
2017-09-17 13:24



我想到了 - 但下游我有一个'哑'开关菊花链接到另一个哑开关 - 所以我没有任何可见性进一步下游... - Matt Rogish
O.O Yup。是时候弄脏了,然后;-) - Nate
我当时很害怕。但看起来如此。好极了 :) - Matt Rogish


您可以尝试从智能交换机中获取生成树协议信息;甚至非托管交换机也必须参与此协议(但这不适用于集线器)。


3
2017-09-19 13:32





热门问题

不使用eval / new函数的JavaScript模板库 当涉及内部类时,Java继承如何工作 .NET Windows服务的奇怪问题 在.ipa或.app下查找App ID 快速入门XSLT参考[关闭] 如何找出Android应用程序中未使用的资源 Ruby中并发的同步方法[重复] 将std :: chrono :: system_clock :: time_point转换为struct timeval并返回 Google Drive API V3(javascript)更新文件内容 Bootstrap 3.0 - 将元素推到底部 受密码保护的.NET ClickOnce部署? 如何用postgresql安装wordpress coq Set或Type如何成为命题 硒滚动元素进入(中心)视图 在Spring Transaction JUnit测试中自动装配Hibernate会话的正确方法 Git的Dockerfile策略 如何在FOS_PICKFOLDER中使用IFileDialog,同时仍在对话框中显示文件名 在Firefox扩展中复制Google Chrome浏览器操作弹出效果 CakePHP找到MAX 芹菜 - 完成任务的召唤功能 从使用fmemopen创建的流中读取宽字符 .NET是否为每个程序集创建一个字符串实习池? DefaultModelBinder不绑定嵌套模型 Navigator.MediaDevices.getUserMedia()使用了哪些相机通信标准? 选择命名空间名称时应该知道什么? cout Swagger Codegen CLI Java客户端 - 如何正确使用它 一个很好的哈希函数用于采访整数,字符串? Maven 3 ciManagement配置的目的是什么? 如何通过语言文化获取代码页?