¿Por qué el comando show run de Cisco no muestra la versión completa, mientras que el comando show version sí?

7

¿Hay alguna razón por la cual Cisco show runno muestra la versión completa que se encuentra 16.3.7en este ejemplo?

IOSSW#show running-config | include ersion
version 16.3

mientras show versionhace?

IOSSW#show version
...
Switch Ports Model              SW Version        SW Image              Mode
------ ----- -----              ----------        ----------            ----
*    1 56    WS-C3850-48T       16.3.7            CAT3K_CAA-UNIVERSALK9 BUNDLE
...
IOSSW#
usuario11392987
fuente
¿Alguna respuesta te ayudó? Si es así, debe aceptar la respuesta para que la pregunta no siga apareciendo para siempre, buscando una respuesta. Alternativamente, puede proporcionar y aceptar su propia respuesta.
Ron Maupin

Respuestas:

13

¿Hay alguna razón por la cual Cisco show run no muestre la versión completa que es 16.3.7 en este ejemplo?

Por la simple razón de que las únicas versiones principales y secundarias son necesarias para una comprensión completa de la configuración. Si bien puede haber cambios en las características y / o mejoras entre 16.2 y 16.3, los cambios en la compilación / revisión no deberían afectar la configuración de ninguna manera.

Dicho de otra manera, la diferencia de 16.3.6 a 16.3.7 puede incluir soluciones a advertencias (errores, fallas y vulnerabilidades), pero esto no debería afectar de ninguna manera lo que la configuración realmente significa para el dispositivo.

Por lo tanto, cuando lo hace show running-config, es útil conocer las versiones principales y secundarias para comprender la configuración. Sin embargo, si necesita la versión completa, debe usar el show versioncomando.

YLearn
fuente
6

Para decirlo en otras palabras ...

Running-config tiene una versión en la lista porque esa es la versión de IOS que se usó para crear / escribir esa configuración más recientemente. Cada declaración en esa configuración debería funcionar con cualquier 16.3.anythingversión de iOS.

Su show versionmuestra la versión exacta que se ejecuta en ese hardware. Dado que 16.3.7coincide, puede estar seguro de que todas las declaraciones de configuración se están cargando y funcionando como espera.


Ahora, hipotéticamente, si terminó ejecutando la versión 17.0.0o 16.4.0existe una posibilidad distinta de cero de que algunas directivas de configuración hayan cambiado, ya sea completamente o tal vez tengan diferencias sutiles en los parámetros.

El primero wr mem actualizará la versión en la configuración guardada, pero puede eliminar algunos elementos que no fueron reconocidos por la nueva versión.

La mayoría de las veces esto simplemente funciona, pero siempre hay un anzuelo, por eso todos tenemos laboratorios de prueba que replican hardware y versiones de producción ... ( tos )

Criggie
fuente
6

Hubiera dicho que los números representan cosas diferentes:

  • show version dice "Estoy ejecutando esta versión", y necesariamente tiene muchos detalles
  • versionsalida en show confdice "Esta configuración se ejecutará en esta versión"

Si copia la configuración en alguna parte, aún dice "Esta configuración se ejecuta en esta versión"

Por analogía:

  • "¿Cuantos años tienes?" - "Tengo 23 y 3 meses y 2 días"
  • "¿Cuáles son las leyes de votación en el Reino Unido?" El | incluir edad - "Debe tener 18 años para votar en el Reino Unido"
jonathanjo
fuente
1
Ese es un excelente ejemplo y describe muy bien la diferencia. Estoy robando eso por cierto.
Criggie
Me gusta la analogía ... Por cierto, la comunidad aquí es muy buena y solidaria. No puedo decidir qué respuestas son las mejores, como lo son todas.
user11392987
3

Estas comparando manzanas y naranjas. El show running-configcomando le proporciona un número de versión simplificado al principio, pero está diseñado para mostrarle la configuración, no la versión completa:

Current configuration : 15095 bytes
!
version 15.5

El show versioncomando le brinda más información sobre las versiones en el dispositivo, pero nada sobre la configuración.

Los dos comandos están simplemente dirigidos a información diferente. Si tiene un problema con eso, debe solucionarlo con Cisco. No hay nada que podamos hacer al respecto aquí.

Ron Maupin
fuente
3

Cisco IOS almacena su configuración en un archivo de texto (excepto la información de seguridad desde la versión 12 (IIRC)). Al arrancar (o después de un config memorycomando), el archivo de configuración se lee e interpreta.

Se escribe una cadena de versión en el archivo de configuración para que el gestor de arranque pueda decidir si es probable que comprenda el archivo o no. Hasta donde puedo recordar, se escribe una advertencia en la consola en el caso de que la versión no coincida, pero el enrutador o el conmutador continúan arrancando. No es necesario ni útil tener la cadena de versión completa en el archivo (y una configuración se cargará sin ninguna cadena de versión).

Como se pueden copiar archivos de configuración desde el almacenamiento externo directamente a la memoria flash, o incluso arrancar un dispositivo IOS desde una configuración almacenada de forma remota, es útil para aquellos que administran archivos de configuración tener la cadena de versión al inicio del archivo.

show running-config muestra en texto la configuración que se está ejecutando actualmente, por lo que generará la cadena de versión del IOS que se está ejecutando actualmente como se escribiría si se guardara la configuración.

show versioninforma la cadena de versión incrustada en la imagen IOS en ejecución, que es otra cosa. En este caso, uno suele estar interesado en los detalles completos.

grahamj42
fuente