martes, 8 de febrero de 2011

Obtener la tabla BGP de un router Cisco por SNMP

Objetivo:
Deseo obtener la tabla BGP de un router Cisco por SNMP

Procedimiento:
El siguiente procedimiento se hizo desde un Laptop con Mandriva y snmp-utils instalado. El router fue un Cisco 7200 con IOS 12.3

- Instalar snmp-utils debido a que es necesario la aplicación snmpwalk
#urpmi net-snmp-utils

- El MIB utilizado es el CISCO-BGP4-MIB, puedes compilarlo en tu equipo o ir directamente al OID.

- El objeto escogido por mi persona es: cbgpRouteBest el cual corresponde el OID 1.3.6.1.4.1.9.9.187.1.1.1.1.18

- El comando para obtener la tabla BGP que puedes utilizar es:
#snmpwalk -v 1 -c MICOMUNIDAD MIROUTER .1.3.6.1.4.1.9.9.187.1.1.1.1.18

La salida del comando es bastante extensa y puede ser hasta engorroso de leer. La salida es algo similar a:

SNMPv2-SMI::enterprises.9.9.187.1.1.1.1.18.1.128.1.4.3.4.5.6.12.0.0.30.228.0.0.0.2.199.60.28.0.24 = INTEGER: 1

El prefijo BGP se encuentra ubicado justo antes del "=" en formato octeto1.octeto2.octeto3.octeto4.mascara

Por ello, para obtener una salida limpia utiliza el siguiente mini-script:

#snmpwalk -v 1 -c MICOMUNIDAD MIROUTER .1.3.6.1.4.1.9.9.187.1.1.1.1.18
| cut -d "=" -f1 | awk -F. '{print $(NF-4) echo "." $(NF-3) echo "." $(NF-2) echo "." $(NF-1) echo "/" $(NF)}'

La salida será algo similar a:
190.124.165.0/24
190.196.224.0/20
192.33.14.0/24
192.58.128.0/24
192.197.157.0/24
193.116.0.0/14
199.60.28.0/24

Más info:
http://www.cisco.com/en/US/docs/ios/12_0s/feature/guide/sbgprmib.html
ftp://ftp.cisco.com/pub/mibs/oid/CISCO-BGP4-MIB.oid

1 comentario:

  1. Me gustaría obtener sólo las redes que publico por bgp, es decir , las directamente conectadas. ¿Que varible debo modificar?

    ResponderEliminar

¿Algo adicional que quieras mencionar? ¿Algun consejo?, ¿truco? Gracias!

¿Qué historia hay detrás de las famosas máscaras de red?

Introducción ¿Recuerdas cuando estabas aprendiendo de máscaras de red? Seguro llegaste a pensar: “no sirven para nada”, “no las voy a necesi...