为什么在 snmp 命令中添加@vlan 时 xx.xx.xx.xx 没有响应?

网络工程 思科 snmp
2022-02-13 15:13:20

我想检索连接到 cisco 交换机的主机 MAC 地址。而且我看到很多人说“snmpbulkwalk -v2c -cpublic@vlan hostname BRIDGE-MIB::dot1dTpFdbTable”可以获取主机的mac地址,但是当我添加“@vlan”时就像“-c harvey@10”一样。该命令将返回“超时:XX.XX.XX.XX 没有响应”我的 snmp 配置是“snmp-server community harvey RW”。我不知道他们如何获得信息,我也不能。

1个回答

很有可能给定的交换机不理解SNMP 社区字符串索引,因此由于“错误”的社区字符串而丢弃了您的 SNMP 请求。

尽管如此,根据https://www.cisco.com/c/en/us/support/docs/ip/simple-network-中给出的示例,您尝试使用索引 snmp 社区字符串的 snmpwalk在技术上似乎是正确的管理协议-snmp/40367-camsnmp40367.html但是,该文档已有将近 15 年的历史,并且似乎指的是 CatOS,而如今这种非常古老的网络软件已经很少见到了。

您正在尝试使用哪种 Cisco 交换机?

作为替代方案,有人建议为每个 VLAN 定义一个 SNMPv3 上下文,并在发出 GET 或 WALK 请求时提交 SNMPv3 用户名、密码和上下文:

https://community.cisco.com/t5/network-management/snmpv3-community-string-indexing/td-p/751936

这是一个示例配置,它将让 userv3 访问默认分支以及上下文 vlan-1 和 vlan-100。有关所有可用上下文的列表,请参阅“显示 snmp 上下文”:

snmp-server group v3group v3 auth

snmp-server group v3group v3 auth context vlan-1

snmp-server group v3group v3 auth context vlan-100

snmp-server user userv3 groupv3 v3 auth md5 userv3pw123

然后,在 MG-Soft 中查询 dot1dTpFdbTable 对象时,您将指定上下文名称(例如 vlan-1、vlan-100 等)以及 SNMPv3 用户名和密码。