SNMP - 一次调用即可获得完整的 Mac 表

标签 snmp mac-address

对于我的项目,我需要从 switch 下载 mac 表并尽快完成。官方solution有点慢。它需要获取所有 Vlan 的列表,并为每个触发单独调用带有 OID=.1.3.6.1.2.1.17.4.3.1.1 的 snmpwalk 和用 vlan 编号索引的社区字符串。这可能会花费大量时间,因为我们交换机上的 vlan 数量在几十个范围内。 有没有办法一次从 mac 表中获取所有 mac 地址(一些特殊的社区索引代表所有可用的 vlan 索引)? 提前致谢..

最佳答案

我认为 BRIDGE-MIB::dot1dTpFdbTable (1.3.6.1.2.1.17.4.3) 可以胜任。可以简单地检索 dot1dTpFdbPort (1.3.6.1.2.1.17.4.3.1.2) 来检索学习 MAC -> PORT 表。对于我的 DLINK DGS-1216T,我可以通过以下命令从我的 Linux 机器中获取 mac-to-port 表:

$ snmpwalk -O0sUX -v2c -Cc -c public 192.168.0.1 BRIDGE-MIB::dot1dTpFdbPort

此外,我还为维护 MAC 找到了额外的(第 17 个)端口号。

关于SNMP - 一次调用即可获得完整的 Mac 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5866703/

相关文章:

java - 尝试了解 snmp4j Agent JMX 的作用以及它是否适合我的需要

port - 使用 snmptrap 时指定端口

android - 无需连接WiFi即可获取MAC地址

Android在棉花糖中获取蓝牙地址

postgresql - PostgreSQL中MAC地址的位操作

SNMP 直通命令未随 snmpget 返回

java - 用于通用应用程序消息传递的 snmp 陷阱 OID 是什么?

asp.net - 如何从 HTTP 请求中获取 MAC 地址?

networking - 是否可以找出直接有线连接设备的MAC地址?

snmp - SNMPv3 是否需要使用用户名/身份验证和社区字符串?