如何使用SNMP OID轮询ARP表?

当您需要轮询设备的ARP表时,传统的观点是使用ipNetToMediaPhysAddressatPhysAddress ; 但是,根据思科的文档,这两个OID都被弃用了。

这些OID工作得很好; 然而,我正在构build一个新的工具,所以如果可能的话,使用最新的OID是有意义的。

是否有一个不被弃用的SNMP OID来查询设备中的ARP表? 到目前为止,Google还没有为我提供这个答案。


Mircea的答案在较新的IOS上运行良好…

 [mpenning@something]$ snmpbulkwalk -v 2c -c public -Osq 192.0.2.1 ipNetToPhysicalPhysAddress ipNetToPhysicalPhysAddress.2.ipv4."192.0.2.1" a4:4c:11:90:56:80 ipNetToPhysicalPhysAddress.2.ipv4."192.0.2.2" a4:4c:11:96:68:0 ipNetToPhysicalPhysAddress.2.ipv4."192.0.2.101" 0:90:b:43:80:74 [mpenning@something]$ snmpbulkwalk -v 2c -c public -Oqv 192.0.2.1 sysDescr Cisco IOS Software, C3900 Software (C3900-UNIVERSALK9-M), Version 15.2(2)T1, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2012 by Cisco Systems, Inc. Compiled Wed 29-Feb-12 23:44 by prod_rel_team [mpenning@something]$ 

较旧的IOS需要使用ipNetToMediaPhysAddress

您应该使用RFC 4293定义的ipNetToPhysicalTable 。 所以ipNetToMediaPhysAddress成为ipNetToPhysicalPhysAddress

ipNetToMediaTable对象types语法IpNetToMediaEntry的序列最大权限:不可访问状态:不build议使用说明:“IPv4地址转换表”,用于从IPv4地址映射到物理地址。

  This table has been deprecated, as a new IP version-neutral table has been added. It is loosely replaced by the ipNetToPhysicalTable." ::= { ip 22 }