Wie kann ich die CLI-Eingabe in Cisco IOS mithilfe von Verknüpfungen beschleunigen?

10

Ich weiß, dass wir die automatische Vervollständigung (Tabulatortaste) und abgekürzte Befehle (z. B. sh ip int bri) verwenden können, um die Eingabe zu beschleunigen.

Ich bin jedoch immer noch nicht zufrieden mit der Eingabe von Verschlüsselungsketten wie sh ip dh sn bi | i 20.12z show ip dhcp snooping binding | include 20.12.

Kann ich Verknüpfungen für häufig verwendete Befehlssequenzen definieren und wie?

Stefan
quelle
Wenn Sie wissen, was Sie tippen, denken Sie show ip dhcp snooping...beim Tippen nach. sh ip dh sn... Wenn Sie dies in einer E-Mail an eine andere Person senden, machen Sie zumindest die Abkürzungen deutlich (z . B. snoopvs sn). Ich ziehe es vor, in diesem Fall nicht abzukürzen. Meiner Meinung nach sind Aliase großartig, wenn Ingenieure Konfigurationen für Nicht-Cisco-versierte Techniker bereitstellen, die noch einige nützliche Ausgaben benötigen. Aliase für Cisco-versierte Leute machen sie einfach faul. (Wieder ganz nur meine Meinung ...)
Tarah
1
Schneller tippen lernen ist eine Option. ;-)
Generalnetworkerror
1
@generalnetworkerror Ich muss häufig gesättigte Satellitenverbindungen mit geringer Bandbreite und einer Latenz von 800 ms verwenden. Weniger Tastenanschläge wären eine Option, wenn man nicht wirklich schneller tippt (obwohl ich schnell bin).
Stefan
Verwenden Sie den Nagle-Algorithmus über diese Verbindung mit hoher Latenz? "Router (config) # service nagle"
generalnetworkerror
@generalnetworkerror Sehr guter Punkt! Ich benutze kein Nagle, aber überall ein WAAS für die TCP-Optimierung und -Komprimierung.
Stefan

Antworten:

17

Wir können den alias Befehl im globalen conf-Modus verwenden:

alias <mode> <command-alias> <original-command>

<mode>ist einer der vielen IOS-Befehlsmodi . Wenn Sie es in verschiedenen Modi benötigen, müssen Sie es für jeden Typ aufrufen alias ?, um eine lange Liste von Modi zu erhalten.

Ein Beispiel für die Suche nach einer DHCP-Snooped-IP: Geben Sie den globalen Conf-Modus ein

alias exec snoop show ip dhcp snooping binding | include

Jetzt können Sie einfach eingeben snoop 172.16.20.12, um beispielsweise nach dieser IP oder snoop 801nach allen IPs in VLAN 801 zu suchen. Gehen Sie ähnlich vor show mac-address-table | includeund Sie sind schneller bei der Suche und Fehlerbehebung.

Weitere Tipps:

  • Dokumentieren Sie Ihre Aliase für Sie und Ihre Kollegen
  • sh aliases zeigt Ihre Aliase sowie die vordefinierten
  • Während no alias <mode> <command>das Entfernen eines Alias ​​erraten werden kann, werden no alias <mode>die Aliase für einen vollständigen Modus gelöscht. Sie können also mehrere auf einmal löschen und default alias <mode>funktionieren wie erwartet ähnlich
  • Wenn Sie sich für die Verwendung von Aliasnamen entscheiden, stellen Sie diese einmal überall dort bereit, wo Sie sie benötigen
  • Tools wie Cisco Prime können bei der Bereitstellung helfen
  • vergiss die ursprünglichen Befehle nicht ;-)
Stefan
quelle
Lol, hast du deine eigene Frage in der Minute beantwortet, in der du sie gepostet hast? :) Wissen archivieren?
Bulki
@Bulki Wissen teilen, während der Beta-Phase aussagekräftige Website-Inhalte erstellen und nach alternativen Lösungen suchen. Was bedeutet dein "Lol" dann?
Stefan
Nun, ich finde es lustig, wenn du das siehst, aber ich denke, es ist wichtig, dies zu tun, um auch für andere eine gute Wissensdatenbank zu haben :) Ich war überrascht, dass ich es sogar bemerkt habe :) Übrigens gute Beiträge!
Bulki
6

Für komplizierte Aufgaben empfehle ich einen Blick auf TCL. Mit TCL können Sie Skripts erstellen, die auf Ihren IOS / Nexus-Geräten gespeichert und ausgeführt werden können. Dies bietet eine erstaunliche Flexibilität beim Sammeln und Anzeigen von Daten.

Während es für einfache Aufgaben nicht unbedingt schneller ist, können Sie Informationen aus mehreren Befehlen sammeln, korrelieren und nach Belieben neu formatieren. Es kann auch Informationen aus SNMP abrufen.

Wenn Sie nicht in es ausgesehen haben, können Sie ein solches Dokument finden Sie hier .

