Inleiding
Dit document beschrijft hoe u een Intermediate System-to-Intermediate System (IS-IS)-topologie (Intermediate System-to-Intermediate System) kunt maken van een CLI-uitgang van een router met geïnstalleerde IOS-XR-software.
Bijgedragen door Agung Semarajaya, Cisco TAC Engineer.
Voorwaarden
Vereisten
Cisco raadt u aan om goede kennis van deze onderwerpen te hebben:
Gebruikte componenten
De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:
- ASR 9001 met IOS-XR versie 6.3.2
- Lenovo P50 met 64-bits Windows 10 Enterprise OS
- Graphviz release 2.38
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk levend is, zorg er dan voor dat u de mogelijke impact van om het even welke opdracht begrijpt.
Achtergrondinformatie
Om een IS-IS netwerk te kunnen oplossen, is het belangrijk om te begrijpen hoe de routers om verschillende redenen onderling verbonden zijn. U kunt de topologie informatie hebben, echter, is de topologie verouderd.
Van IOS-XR versie 6.3.2, wordt de opdracht van de show ISIS de breedtebeschrijving van de database geïntroduceerd om een grafiek van de netwerktopologie in DOT formaat te produceren die als input aan het destruceren van gereedschappen kan gebruiken.
Configureren
Zorg ervoor dat u IS-IS nabijheid hebt gebouwd en minstens één router met IOS-XR versie 6.3.2 of hoger geïnstalleerd. Gebruik deze stappen om de bijgewerkte IS-IS topologie van de CLI-uitvoer te maken.
Stap 1. Start de opdracht om de grootte-breedtebeschrijving van de database op het IOS-XR apparaat te tonen.
Stap 2. Kopieer de inhoud van de opdracht uit stap 1 naar een tekstbestand en slaat het bestand in .txt-indeling op.
Stap 3. Download en installeer het DOT converter softwarepakket op uw computer, bijvoorbeeld Graphviz - Graph Visualization Software.
Stap 4. Open de opdrachtmelding (dit is van toepassing op Windows) en navigeer naar de map waarin de uitvoerbare bestanden van Graphviz CLI zich bevinden. Dit is een voorbeeld van de navigatie.
C:\Users\user>cd "C:\Program Files (x86)\Graphviz2.38"\bin
Stap 5. Gebruik de CLI om het bestand dat op stap 1 is opgeslagen, te converteren naar andere indelingen, zoals .png.
Dit voorbeeld geeft aan hoe u de DOT CLI wilt gebruiken.
C:\Program Files (x86)\Graphviz2.38\bin>dot.exe -Tpng C:\Users\user\Desktop\isis_graph_verbose.txt -o C:\Users\user\Desktop\isis_graph_verbose.png
Dit voorbeeld toont hoe de Circo CLI te gebruiken.
C:\Program Files (x86)\Graphviz2.38\bin>circo.exe -Tpng :\Users\user\Desktop\isis_graph_verbose.txt -o C:\Users\user\Desktop\isis_graph_verbose.png
U kunt meer informatie over CLI vinden via Graphviz - Graph Visualization Software documentatie.
Opmerking: In stap 5 kunt u de pad variabele aan de folder instellen waar de Graphviz CLI uitvoerbare bestanden zich bevinden.
bekende beperking
1. Als u niveau 1 en niveau 2 in IS-IS draait en beide aanwezig zijn, dan verschijnt alleen niveau 1 in de Cisco database breedteuitvoer (de eerste digraaf). Om dit probleem te repareren, kunt u het invoerbestand bewerken en de grafiek voor niveau 1 of niveau 2 verwijderen, of u kunt de input gebruiken en deze opdrachten gebruiken met het niveau 1 of niveau 2 trefwoord.
toon breedtegraad isis database
isis database graadbereik 2 breedtegraad tonen
2. DOT heeft de neiging te crashen wanneer het bestand [label=0] elementen bevat. Eén benadering is deze te bewerken en vervolgens de CLI uit te voeren.
Opmerking: Andere instrumenten, zoals Circo, hebben dit probleem niet.
Voorbeeld
- Start ISIS opdracht van de gegevensbank.
RP/0/RSP0/CPU0:ASR10_9001-A#show isis database graph verbose
Wed Sep 12 11:23:38.651 AEST
/*
* Network topology in DOT format. For information on using this to
* generate graphical representations see http://www.graphviz.org
*/
digraph "level-2" {
graph [rankdir=LR];
node [fontsize=9];
edge [fontsize=6];
"ASR1" [label="\N\n172.16.0.1"];
"ASR1" -> "AASR6--9904.05" [constraint=false];
"ASR2" [label="\N\n172.16.0.2"];
"ASR2" -> "ASR2.01" [constraint=false];
"ASR2" -> "ASR2.03" [constraint=false];
"ASR2" -> "ASR3-9010";
"ASR2.01" -> "ASR2" [label=0] [constraint=false];
"ASR2.01" -> "AASR6--9904" [label=0] [constraint=false];
"ASR2.03" -> "ASR2" [label=0] [constraint=false];
"ASR2.03" -> "ASR7-9912" [label=0] [constraint=false];
"ASR3-9010" [label="\N\n172.16.0.3"];
"ASR3-9010" -> "ASR2";
"ASR3-9010" -> "AASR6--9904.09" [constraint=false];
"ASR3-9010" -> "ASR7-9912.03" [label=20] [constraint=false];
"ASR4-9006" [label="\N\n172.16.0.4"];
"ASR4-9006" -> "ASR4-9006.01" [constraint=false];
"ASR4-9006.01" -> "ASR4-9006" [label=0] [constraint=false];
"ASR4-9006.01" -> "ASR7-9912" [label=0] [constraint=false];
"AASR6--9904" [label="\N\n172.16.0.6"];
"AASR6--9904" -> "AASR6--9904.05" [constraint=false];
"AASR6--9904" -> "AASR6--9904.09" [constraint=false];
"AASR6--9904" -> "AASR6--9904.01" [constraint=false];
"AASR6--9904" -> "ASR2.01" [constraint=false];
"AASR6--9904" -> "ASR10_9001-A.01" [constraint=false];
"AASR6--9904.01" -> "AASR6--9904" [label=0] [constraint=false];
"AASR6--9904.01" -> "ASR7-9912" [label=0] [constraint=false];
"AASR6--9904.05" -> "AASR6--9904" [label=0] [constraint=false];
"AASR6--9904.05" -> "ASR1" [label=0] [constraint=false];
"AASR6--9904.09" -> "AASR6--9904" [label=0] [constraint=false];
"AASR6--9904.09" -> "ASR3-9010" [label=0] [constraint=false];
"ASR7-9912" [label="\N\n172.16.0.7"];
"ASR7-9912" -> "ASR7-9912.03" [label=20] [constraint=false];
"ASR7-9912" -> "ASR2.03" [constraint=false];
"ASR7-9912" -> "ASR4-9006.01" [constraint=false];
"ASR7-9912" -> "AASR6--9904.01" [constraint=false];
"ASR7-9912" -> "ASR10_9001-A.03" [constraint=false];
"ASR7-9912" -> "ASR11_9001-B.03" [constraint=false];
"ASR7-9912.03" -> "ASR7-9912" [label=0] [constraint=false];
"ASR7-9912.03" -> "ASR3-9010" [label=0] [constraint=false];
"ASR10_9001-A" [label="\N\n172.16.0.10"];
"ASR10_9001-A" -> "ASR10_9001-A.01" [constraint=false];
"ASR10_9001-A" -> "ASR10_9001-A.03" [constraint=false];
"ASR10_9001-A" -> "ASR10_9001-A.05" [constraint=false];
"ASR10_9001-A.01" -> "ASR10_9001-A" [label=0] [constraint=false];
"ASR10_9001-A.01" -> "AASR6--9904" [label=0] [constraint=false];
"ASR10_9001-A.03" -> "ASR10_9001-A" [label=0] [constraint=false];
"ASR10_9001-A.03" -> "ASR7-9912" [label=0] [constraint=false];
"ASR10_9001-A.05" -> "ASR10_9001-A" [label=0] [constraint=false];
"ASR10_9001-A.05" -> "ASR11_9001-B" [label=0] [constraint=false];
"ASR11_9001-B" [label="\N\n172.16.0.11"];
"ASR11_9001-B" -> "ASR11_9001-B.03" [constraint=false];
"ASR11_9001-B" -> "ASR11_9001-B.01" [constraint=false];
"ASR11_9001-B" -> "ASR10_9001-A.05" [constraint=false];
"ASR11_9001-B.01" -> "ASR11_9001-B" [label=0] [constraint=false];
"ASR11_9001-B.01" -> "WAN02" [label=0] [constraint=false];
"ASR11_9001-B.01" -> "ASR11_9001-B" [label=0] [constraint=false];
"ASR11_9001-B.01" -> "WAN02" [label=0] [constraint=false];
"ASR11_9001-B.03" -> "ASR11_9001-B" [label=0] [constraint=false];
"ASR11_9001-B.03" -> "ASR7-9912" [label=0] [constraint=false];
"ASR11_9001-B.03" -> "ASR11_9001-B" [label=0] [constraint=false];
"ASR11_9001-B.03" -> "ASR7-9912" [label=0] [constraint=false];
"WAN02" [label="\N\n172.16.151.2"];
"WAN02" -> "ASR11_9001-B.01" [constraint=false];
}
- Converteer de uitvoer met behulp van de CLI. Dit resultaat toont de uitvoer via Circo.