Windows (Server 2012) ifIndex 持久化

Windows (Server 2012) ifIndex persistence

我正在通过 SNMP 在某些 PC 运行 windows 上对特定适配器进行一些轮询。我注意到使用由接口的 ifIndex 构造的 OID 进行轮询是不可靠的,因为 ifTable 似乎是动态创建的。 我发现一些 Cisco 文档提到 ifIndex 从 RFC2863 开始不再持久。该文档介绍了 Cisco 路由器的一项功能,允许在重新启动之间保持 ifIndex。

这样的事情在Windows能实现吗?我想避免接口的枚举和识别,因为它是 impractical/difficult 为我的应用程序做的

与(较新的,IOS 12+)Cisco 设备不同,Windows 没有固定的接口方案。

接口列表在启动时生成,并且可以在 运行 时更改(想想无线、dial-up、VPN 或隧道接口;或 link 丢失)。也就是说,在稳定的 Windows 系统上,值 应该 是一致的。

我会尝试最后一个已知值,进行健全性检查,如果失败,re-enumerate 接口。