从启用了SNMP的任意路由器获取互联网rx tx八位字节计数

Get internet rx tx octet count from arbitrary router with SNMP enabled

提问人:alex 提问时间:11/16/2023 更新时间:11/16/2023 访问量:11

问:

使用以下脚本从路由器获取互联网流量是否是一种可靠的方法:

ROUTER_IP=$(ip route | grep default | awk '{print $3}')
WAN_PORT_INDEX=$(snmpget -L n -O qv -v2c -c public -m ALL $ROUTER_IP RFC1213-MIB::ipRouteIfIndex.0.0.0.0)
BYTES_IN=snmpget -c public -v2c  192.168.51.1 IF-MIB::ifInOctets.${WAN_PORT_INDEX}
BYTES_OUT=snmpget -c public -v2c  192.168.51.1 IF-MIB::ifOutOctets.${WAN_PORT_INDEX}

我已经检查了Mikrotik路由器和启用了SNMP的旧cisco路由器指向WAN接口。这是偶然还是故意的?RFC1213-MIB::ipRouteIfIndex.0.0.0.0

Linux SNMP MIB

评论

0赞 Lex Li 11/17/2023
不一定。OID 是指网络设备的 IP 路由表中默认路由的接口索引,该路由可以是路由器、交换机,甚至是具有路由功能的计算机。这是否映射到典型路由器上的 WAN(广域网)接口取决于特定的网络配置。在许多常见的网络设置中,尤其是在家庭或小型办公室环境中,默认路由通常指向互联网,通常可以通过 WAN 接口访问互联网。在这种情况下,这可能确实对应于 WAN 接口。

答: 暂无答案