TCLSH: comprobación de conectividad

Objetivo del laboratorio:

  • Aprendizaje básico de scripts en TCL
  • Rip versión 2 básico
  • Comprobación de conectividad

Requisitos:

  • GNS3 (versión usada 0.5)
  • IOS: versión mínima: 12.3(2)T (versión usada 12.4-21)
  • Ficheros del laboratorio (descargar zip con el laboratorio completo)

NOTA 1: Se recomienda hacer el laboratorio desde cero en vez de copiar y pegar para aprender.

NOTA 2: Los path del fichero .net se deben ajustar a los de tu ordenador.

Esquema:

Laboratorio TCLSH del comando foreach para comprobar conectividad con el comando ping

Explicación:

Para entrar en el modo de script de TCL debemos teclear en el router en modo privilegio y nos cambiará el prompt para reflejar que estamos en dicho modo:

router# tclsh
router(tcl)#

Para salir del modo script TCL tecleamos el siguiente comando:

router(tcl)# tclquit
router#

Uso de la instrucción foreach para repetir una acción de forma automática, como puede ser hacer ping a diversas IPs. El formato de la instrucción foreach es al siguiente:

foreach variable {
valor1
valor2
.
.
valorX
} {
instruccion1
instruccion2
.
.
instruccionY
}

En este ejemplo vamos a usar como variables direcciones IPs que queremos comprobar y como instrucción el comando ping para comprobar cada una de las direcciones IP. En este caso solo usamos una sola instrucción pero se podría hacer algún otro comando con las direcciones IP. Abrimos nuestro editor favorito y escribimos el script completo para luego pegarlo en el router.

foreach ips {
 192.168.1.1
 192.168.2.1
 192.168.3.1
 192.168.4.1
 192.168.10.1
 192.168.11.1
 192.168.101.1
 192.168.102.1
 192.168.103.1
 192.168.104.1
 192.168.10.2
 192.168.12.1
 192.168.101.1
 192.168.102.1
 192.168.103.1
 192.168.104.1
 192.168.10.2
 192.168.12.1
} {
ping $ips
}

Comandos sugeridos para comprobación de posible errores:

  • show ip protocols
  • debug ip icmp
  • debug ip packet

Retro

Lugares

Redes

Sistemas

Varios