Edit: Ich habe das nicht hinzugefügt, sollte es aber wahrscheinlich haben. Sobald Sie Ihr TCL-Skript eingerichtet haben, können Sie den Alias-Befehl aus Stefans großartiger Antwort verwenden, um einen schnelleren Zugriff auf das Skript zu erstellen. Zum Beispiel:

alias exec mac-lookup tclsh flash:mac-lookup.tcl
YLearn
quelle
Auch ein guter Vorschlag, beantwortet aber nicht die Frage des OP. :-)
John Jensen
Obwohl es sich nicht um eine Verknüpfung im Alias-Sinne handelt, handelt es sich um eine Verknüpfung, da sie eine Reihe von Aufgaben ausführen und die gewünschten Daten in kürzerer Zeit anzeigen kann, als für die Eingabe all dieser Befehle erforderlich ist. Wenn Sie ihm beispielsweise eine MAC-Adresse gegeben haben, können Sie die Schnittstelle, mit der er verbunden war, die Anzahl der anderen an diesem Port angeschlossenen Geräte, die Schnittstellenzähler dieser Schnittstelle, alle DHCP-Snooping-Einträge für diesen MAC usw. zurückerhalten . Die Optionen sind so unbegrenzt, wie Sie es mit TCL möchten. Aliase sind zwar großartig, aber in ihrem Umfang begrenzt und wie viel Arbeit / Eingabe sie sparen können.
YLearn
Ich habe die Teile "häufig verwendete Befehlssequenzen" und "CLI-Typisierung beschleunigen" des Q eingegeben. Da für viele allgemeine Aufgaben eine Sequenz oder eine Reihe von Befehlen ausgeführt werden muss, ist TCL in diesen Fällen besser, um eine "Verknüpfung" bereitzustellen. ""
YLearn
Einverstanden mit @YLearn; Manchmal bietet eine bessere (nicht unbedingt die beste) Antwort einen großen Mehrwert für das OP und andere, die dies lesen, um alle Optionen für CLI-Verbesserungen zu verstehen. Anfänger-OPs kennen TCL möglicherweise nicht einmal, aber genau das suchen sie möglicherweise.
Generalnetworkerror
Mein Gegenargument ist der Aufwand, der beim Schreiben eines Tcl-Skripts im Vergleich zum Erstellen eines Alias ​​erforderlich ist, und nicht jeder hat die freie Zeit (oder den Wunsch), die Tcl-Syntax zu lernen. Betreff: Wenn ich die Frage des OP beantworte, kann ich sehen, wie nützlich es ist, auf die Option Tcl hinzuweisen.
John Jensen
2

Persönlich halte ich Alias ​​für eine schlechte Idee. Sie wissen nie, wann Sie sich bei einem Gerät anmelden werden, für das Ihr Lieblingsalias nicht definiert ist. Dann müssen Sie sich von Anfang an daran erinnern, was Sie eingegeben haben.

Das Beste, was man machen kann? Tippe es einfach weiter ab. Schließlich wird sich Ihre Schreibgeschwindigkeit verbessern.

mellowd
quelle
Ich habe kein Problem mit der Verwendung von Aliasen. Meine Faustregel lautet, dass sie verwendet werden sollten, um die Arbeit effizienter zu gestalten und nicht um Dinge zu vereinfachen, die ich nicht kenne / verstehe. Wenn Sie es ohne den Alias ​​schaffen, großartig, wenn nicht, stellen Sie sicher, dass Sie verstehen, was der Alias ​​tut.
YLearn
1

Wenn Sie Securecrt für Ihren Telnet- / SSH- / Konsolenzugriff verwenden (und nicht zu viel Shell-Scripting ausführen möchten), können Sie Ihre Befehle jederzeit "aufzeichnen". Es gibt eine Option, und Sie können Ihr aufgezeichnetes Skript einfach in Tools auswählen Ich glaube es ist

alex_da_gr8
quelle
0

Je nachdem, was Sie tun, besteht eine bessere Option darin, Shell-, Expect- oder andere Skripte zu schreiben, um Ihre allgemeinen Aufgaben zu erledigen.

Für die grundlegende Fehlerbehebung ist es noch schöner, wenn mein Warnsystem den Teil zum Sammeln von Informationen bereits ausführt.

Durch die Kombination von Tools wie Notch mit verwandten Tools wie der "Mr CLI" können Sie sehr einfach einige wirklich leistungsstarke Tools erstellen, die Ihnen heute helfen und die Dinge morgen auf einfache Weise weiter verbessern, wenn Sie nicht vollständig automatisieren Verschieben der Aufgaben auf einen Helpdesk, dem eine einfache Web-App zugewiesen werden kann, die die grundlegenden Schritte ausführt und dabei hilft, Benutzerprobleme schneller zu beheben.

LapTop006
quelle
All dies ist im Grunde genommen genau richtig, aber es beantwortet immer noch nicht die Frage des OP. Es schafft im Grunde Diskussionspunkte, die wir vermeiden sollten.
John Jensen