【问题标题】:Get data from the port of the switch a pc is connected to从电脑连接的交换机端口获取数据
【发布时间】:2015-04-12 01:46:06
【问题描述】:

我正在对我们学校的实验室进行清单和审核。它需要跟踪每个实验室是否有 PC 转移。每个实验室都有自己的网络。因此,如果仅通过 IP 地址,甚至不可能知道转移。是否可以从 PC 连接的交换机端口获取数据?

【问题讨论】:

    标签: windows ip-address mac-address switching


    【解决方案1】:

    是的,如果您的交换机支持 SNMP。您可以通过网络接口卡的 MAC 地址来跟踪 PC(只要它们不改变)。有一些 OID 对于获取此信息可能很有趣。首先是:

    1.3.6.1.2.1.17.4.3.1.1 (dot1dTpFdbAddress):

    网桥具有转发和/或过滤信息的单播 MAC 地址。

    如果您的网络真的很简单,比如实验室用一个交换机,没有 VLAN 等。您可以通过第一个 OID 并从交换机获取 MAC 地址,将它们与您的 PC 数据库交叉引用并检查您的任何内容需要检查。

    如果您确实有 VLAN 或有多个实验室连接到单个交换机,则您需要更深入地找到 PC 连接到的端口。

    1.3.6.1.2.1.17.4.3.1.2 (dot1dTpFdbPort):

    值“0”或端口的端口号,在该端口上看到源地址等于 dot1dTpFdbAddress 的相应实例的值的帧。

    1.3.6.1.2.1.17.1.4.1.2(dot1dBasePortIfIndex):

    在 MIB-II 中定义的 ifIndex 对象实例的值,用于与此端口对应的接口。

    1.3.6.1.2.1.31.1.1.1.1(ifName):

    接口的文本名称。该对象的值应该是本地设备分配的接口名称,并且应该适合在设备的“控制台”输入的命令中使用。

    以下是手动执行此操作的示例(在某些 Linksys 交换机上),但您可以轻松编写一个脚本来执行此操作并返回它们学习的 MAC 地址和端口列表。

    # snmpwalk -v2c -c "your_community" switch.example.com 1.3.6.1.2.1.17.4.3.1.1
    SNMPv2-SMI::mib-2.17.4.3.1.1.64.85.57.242.44.224 = Hex-STRING: 40 55 39 F2 2C E0
    

    遍历此 OID 将列出交换机已获知的所有 MAC 地址。在我的示例中,为简单起见,只有一个 MAC 地址 (40:55:39:f2:2c:e0)。接下来要查找该MAC地址的网桥端口号:

    # snmpget -v2c -c "your_community" switch.example.com 1.3.6.1.2.1.17.4.3.1.2.64.85.57.242.44.224
    SNMPv2-SMI::mib-2.17.4.3.1.2.64.85.57.242.44.224 = INTEGER: 6
    

    您在 OID 中看到的其他数字是 MAC 地址的点分十进制表示。在此之后,您从网桥端口号获取接口索引,最后是接口名称(端口名称)。

    # snmpget -v2c -c "your_community" switch.example.com 1.3.6.1.2.1.17.1.4.1.2.6
    SNMPv2-SMI::mib-2.17.1.4.1.2.6 = INTEGER: 6
    # snmpget -v2c -c "your_community" switch.example.com 1.3.6.1.2.1.31.1.1.1.1.6
    IF-MIB::ifName.6 = STRING: Port6
    

    您发现一个具有 40:55:39:f2:2c:e0 MAC 地址的主机连接到端口 6。如果您正在处理一些更高质量的设备(如 Cisco),您应该知道他们可能会为每个 VLAN 保留单独的实例并使用称为 SNMP Community String Indexing 的东西,您可以在其中将 Vlan 索引添加到您的社区字符串中,如下所示(对于 Vlan 123 ):

    # snmpwalk -v2c -c "your_community"@123 switch.example.com 1.3.6.1.2.1.17.4.3.1.1
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-14
      • 2015-02-13
      • 1970-01-01
      • 2013-10-16
      • 1970-01-01
      • 2017-04-07
      • 1970-01-01
      • 2019-12-19
      相关资源
      最近更新 更多