直接通过端口号检索 MAC 地址(使用 SNMP)

网络工程 snmp
2022-02-13 21:13:54

目前您必须搜索整个转发数据库表,因为 SNMP包含 MAC 地址,而 SNMP包含端口号:

snmpbulkwalk -c public -v 2c switch 1.3.6.1.2.1.17.4.3.1.2 | grep "INTEGER: 123"
0.34.107.48.216.142 = INTEGER: 123
^^^^^^^^^^^^^^^^^^^ MAC Address in decimal on port 123

是否存在包含“端口 - > MAC”关联的标准 SNMP 子树?或者有没有更有效的方法来做到这一点?

这样您就不必使用snmpwalk交换机,而是可以简洁地查询某个端口,这肯定会减轻交换机 CPU 的负载并加快查询速度。


背景

我目前正在尝试找出执行 MAC 身份验证的 NAC(网络访问控制设备)会给设备带来什么样的负担。

请不要告诉我 MAC 身份验证不安全。我知道。但你必须以某种方式开始。

我知道您也可以使用 Radius(直接传输 MAC 地址)。但是不确定当有人插入“哑”开关=多个设备/MAC时会发生什么情况。

让我们坚持这样一个事实,即这将是一个通用的 NAC,它在链接出现时接收 snmp 陷阱,然后开始工作。

1个回答

我想答案是没有答案,除了没有标准规定了这个要求。

相反,当您想使用 SNMP 或某些管理 GUI(通常在其后端使用 snmp)时,您必须执行六次这样的查找,而 CLI 通常有一个命令可以在一个步骤中显示地址.