Warum zeigt der Cisco-Befehl show run nicht die Vollversion an, während der Befehl show version dies tut?


7

Gibt es einen Grund, warum Cisco show runnicht die Vollversion anzeigt, die 16.3.7in diesem Beispiel enthalten ist?

IOSSW#show running-config | include ersion
version 16.3

während show versiontut?

IOSSW#show version
...
Switch Ports Model              SW Version        SW Image              Mode
------ ----- -----              ----------        ----------            ----
*    1 56    WS-C3850-48T       16.3.7            CAT3K_CAA-UNIVERSALK9 BUNDLE
...
IOSSW#

Hat dir eine Antwort geholfen? Wenn ja, sollten Sie die Antwort akzeptieren, damit die Frage nicht für immer auftaucht und nach einer Antwort sucht. Alternativ können Sie Ihre eigene Antwort bereitstellen und akzeptieren.
Ron Maupin

Antworten:


13

Gibt es einen Grund, warum der Cisco Show Run nicht die Vollversion zeigt, die in diesem Beispiel 16.3.7 ist?

Aus dem einfachen Grund, dass nur die Haupt- und Nebenversionen für ein vollständiges Verständnis der Konfiguration erforderlich sind. Zwar kann es zwischen 16.2 und 16.3 zu Funktionsänderungen und / oder -erweiterungen kommen, Änderungen in der Erstellung / Revision sollten sich jedoch in keiner Weise auf die Konfiguration auswirken.

Anders ausgedrückt, der Unterschied zwischen 16.3.6 und 16.3.7 kann Korrekturen an Vorbehalten (Fehler, Mängel und Schwachstellen) beinhalten, dies sollte jedoch in keiner Weise die tatsächliche Bedeutung der Konfiguration für das Gerät beeinflussen.

Wenn Sie eine show running-configausführen, ist es hilfreich, die Haupt- und Nebenversionen zu kennen, um die Konfiguration zu verstehen. Wenn Sie jedoch die Vollversion benötigen, sollten Sie den show versionBefehl verwenden.


6

Mit anderen Worten ...

In der running-config ist eine Version aufgeführt, da dies die Version von IOS ist, mit der diese Konfiguration zuletzt erstellt / geschrieben wurde. Jede Anweisung in dieser Konfiguration sollte mit jeder 16.3.anythingVersion von IOS funktionieren .

Sie show versionzeigen die genaue Version an, die auf dieser Hardware ausgeführt wird. Seit 16.3.7Übereinstimmungen können Sie sicher sein, dass alle Konfigurationsanweisungen wie erwartet geladen werden und funktionieren.


Nun, hypothetisch, wenn Sie am Ende die Version ausgeführt haben 17.0.0oder 16.4.0, besteht eine Wahrscheinlichkeit ungleich Null, dass sich einige Konfigurationsanweisungen entweder vollständig geändert haben oder möglicherweise geringfügige Unterschiede in den Parametern aufweisen.

Der erste wr mem aktualisiert die Version in der gespeicherten Konfiguration, kann jedoch einige Elemente löschen, die von der neuen Version nicht erkannt wurden.

Meistens funktioniert das einfach, aber es gibt immer einen Gotcha-Angelhaken, weshalb wir alle Testlabors haben, die Produktionshardware und -versionen replizieren ... ( Husten )


6

Ich hätte gesagt, die Zahlen repräsentieren verschiedene Dinge:

  • show version sagt "Ich verwende diese Version" und hat notwendigerweise viele Details
  • versionAusgabe in show confsagt "Diese Konfiguration wird auf dieser Version ausgeführt"

Wenn Sie die Konfiguration irgendwo kopieren, wird weiterhin "Diese Konfiguration wird in dieser Version ausgeführt" angezeigt.

Zur Analogie:

  • "Wie alt bist du?" - "Ich bin 23 und 3 Monate und 2 Tage"
  • "Was sind die Wahlgesetze in Großbritannien?" | Alter einschließen - "Sie müssen 18 Jahre alt sein, um in Großbritannien wählen zu können"

1
Das ist ein hervorragendes Beispiel und beschreibt den Unterschied gut. Ich stehle das übrigens.
Criggie

Ich mag die Analogie ... Übrigens ist die Community hier sehr gut und unterstützend. Ich kann mich nicht entscheiden, welche Antworten die besten sind, wie alle.
user11392987

3

Sie vergleichen Äpfel und Orangen. Der show running-configBefehl gibt Ihnen eine vereinfachte Versionsnummer als den Anfang, soll Ihnen jedoch die Konfiguration und nicht die Vollversion anzeigen:

Current configuration : 15095 bytes
!
version 15.5

Der show versionBefehl enthält weitere Informationen zu den Versionen im Gerät, jedoch keine Informationen zur Konfiguration.

Die beiden Befehle zielen einfach auf unterschiedliche Informationen ab. Wenn Sie ein Problem damit haben, müssen Sie es mit Cisco besprechen. Hier können wir nichts dagegen tun.


3

Cisco IOS speichert seine Konfiguration in einer Textdatei (mit Ausnahme der Sicherheitsinformationen seit Version 12 (IIRC)). Beim Booten (oder nach einem config memoryBefehl) wird die Konfigurationsdatei gelesen und interpretiert.

In die Konfigurationsdatei wird eine Versionszeichenfolge geschrieben, damit der Bootloader entscheiden kann, ob er die Datei wahrscheinlich versteht oder nicht. Soweit ich mich erinnern kann, wird bei einer Versionsinkongruenz eine Warnung an die Konsole geschrieben, aber der Router oder Switch bootet weiter. Es ist weder notwendig noch nützlich, die vollständige Versionszeichenfolge in der Datei zu haben (und eine Konfiguration wird ohne Versionszeichenfolge geladen).

Da Konfigurationsdateien direkt vom externen Speicher in den Flash-Speicher kopiert oder sogar ein IOS-Gerät von einer remote gespeicherten Konfiguration gestartet werden kann, ist es für Benutzer von Konfigurationsdateien hilfreich, die Versionszeichenfolge am Anfang der Datei zu haben.

show running-config Zeigt im Text die aktuell ausgeführte Konfiguration an, sodass die Versionszeichenfolge aus dem aktuell ausgeführten IOS so generiert wird, wie sie geschrieben würde, wenn die Konfiguration gespeichert würde.

show versionmeldet die Versionszeichenfolge, die in das laufende IOS-Image eingebettet ist, was eine ganz andere Sache ist. In diesem Fall interessiert man sich normalerweise für die vollständigen Details.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.