我能够从交换机中检索ARP表(通过SNMP遍历交换机上的OID
1.3.6.1.2.1.4.22.1.2
)。但是,这并不反映IP的“活动”集,因为当设备离线时ARP不会更新。换句话说,当我重新启动设备并获取一个新的IP地址(动态)时,即使该IP当前不在网络上,我最终也会在ARP表中列出该旧IP地址。我是否可以通过交换机找到该“活动”列表,最好避免使用ARP表?
PS我无法连续ping设备以确定它们的状态,我正在非常低的带宽条件下工作。
#1 楼
是从交换机上的SVI(低带宽)到子网的广播ping,并使用show mac address-table dynamic
排除了问题吗?some-switch#show mac address-table dynamic
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
1 000f.257b.ba3b DYNAMIC Gi1/0/49
1 0011.254f.a5be DYNAMIC Gi1/0/49
56 0000.0c57.aa00 DYNAMIC Gi1/0/49
56 0004.0ff4.8cf4 DYNAMIC Gi1/0/49
56 0004.0af4.c8fb DYNAMIC Gi1/0/5
使用您的ARP表将mac-address映射到IP地址。
可以使用SNMP进行此操作,但是如果您需要知道每个mac-address在哪个端口上,那会有些痛苦...使用dot1dTpFdbAddress要获取mac地址,请先将dot1dBasePortIfIndex映射到接口
ifIndex
,然后将ifName
从ifIndex
映射到您将认识的名称。评论
您能否在第一个解决方案上进行更多扩展?我怎样才能做到这一点? ...此外,dot1dTpFdbAddress和dot1dBasePortIfIndex不返回任何内容:/
– AJ J.
2013年6月24日18:37
我假设您知道如何从CLI显示mac-address表...有关ping的信息,如果您的子网是172.16.1.0/24,则该子网的广播ping会ping的172.16.1.255 ...关于snmp ,我说这很痛苦:-)...您确定使用snmpbulkwalk -v 2c -m BRIDGE-MIB -c
–迈克·彭宁顿
2013年6月24日18:58
注意:任何受远程保护的设备都不会响应广播ping。
–瑞奇
2013年6月24日19:06
@RickyBeam,这就是为什么我说他需要在连接了SVI的交换机上执行此操作的原因……我也意识到Windows默认情况下不应答ping……所以这总比没有好,但是公认不是100%解决方案...我们正在处理此问题中的一些次优约束
–迈克·彭宁顿
2013年6月24日19:14
@AJJ。默认情况下,mac-address表具有五分钟的缓存时间,这些设备的断开连接是否少于五分钟?如果需要实时信息,则需要检查ifOperStatus,这意味着我在答案中提到的复杂的MIB值映射练习。如果所有这些机器都使用DHCP,则可以按照下面GeneralNetworkError的建议考虑使用DHCP监听
–迈克·彭宁顿
2013年6月25日14:06
#2 楼
如果您只想使用动态地址来标识客户端,则可以同时为L3 IP和L2 MAC地址进行DHCP侦听。这用于安全性来阻止恶意DHCP服务器,并且仅允许使用提供和请求的有效DHCP地址(即,实际上正在使用)的交换机端口接收数据包。为您的全局启用dhcp监听您要监视的VLAN
ip dhcp snooping vlan 10,20,30,40,50 no ip dhcp snooping information option no ip dhcp snooping verify mac-address ip dhcp snooping
请确保使用以下方法标识信任的接口,这些接口在其后有DHCP服务器:
interface xy/z ip dhcp snooping trust
IP-MAC地址的示例绑定表:
s-oc2-3h-s1#sh ip dhcp snooping binding MacAddress IpAddress Lease(sec) Type VLAN Interface ------------------ --------------- ---------- ------------- ---- -------------------- B4:B5:2F:DB:85:C6 172.17.3.29 254427 dhcp-snooping 30 FastEthernet1/0/30 3C:07:54:3F:91:CB 172.17.3.26 224542 dhcp-snooping 30 FastEthernet2/0/42 6C:62:6D:77:95:1A 172.17.3.37 256986 dhcp-snooping 30 FastEthernet1/0/17 B4:B5:2F:2D:27:37 172.17.3.22 149352 dhcp-snooping 30 FastEthernet2/0/30 B4:B5:2F:DB:85:C2 172.17.3.18 207629 dhcp-snooping 30 FastEthernet1/0/16 ...
请参阅ciscoDhcpSnoopingMIB以获取对这些对象的SNMP访问。 OID 1.3.6.1.4.1.9.9.380
#3 楼
如果IP是动态的,那么您应该具有dhcp日志来获取mac-ip对。然后使用SNMP,您可以尝试了解所拥有的设备类型。
但请记住,您必须在工作站上配置并允许使用snmp。
如果您正在谈论Windows机器,那么使用Powershell来获取有关工作站的信息会更容易。
也可以尝试使用nmap扫描整个子网。并获得有关其居民的更多信息。
评论
如何获取DHCP日志?
– AJ J.
13年6月24日在20:41
这取决于您的dhcp服务器供应商...
–罗马人Fomicevs
2013年6月25日下午6:10
#4 楼
这可能会破坏您对带宽的要求,但是您可以使用snmp发现软件,例如“ the dude”。您需要适当地设置社区和私有VLAN,以使snmp流量返回到服务器。如果您对此解决方案感兴趣,我可以为您提供有关所需VLAN和SW设置的更多详细信息。
评论
我认为“花花公子”只是在您的帖子中修正了一些拼写错误:-)...当我从HTC发布帖子时,这在我身上经常发生...您是否在使用手机?
–迈克·彭宁顿
13年6月28日在9:29
评论
有什么答案对您有帮助吗?如果是这样,您应该接受答案,这样问题就不会永远弹出来寻找答案。或者,您可以发布并接受自己的答案。