我需要从路由器获取路由表,我认为 snmp 可以做到这一点,有没有好的 snmp 客户端可以实现这一点,或者有没有不涉及 snmp 的解决这个问题的方法?提前谢谢
答案1
假设你的路由器支持 SNMP和正在通过 SNMP 导出其路由表,那么 SNMP 客户端可以检索此信息。
一个“好的” SNMP 客户端取决于你正在寻找什么。作为一个 Unix 爱好者,我建议snmpwalk
使用 net-snmp 工具发行版。其他流行的工具包括 HP OpenView 等商业工具,或免费的iReasoning 的 MIB 浏览器。
无论如何,您需要的路由表 MIB 是1.3.6.1.2.1.4.21
- 这将是一个反映 IP 路由表内容的 SNMP 表。(感谢我们的姊妹网站堆栈溢出在 Google 搜索中弹出,让我免于查看 MIB 文件 :-)
答案2
使用网络管理协议(OID ip.ipRouteTable.ipRouteEntry)或您首选语言的库。此外,您还可以使用 telnet/ssh 进行远程调用命令。