cómo se borra el IOS guardando la configuración, mencioné algunos métodos fáciles para recuperarlo, en ésta entrada describiré el procedimiento con el que se puede usar un enrutador como servidor TFTP, que es mi forma preferida de recuperar IOS en el laboratorio, en una próxima publicación describiré algunos interesantes comandos que trae la última versión del IOS. Espero que encuentre útil esta información o por lo menos interesante. Ya describí antes cómo es de fácil borrar accidentalmente el IOS y también cómo es posible que nadie se da cuenta en el momento en que ocurre. Si alguien ha leído las entradas anteriores, ya puede reconocer el error cuando lo comete y puede evitar al instructor la tarea de recuperar el IOS y ganar unos puntos con él o ella, al mismo tiempo que refuerza los conceptos básicos de direccionamiento y conectividad de capa de red del modelo OSI usando el método de recuperación que voy a describir. No es crítico saber y usar este procedimiento, pero personalmente lo encuentro muy fácil, sin mencionar que, con frecuencia, los IOS de respalso suelen estar en algún servidor especial que está fuera de alcance público, necesita permiso para poder acceder a él o simplemente el servidor TFTP no mantiene encendido y hay que hacerlo para poder recuperar el sistema, bien sea diciendole a alguien más que lo haga o nosotros mismos levantar el servidor. Cualquiera que sea el caso, es incómodo tener que incurrir en todos estos inconvenientes como si fuera poco la esperita de recuperar un sistema operativo que nunca se debió haber borrado. Básicamente lo que se necesita es tener un enrutador igual al que se le borró el IOS. Personalmente, hago este procedimiento con frecuencia en enrutadores de la serie 1700, ya que es con éstos que más ocurre el problema, pero lo que describo -tanto el error como la recuperación- sirve para las series más populares de enrutadores incluyendo los de servicios integrados. El comando clave acá es config)#tftp-server flash:<imagen de IOS> Éste comando instruye al enrutador a prestar el servicio de tftp, publicando la imagen del IOS que se le haya especificado en el comando. Queda también claro, que éste comando puede servir en casos de recuperación rápida de configuraciones cuando ocurre algún accidente en entornos de producción, es decir, en el trabajo. Sobra decir que se ejecuta en modo de configuración global, que el archivo <imagen del IOS> debe existir en la Flash. Una vez que se ha ejecutado el comando anterior en uno de los enrutadores, basta con establecer conectividad de capa 3 entre los mismos, en otras palabras, conectarlos a través de dos interfaces que pertenezcan a la misma subred. Siendo más ilustrativo, conecto los enrutadores con un cable cruzado por interfaces fastethernet, en uno configuro la interfaz fastethernet con ip 10.1.1.1 255.0.0.0 y la subo. Si el otro enrutador se configura con la dirección 10.1.1.2, con la misma máscara de subred, por la interfaz por la que está conectado al servidor, eso es conectividad de capa 3 y ya tenemos disponible un servidor tftp que contiene el archivo de IOS necesario. En la descripción anterior, en vez del cable cruzado se pueden usar cables directos a través de un switch pero es preferible usar un cable cruzado para evitar algún problema de configuración en el Switch, como que los puertos del switch en los que se conectan los enrutadores pertenezcan a Vlans diferentes, lo que no permitiría que hubiera conectividad de capa 3 así estén bien configurados los enrutadores. Le recomiendo usar un cable cruzado y asumiré que los equipos se conectaron de esa manera. NOTA: Las direcciones propuestas son en el caso de enrutadores de laboratorio, aislados de cualquier otra red, en caso de enrutadores en producción, se debe elegir una subred que no esté en uso o conectar el enrutador sin IOS a un segmento de red y configurarlo como si fuera un nodo más de ese segmento. La secuencia de configuración completa para un enrutador 1700 que ofrece su propio IOS (desde su propia memoria flash), omitiendo enable, sería configure terminal interface fastethernet 0/0 ip address 10.1.1.1 255.0.0.0 no shutdown exit tftp-server flash:c1700-y-mz.122-4.YA2.bin En este punto podemos tener dos escenarios de enrutador sin IOS: un enrutador que fue apagado o reiniciado y por lo tanto está en ROMMON o un enrutador al que se le ha borrado el IOS pero que no se ha reiniciado todavía y por lo tanto está perfectamente operacional.
Escenario 1: enrutador sin IOS pero sin reiniciarEn el segundo caso, partiríamos de configurar la interfaz con la dirección adecuada, como de costumbre, con ip address (si continúa el ejemplo usaría la dirección 10.1.1.2) y no shutdown en modo de configuración de interfaz y luego ejecutar un comando que no puede ser más fácil tftpServer)#copy tftp: flash: en éste caso, el comando va a copiar un archivo del tftp a la flash e inicia un diálogo en el que pregunta la dirección del servidor (10.1.1.1 en nuestro caso) y el nombre del archivo, que debe ser el nombre exacto con el que se sirvió en el enrutador configurado como servidor tftp. El diálogo también puede preguntar si se desea borrar la flash y en ese momento ud. debe tener muy claro que la flash está efectivamente vacía, sino está seguro es recomendable cancelar y echar un vistazo (show flash:) para verificar que no se está empeorando la situación con este cambio. El comando anterior puede incluír también la dirección y el nombre de archivo, aunque si el enrutador acepta o no el comando completo depende de la versión de IOS que se esté ejecutando. tftpServer)#copy tftp://10.1.1.1/c1700-y-mz.122-4.YA2.bin flash: La secuencia de comandos completa, otra vez omitiendo enable, sería configure terminal interface fastethernet 0/0 ip address 10.1.1.2 255.0.0.0 no shutdown exit copy tftp: flash:
Escenario 2: Enrutador sin IOS reiniciadoSi el escenario es un enrutador en ROMMON, hay que usar el clásico comando tftpdnld. A veces puede resultar difícil recordar el comando y adicionalmente cómo se usa. Para recordar el comando sólo hay que recordar lo que significa: descarga de tftp, o en inglés tftp download. Si ud. junta las dos palabras y le quita las vocales (incluida la w) le queda justo el comando que debe recordar tftpdnld y tampoco es necesario saber exactamente cómo usarlo. Siempre que se ejecuta tftpdnld, muestra los parámetros de funcionamiento y explica qué se debe hacer. Básicamente, éste comando saca por pantalla un conjunto de variables de entorno que son la información necesaria para encontrar el servidor y el archivo, éstas son IP_ADDRESS, IP_SUBNET_MASK, DEFAULT_GATEWAY, TFTP_SERVER, TFTP_FILE. Casi todas son propiedades de capa 3, sólo la última es de naturaleza diferente: es el nombre exacto del archivo del IOS, otra forma de conocer el contenido de éstas variables es usando el comando set, pero a veces éste comando se confunde con la forma de establecer las variables en algunos sistemas operativos y shells, así que no lo recomiendo. Establecer éstas variables es muy simple pero estricto, las variables deben ser escritas en mayúsculas, no se puede dejar espacio entre el nombre de la variable y su parámetro, ni al final del mismo, es decir, para configurar la ip del enrutador se escribe exactamente IP_ADDRESS=10.1.1.2 Sin espacios en ninguna parte y más importante aún: SIN ERRORES, es decir, como Rommon es tan elemental, a veces usar las flechas para moverse por la pantalla o borrar caracteres lo que hace es generar errores que el sistema no avisa, por lo que se debe escribir despacio y perfectamente el comando que acabo de indicar. Así mismo, se establecen las otras variables y finalmente se ejecuta de nuevo el comando tftpdnld que muestra los valores de las variables. Siempre es necesario revisarlas y asegurar que corresponden a la topología física y direccionamiento del servidor TFTP. Si el comando no funciona, probablemente sea necesario indicar nuevamente el nombre del IOS, que es sensible a la mayúscula y suele ser un nombre largo, lleno de puntos, números y rayas, p. ej.: c1700-y-mz.122-4.YA2.bin en el caso de un enrutador de la serie 1700, si lo copió a la memoria del PC y éste comando no funcionó, escríbalo manualmente, porque copiar el nombre puede generar caracteres adicionales no visibles o espacios adicionales al final o inicio del nombre que, le recuerdo, debe ser exactamente igual al del servidor.
Conclusiones
Una observación que estoy experimentando en este mismo momento: si el router está funcionando el proceso se demora mucho (estoy haciendo un laboratorio).
cesar mira en el laboratorio donde trabajo, configure mal un router cisco 2911, cuando volví a ingresar en el modo consola aparecía en modo rommon no lo entendía, así que viendo un par de tutoriales ejecute el comando confreg 0x2142, di enter y digite el comando reset, me hizo unas pregunas en la primera dige yes y en el resto no. cuando di enter otra ves en el modo consola empezaron a salir un monton de lineas de letras o palabras, eran tan pequeñas que nadie las podia leer. despues de eso intente volver a ingresar pero el router no me deja salir del monton de linea de palabras chiquititas.¿ que hago? ¿que se daño?
Hola Liana,
disculpa por no haberte respondido antes. Intenta cambiando la velocidad de la consola, ya sabes que por defecto es 9600bps, cambiala a otras velocidades hasta que te de un arranque normal. Una vez que la encuentres haz el TSHOOT que quieras y vuelve a poner el confreg al nro en que estaba (espero que lo hayas revisado antes de hacer el cambio).
Gracias y hasta pronto.
Que me gustaria que al igual que conectas dos routers entre si para intercambiar las ios, pudieras conectar tu coco al mio y transaferir todo lo que sabes!!!!
Gracias, ha salido todo perfectamente.
😀 gracias.
Que tal Cesar..
Oye y son los mismos pasos para un switch si tambien se ha perdido el IOS en el???
Hola Fernando,
hmm…. pues habrá que probarlo, por lo pronto sí es seguro que la asignación de direcciones es distinta, porque en el switch se asigna la dirección a la vlan administrativa, pero cuando lo pruebe te digo.
Gracias y hasta pronto.
que tal pana una pregunta hay forma de recuperar el ios despues de haberlo borrado y apagado el router y al encenderlo solo me sale el rommon
por fa tu ayuda
Hola Pablo,
primero hay que saber porqué está arrancando en rommon. Una razón (la buena) es que hayas modificado el registro de arranque a algún valor que haga que el enrutador entre en rommon. La otra razón (la mala) es que hayas borrado el IOS, en el segundo caso es indispensable tener una copia del IOS en alguna parte y transferirla con tftpdnld y un servidor tftp. Para la primera hay que buscar la forma de poner el registro de configuración en el valor por defecto. Usualmente se hace mediante confreg 0x2102 para casi todos los enrutadores, pero averigua el valor para el tuyo. Si no tienes copia del IOS, te tocará pedir ayuda a Cisco para eso (y probablemente tendrás que pagar por ello).
Gracias y hasta pronto.
P.D.: Si tienes un enrutador de las mismas características puedes hacer lo de la entrada, copiarlo por tftp del enrutador que tienes funcionando.
Hola, Gracias por todo pero me gustaria saber cual es el gateway que se debe poner y el la direccion del server tftp
Muy buen post, explicando incluso los pequeños trucos para recordar las sintaXis,eso es enseñar y lo demás cuentos.
Buenas César, primero gracias por el blog, borré «accidentalmente» la Bios, la tenía guardada, he seguido los pasos que propones, y ahora el problema es mayor. Al arrancar la conexión con hyperterminal, me salen caracteres extraños, o sea, no me arranca ni en rommon. He cambiado todo lo referente a hardware.
La conexión de hyperterminal la hago a 9600 con ningún hardware.
Los caracteres extraños son variables dependiendo de las veces que lo enchufo.
La verdad es que estoy anclado aquí.
A ver si se te ocurre algo, pues no tengo ni idea.
Saludos y gracias de antemano
Hola Jirulo,
lo de los caracteres extraños es un cambio en la velocidad del protocolo serial de la consola. Intenta conectarte con otras tasas de transferencia a ver si te salen letras normalmente (empieza desde la tasa más alta 115000 o más).
Lo que creo que hiciste es que pusiste un valor de config-register equivocado. Si utilizaste los valores que dí en la entrada, entonces busca al manual de tu dispositivo y encuentra el valor por defecto del registro de configuración.
Gracias y hasta pronto.
Hola, tengo un problema mas o menos parecido al que pones aquí, pero creo que mi IOS esta dañada, porque pongo otra imagen en la memoria flash y nada, sigo entrando a modo rommon, algun comentario? o me explique? gracias
Hola Mincho,
si cuando cargas la nueva IOS en la flash la borras previamente y la imagen que cargas es la misma que estaba, probablemente sí se haya dañado la Flash. Intenta con una imagen más pequeña a ver si con esa sí te arranca. Recuerda poner el registro de configuración a un valor correcto, busca en el manual de tu equipo cuál es el valor correcto, generalmente es 0x2102 pero eso depende del equipo.
Gracias y hasta pronto.
Buenas Cesar
Cisco dice que el comando «no service pass recovery» impide el acceso al modo ROMmon, de igual forma se puede acceder a dicho modo haciendo un break dentro de 5 segundos una vez que la IOS se haya descomprimido, esto provocara que el startup-config se elimine. Mi duda es, aunque se elimine dicho archivo, si yo anteriormente ingrese el comando secure boot-config, el archivo lo tengo guardado en la flash ATA, podre recuperar igualmente el archivo de inicio con el secure boot-config restore aunque haya sido eliminado el startup-config, o recuperarlo desde la ROMmon accediendo a la flash ATA???
Otra duda que tengo es, una vez emitido el comando «no service pass recovery» , si hago un break para ingresar en ROMmon y se borra el archivo de inicio, imaginate que al reiniciar el router no me funciona la IOS y se vuelve a cargar el solo en modo ROMmon, la funcion xmodem creo que no esta disponible con este comando , como recupero la IOS. Muchas gracias
Saludos
Hola Martin,
qué interesante pregunta, ya que parecen comandos en conflicto. Debo decirte que he interpretado la documentación oficial para darte respuesta, así que habrá que verificar en equipos de laboratorio si lo que te voy a decir es correcto.
El comando no serv pass rec es un comando viejo que sólo activa una tecnología (rommon security) en algunos enrutadores y su propósito es evitar que quien que pueda romper la secuencia de arranque pueda ver o sobrecargar la configuración actual (en la NVRAM). En vista de lo anterior, si la plataforma tiene tarjetas adicionales de Flash, me imagino que éste comando evitará que se acceda a ellas de manera directa o que se copien archivos de éstas tarjetas a la NVRAM a menos que se desactive la característica (reescribiendo la NVRAM o reseteandola). Por otro lado, el comando secure boot-config o boot-image crea copias no borrables en flash de la configuración y del IOS, por lo tanto, si tienes activas las dos características, el enrutador no debería arrancar en ROMMON porque siempre existirá una copia usable tanto de la configuración como del IOS y si llegara a suceder, primero debes deshabilitar la Rommon security para poder hacer la recuperación.
Gracias y hasta pronto.
P.D.: Éstas pruebas habrá que hacerlas en un laboratorio porque sí son confusas.
Borre la Flash por error, solo me aparece esto de abajo…. que hago?
switch: ?
? — Present list of available commands
boot — Load and boot an executable image
cat — Concatenate (type) file(s)
copy — Copy a file
delete — Delete file(s)
dir — List files in directories
flash_init — Initialize flash filesystem(s)
format — Format a filesystem
fsck — Check filesystem consistency
help — Present list of available commands
load_helper — Load and initialize a helper image
memory — Present memory heap utilization information
mkdir — Create dir(s)
more — Concatenate (display) file(s)
rename — Rename a file
reset — Reset the system
rmdir — Delete empty dir(s)
set — Set or display environment variables
set_param — Set system parameters in flash
trap — Cause a software breakpoint to occur
type — Concatenate (type) file(s)
— MORE —
unset — Unset one or more environment variables
version — Display boot loader version
switch:
Hola Luis,
lamento no haberte respondido antes, espero que todavía te sirva la información. Los switches que no arrancan el IOS se deben actualizar mediante el emulador de terminal (Hyperterminal o minicom) transfiriendo el archivo a la flash mediante xmodem. El procedimiento es escribir el comando copy xmodem: flash:c3500XL-c3h2s-mz.120-5.1.XP.bin (suponiendo que esa es la imagen de tu Switch), una vez tengas listo el comando, buscas la opción de enviar archivos por xmodem en el emulador. Intenta varias veces porque se requiere que ambas acciones se hagan dentro de 3 segundos.
La descripción oficial del proceso está en http://www.cisco.com/en/US/products/hw/switches/ps607/products_tech_note09186a0080094955.shtml
Gracias y hasta pronto.
Hola,
Actualicé el IOS de mi equipo borrando antes la flash, después sin apagar el equipo cargué desde un TFTP el nuevo IOS.
seguido dí un RELOAD para que lo mostrara en el show ver pero se fué a ROMMON al reiniciarlo.
Saben porqué paso esto??
Graicas.
Hola Raúl,
verifica que la imagen que instalaste sí es soportada por el hardware y si la copia terminó correctamente (generalmente se hace una suma de verificación que debe ser exitosa).
Gracias y hasta pronto.
Hola, que tal, cómo estas? Tengo un router cisco 2800, al pareser se daño por una sobre carga, cómo saber si tiene solución ó pueda reparar? ö me puedas decir quien me puede ayudar? gracias saludos desde colima colima
Hola oye nomas para preguntarte como puedo recuperar la memoria flash del router, la borre por accidente el router por cierto es de la escuela xD pero si me urge saber que comando hay para recuperar la memoria flash.
saludos
Hola Andrés,
en realidad no hay un comando para hacer eso. Lo que debes hacer es buscar una imagen de IOS que sirva para tu enrutador y copiarlo como te lo indico en la entrada.
Gracias y suerte con eso.
Gracias, he restaurado un equipo cisco, funciona muy bien. El Ultimo comando es con minúscula tftpdnld.
OK.
Tengo un switch cisco catalyst 2950, al conectar lel puerto de consola no me respondem crep que se daño electricamente porque no me respinde a pesar de cambiar las velocidades ¿hay manera de resetear el puerto electricamente o a la conf de fabrica? Una vez lo hice con un router usando un jumper en el circuito impreso pero en el swich no lo veo ¿existe? gracias de antemano
Hola Miguel,
la verdad no he hecho nunca nada de eso que me dices, ni en enrutadores ni en switches, así que no te puedo ayudar. Si lo logras me cuentas 🙂
Gracias y hasta pronto.
Como ejecuto el IOS de un router desde otro (memoria flash dañada)
Tengo dos router cisco 2800 series, el cual se le daño la memoria flash y el otro funciona correctamente, he intentado copiarla en la flash desde un servidor tftp pero no se puede me marca error, ahora lo que necesito es ejecutar el IOS desde el router que funciona correctamente sin tener que copiar el IOS a la flash. Me urge ojala y me pudieran ayudar con este problema. Solo se que si se puede ejecutar el IOS desde otro router pero no encuentro la información de como hacerlo.
Hola Francisco,
pues según lo que dices ya sabes que el TFTP está activo y tiene conectividad IP, así que lo que necesitas es un comando boot system tftp indicandole la IP del servidor, ruta y nombre al archivo. Luego debes modificar el registro de configuración a un valor cuyo último octeto sea mayor a 3 (p. ej.: F), por ejemplo 0x210F. Por favor verifica tanto la sintaxis correcta del comando boot system como el valor actual del config-register de tu equipo. Acá te dejo una lectura sobre el registro.
Gracias y hasta pronto.
P.D.: Verifica muy bien los valores válidos del registro porque podrías dañar permanentemente la operación de tu enrutador.
Tengo un Router cisco 1750 con el sistema operativo dañado, mi pregunta es: Como puedo pasar la configuracion de un router OK a uno dañado? se que mediante protocolo TFTP, pero de verdad no se como hacerlo
quisiera saber si se puede eliminar (no cargar) el ios de un router (3845) desde modo rommon ya que me sale este mensaje y ya probe con cambiar la configuracion de registro y nada me sale el mismo mensaje
Please obtain a license key from the following Web page:
For Cisco customers:
Please contact your Cisco sponsor for the tool to obtain the license key
For Cisco employees:
http://wwwin-pagent.cisco.com/protected-cgi/get_key.cgi
Please enter pagent license key:
Hola tengo dos router 2911 a uno le a fallado el IOS y quiero intentar copiar la del otro, ya la tengo en una memoria USB pero no he encontrado forma de copiarla… veo que explicas que se puede pasar de un ruteador a otro, pero mi duda es… el ruteador dañado solo entra en modo rommon y las interfaces están deshabilitadas… como la activo para especificarle la ip?? o funciona conque uno este configurado y decirle al otro cual es la ip del servidor tftp ??
Gracias
Lo hice tal cual, de ruteador a ruteador y funciono =) Gracias por la Guía !!
Saludos!
Hola quisiera saber como recuperar un tp link mr 3220 al cual en el momento de cambiarle el firmware original por el dd wrt en uno de sus pasos se perdió el Internet y fallo la configuración quedando el roter inutilizable . te agradeciera si me das el dato de como recuperar el router ya que es nuevo y se hizo esto porque original no me servia como repetidor , que es para lo que lo necesitaba.
Hola, a mi me surgió este problema porque tenía dispositivos iguales y no me di cuenta de que uno de ellos tenía menos DRAM y no soportaba la imagen que tenían los otros dos. El problema es que se trata de un router 3620, y segun entiendo por lo que leí para los routers 3600 no se puede utilizar el comando tftpdnld,¿como puedo hacer para recuperar la imagen? la imagen la tengo en un servidor, al que puedo acceder simplemente a través de un switch desde el router(no hay configuradas vlans en el switch). También cuento con otros router que tienen esa imagen.
Gracias,
Un saludo.
Instale el IOS ubicado en el servidor TFTP a otro router (en estado de rommon, no tenia IOS). al instalar el IOS desde TFTP todo avanzo correcto y me llego a marcar: Router#
y supuse que ya estaba instalado el IOS en el router. e introduci «reload» Router#RELOAD
y al reiniciarlo arranco nuevamente desde Romon….que me falto por hacer?. el router es cisco serie 2800
quiero copiar el ios a un servidor tftp pero me sale este error como puedo copiar:
%Error reading flash:c2960-lanbasek9-mz.122-55.SE7 (Is a directory)
Disculpen ayudaaa!!! Borre el ios de mi switch por error, despues de esto lo reinicie me aparecia «switch:» (el cual en ese modo podia ponerle el ios mediante xmodem)pero ahora no me aparece nada ya no me aparece el «switch:» y lo conecto via consola con hiperterminal y no me aparece nada …. quien me puede ayudar
ayuda puedo recuperar el sistema de mi router lo que pasa es q estuve actualizando el firmware y por error apagaron el router ahora ya no tiene sistema tiene solucion o no
Pingback: ¿Por qué se borra el IOS?