Auf dieser Seite
Anzeigen von Benutzern, die die Konfiguration gerade bearbeiten
Beispiel: Löschen einer Anweisung aus der Gerätekonfiguration
Beispiel: Einfügen einer neuen Kennung in eine Gerätekonfiguration
Deaktivieren und Reaktivieren von Anweisungen und Bezeichnern in einer Gerätekonfiguration
Beispiel: Deaktivieren und Reaktivieren von Anweisungen und Bezeichnern in einer Gerätekonfiguration
So nehmen Sie globale Änderungen an der Gerätekonfiguration vor
Allgemeine reguläre Ausdrücke für die Verwendung mit dem Befehl
replace
Beispiel: Globales Ersetzen in einer Gerätekonfiguration – Ersetzen eines Schnittstellennamens
Beispiel: Globales Ersetzen in einer Gerätekonfiguration – die upto-Option
Beispiel: Einschließen von Kommentaren in eine Gerätekonfiguration mithilfe der CLI
Beispiel: Verwenden des Platzhalterbefehls mit der Option "Bereich"
Ändern der Konfiguration eines Geräts
Mit der CLI können Sie eine vorhandene Junos OS Konfiguration ändern. In diesem Abschnitt werden die Besonderheiten des Hinzufügens einer Anweisung, des Löschens einer Anweisung, des Kopierens einer Anweisung und des Einfügens eines neuen Bezeichners einschließlich Beispielen erläutert.
Anzeigen von Benutzern, die die Konfiguration gerade bearbeiten
Um die Benutzer anzuzeigen, die die Konfiguration gerade bearbeiten, verwenden Sie den Befehl Konfigurationsmodus:status
user@host# status
Users currently editing the configuration:
rchen terminal p0 (pid 55691) on since 2018-03-01 13:17:25 PST
[edit interfaces]
Das System zeigt an, wer die Konfiguration bearbeitet (), wo der Benutzer angemeldet ist (), das Datum und die Uhrzeit der Anmeldung des Benutzers () und welche Ebene der Hierarchie der Benutzer bearbeitet ().rchen
terminal p0
2018-03-01 13:17:25
PST
[edit interfaces]
Wenn Sie den Befehl configuration mode absetzen und ein Benutzer eine Kandidatenkonfiguration für einen zukünftigen Zeitpunkt geplant hat, zeigt das System an, wer den Commit geplant hat (), wo der Benutzer angemeldet ist (), das Datum und die Uhrzeit der Anmeldung des Benutzers () und dass ein Commit ausstehtstatus
root
terminal d0
2018-10-31 14:55:15 PST
(commit at).
[edit]
user@host# status
Users currently editing the configuration:
root terminal d0 (pid 767) on since 2018-10-31 14:55:15 PST, idle 00:03:09
commit at
Wenn Sie den Befehl Konfigurationsmodus ausführen und ein Benutzer die Konfiguration im Modus "Exklusiven konfigurieren" bearbeitet, zeigt das System an, wer die Konfiguration bearbeitet (), wo der Benutzer angemeldet ist (), das Datum und die Uhrzeit der Anmeldung des Benutzers () und dass ein Benutzer die Konfiguration im Modus "Exklusiven konfigurieren" bearbeitet ().status
root
terminal d0
2018-11-01 13:05:11 PST
exclusive [edit]
[edit]
user@host# status
Users currently editing the configuration:
root terminal d0 (pid 2088) on since 2018-11-01 13:05:11 PST
exclusive [edit]
Siehe auch
Ändern der Gerätekonfiguration von Juniper Networks
Um ein Gerät von Juniper Networks zu konfigurieren oder eine vorhandene Konfiguration zu ändern, fügen Sie der Konfiguration mit den Befehlen und Anweisungen hinzu.edit
set
Für jede Anweisungshierarchie legen Sie die Hierarchie an, beginnend mit einer Anweisung auf der obersten Ebene. Anschließend fahren Sie mit der Erstellung der Hierarchie mit Anweisungen fort, die in der Hierarchie nach unten verschoben werden.
Um die Hierarchie zu ändern, verwenden Sie zwei Befehle für den Konfigurationsmodus. Wählen Sie den entsprechenden Befehl basierend auf dem, was Sie erreichen möchten:
edit
: Wechselt zu einer angegebenen Hierarchieebene. Wenn diese Hierarchieebene nicht vorhanden ist, wird sie vom Befehl erstellt.edit
Der Befehl hat die folgende Syntax:edit
edit <statement-path>
set
– Erstellt eine Konfigurationsanweisung und legt Bezeichnerwerte fest. Nachdem Sie einen Befehl ausgegeben haben, bleiben Sie auf derselben Ebene in der Hierarchie.set
Der Befehl hat die folgende Syntax:set
set <statement-path> statement <identifier>
Die Hierarchie zur Konfigurationsanweisung und die Anweisung selbst lautet .
statement-path
Wenn Sie bereits auf die Hierarchieebene der Anweisung gewechselt sind, können Sie den Anweisungspfad weglassen. Die Konfigurationsanweisung selbst ist .statement
Die Zeichenfolge identifiziert eine Instanz einer Anweisung.identifier
Anweisungen können entweder Containeranweisungen oder Blattanweisungen sein. Eine Containeranweisung kann zusätzliche Containeranweisungen sowie Blattanweisungen enthalten. Eine Blattaussage steht jedoch für sich. Der Befehl zeigt die Containeranweisungen an, während sowohl die Container- als auch die Leaf-Anweisung angezeigt werden, um zwischen ihnen zu unterscheiden.edit?
set?
>
Sie können den Befehl nicht verwenden, um den Wert von Bezeichnern zu ändern.edit
Sie müssen den Befehl verwenden.set
Siehe auch
Hinzufügen von Konfigurationsanweisungen und Bezeichnern
Sie konfigurieren alle Eigenschaften eines Geräts von Juniper Networks, indem Sie Anweisungen in die Konfiguration aufnehmen. Eine Anweisung besteht aus einem Schlüsselwort, bei dem es sich um festen Text handelt. Sie können auch einen Bezeichner in eine Anweisung einfügen. Ein Bezeichner ist ein von Ihnen definierter identifizierender Name, z. B. der Name einer Schnittstelle oder ein Benutzername, und der es Ihnen und der CLI ermöglicht, zwischen einer Sammlung von Anweisungen zu unterscheiden.
Die folgende Liste zeigt z. B. die Anweisungen, die auf oberster Ebene im Konfigurationsmodus verfügbar sind:
user@host# set ?
Possible completions:
> accounting-options Accounting data configuration
+ apply-groups Groups from which to inherit configuration data
> chassis Chassis configuration
> class-of-service Class-of-service configuration
> firewall Define a firewall configuration
> forwarding-options Configure options to control packet sampling
> groups Configuration groups
> interfaces Interface configuration
> policy-options Routing policy option configuration
> protocols Routing protocol configuration
> routing-instances Routing instance configuration
> routing-options Protocol-independent routing option configuration
> snmp Simple Network Management Protocol
> system System parameters
Eine spitze Klammer ( ) vor dem Anweisungsnamen gibt an, dass es sich um eine Containeranweisung handelt und dass Sie weitere Anweisungen auf Ebenen darunter definieren können.>
Wenn vor dem Anweisungsnamen keine spitze Klammer ( ) steht, handelt es sich um eine Blattanweisung. Sie können keine anderen Anweisungen auf Hierarchieebenen darunter definieren.>
Ein Pluszeichen (+) vor dem Anweisungsnamen gibt an, dass er eine Reihe von Werten enthalten kann. Um einen Satz anzugeben, schließen Sie die Werte in eckige Klammern ein. Hier einige Zahlen zum Generationswechsel:
[edit]
user@host# set policy-options community my-as1-transit members [65535:10 65535:11]
In einigen Anweisungen können Sie einen Bezeichner angeben. Für einige Bezeichner, z. B. Schnittstellennamen, müssen Sie den Bezeichner in einem genauen Format angeben. Der Schnittstellenname so-0/0/0 bezieht sich beispielsweise auf eine SONET/SDH-Schnittstelle, die sich auf dem Flexible PIC Concentrator (FPC) in Steckplatz 0, an der ersten PIC-Position und am ersten Port der Physical Interface Card (PIC) befindet.
Für andere Bezeichner, z. B. beschreibenden Text für die Benutzeroberfläche sowie Richtlinien- und Firewallbegriffsnamen, können Sie einen beliebigen Namen angeben, einschließlich Sonderzeichen, Leerzeichen und Tabulatoren.
Sie müssen Bezeichner in Anführungszeichen (doppelte Anführungszeichen) setzen. Außerdem müssen Sie Bezeichner und Zeichenfolgen, die ein Leerzeichen, ein Tabulatorzeichen oder eines der folgenden Zeichen enthalten, in Anführungszeichen setzen:
( ) [ ] { } ! @ # $ % ^ & | ' = ?
Wenn Sie keine Option für eine Anweisung eingeben, für die eine solche Option erforderlich ist, gibt eine Meldung den Typ der erforderlichen Informationen an. In diesem Beispiel müssen Sie eine Bereichsnummer eingeben, um den Befehl auszuführen:
[edit]
user@host# set protocols ospf area
^
syntax error, expecting <identifier>
Siehe auch
So löschen Sie eine Anweisung aus einer Gerätekonfiguration
Sie löschen eine Anweisung oder einen Bezeichner aus einer Gerätekonfiguration mit dem Befehl configuration mode.delete
Durch das Löschen einer Anweisung oder eines Bezeichners wird die mit dieser Anweisung oder diesem Bezeichner verknüpfte Funktionalität "dekonfiguriert" und die Funktionalität wird auf den Standardzustand zurückgesetzt.
user@host# delete <statement-path> <identifier>
Wenn Sie eine Anweisung löschen, werden die Anweisung und alle untergeordneten Anweisungen und Bezeichner aus der Konfiguration entfernt.
Bei Anweisungen, die mehr als einen Bezeichner haben können, wird beim Löschen eines Bezeichners nur dieser Bezeichner gelöscht. Die anderen Bezeichner in der Anweisung bleiben erhalten.
Um die gesamte Hierarchie ab der aktuellen Hierarchieebene zu löschen, verwenden Sie den Befehl ohne Angabe einer Anweisung oder eines Bezeichners.delete
Wenn Sie die Anweisung oder den Bezeichner weglassen, werden Sie aufgefordert, den Löschvorgang zu bestätigen:
[edit]
user@host# delete
Delete everything under this level? [yes, no] (no)
Possible completions:
no Don't delete everything under this level
yes Delete everything under this level
Delete everything under this level? [yes, no] (no)
Es ist nicht möglich, mehrere Anweisungen oder Bezeichner innerhalb einer Hierarchie mit einem einzigen Befehl zu löschen.delete
Sie müssen jede Anweisung oder jeden Bezeichner einzeln mit mehreren Befehlen löschen.delete
Betrachten Sie z. B. die folgende Konfiguration auf Hierarchieebene :[edit system]
system { host-name host-211; domain-name domain-122; backup-router 192.168.71.254; arp; authentication-order [ radius password tacplus ]; }
Um das , und aus der Konfiguration zu löschen, müssen Sie jede Anweisung einzeln löschen.domain-name
host-name
backup-router
user@hostdelete system host-name host-211
user@hostdelete system domain-name domain-122
user@hostdelete system backup-router 192.168.71.254
Sie können keinen einzelnen Befehl ausgeben.delete
Der folgende Befehl würde beispielsweise nicht funktionieren:
user@host> delete system hostname host-211 domain-name domain-122 backup-router 192.168.71.254
Sie können zusammengehörige Konfigurationselemente gleichzeitig löschen, z. B. kanalisierte Schnittstellen oder statische Routen, indem Sie einen einzigen Befehl und reguläre Ausdrücke verwenden. Durch das Löschen einer Anweisung oder eines Bezeichners wird die mit dieser Anweisung oder diesem Bezeichner verknüpfte Funktionalität "dekonfiguriert" und die Funktionalität wird auf den Standardzustand zurückgesetzt.
Sie können nur bestimmte Teile der Konfiguration löschen, in denen Sie normalerweise mehrere Elemente einfügen, z. B. Schnittstellen. Sie können jedoch keine "Gruppen" verschiedener Elemente löschen, wie in diesem Beispiel gezeigt:
user@host#show system services
ftp; rlogin; rsh; ssh { root-login allow; } telnet; [edit] user@host#wildcard delete system services *
syntax error.
Wenn Sie eine Anweisung löschen, werden die Anweisung und alle untergeordneten Anweisungen und Bezeichner aus der Konfiguration entfernt.
Um verwandte Konfigurationselemente zu löschen, geben Sie den Befehl configuration mode mit der Option ab, und geben Sie den Anweisungspfad, die Elemente, die mit einem regulären Ausdruck zusammengefasst werden sollen, und den regulären Ausdruck wie folgt an:wildcard
delete
user@host# wildcard delete <statement-path> <identifier> <regular-expression>
Wenn Sie den Befehl zum Löschen zugehöriger Konfigurationselemente verwenden, muss der reguläre Ausdruck die letzte Anweisung sein.wildcard
Wenn die Übereinstimmung mit mehr als acht verwandten Elementen übereinstimmt, zeigt die CLI nur die ersten acht Elemente an.Junos OS
So löschen Sie Schnittstellen aus der Konfiguration
Sie können mehrere T1-Schnittstellen im Bereich von bis löschen, indem Sie die folgende Syntax verwenden:t1-0/0/0:0
t1-0/0/0:23
user@host# wildcard delete interfaces t1-0/0/0:.*
matched: t1-0/0/0:0
matched: t1-0/0/0:1
matched: t1-0/0/0:2
Delete 3 objects? [yes,no] (no) no
So löschen Sie Routen aus der Konfiguration
Sie können statische Routen im Bereich von bis löschen, indem Sie die folgende Syntax verwenden:172.0.0.0
172.255.0.0
user@host# wildcard delete routing-options static route 172.*
matched: 172.16.0.0/12
matched: 172.16.14.0/24
matched: 172.16.100.0/24
matched: 172.16.128.0/19
matched: 172.16.160.0/24
matched: 172.17.12.0/23
matched: 172.17.24.0/23
matched: 172.17.28.0/23
...
Delete 13 objects? [yes,no] (no)
Beispiel: Löschen einer Anweisung aus der Gerätekonfiguration
Das folgende Beispiel zeigt, wie die Anweisung gelöscht wird, wodurch die Konfiguration von OSPF auf dem Router effektiv aufgehoben wird:ospf
[edit] user@host#set protocols ospf area 0.0.0.0 interface so-0/0/0 hello-interval 5
[edit] user@host#show
protocols { ospf { area 0.0.0.0 { interface so-0/0/0 { hello-interval 5; } } } } [edit] user@host#delete protocols ospf
[edit] user@host#show
[edit] user@host#
Löschen Sie alle Anweisungen von der aktuellen Ebene abwärts:
[edit] user@host#edit protocols ospf area 0.0.0.0
[edit protocols ospf area 0.0.0.0] user@host#set interface so-0/0/0 hello-interval 5
[edit protocols ospf area 0.0.0.0] user@host#delete
Delete everything under this level? [yes, no]yes
[edit protocols ospf area 0.0.0.0] user@host#show
[edit] user@host#
Heben Sie die Konfiguration einer bestimmten Eigenschaft auf. Entfernen Sie in diesem Beispiel die Einstellung für die Schnittstellengeschwindigkeit:
[edit] user@host#set interfaces so-3/0/0 speed 100mb
[edit] user@host#show
interfaces { so-3/0/0 { speed 100mb; } } [edit] user@host#delete interfaces so-3/0/0 speed
[edit] user@host#show
interfaces { so-3/0/0; }
Kopieren einer Anweisung in der Konfiguration
Wenn Sie viele ähnliche Anweisungen in einer Gerätekonfiguration haben, können Sie eine Anweisung hinzufügen und dann Kopien dieser Anweisung erstellen. Beim Kopieren einer Anweisung werden diese Anweisung und die gesamte Hierarchie der Anweisungen, die unter dieser Anweisung konfiguriert sind, dupliziert. Das Kopieren von Anweisungen ist nützlich, wenn Sie viele physische oder logische Schnittstellen desselben Typs konfigurieren.
So erstellen Sie eine Kopie einer vorhandenen Anweisung in der Konfiguration:
- Verwenden Sie den Konfigurationsmodus-Befehl :
copy
user@host#
copy existing-statement to new-statement
- Überprüfen Sie unmittelbar nachdem Sie einen Teil der Konfiguration kopiert haben, die Gültigkeit der neuen Konfiguration.
- Wenn die Konfiguration ungültig ist, ändern Sie entweder den kopierten Teil oder den ursprünglichen Teil, um eine gültige Konfiguration zu erstellen.
Beispiel: Kopieren einer Anweisung in der Konfiguration
In diesem Beispiel wird gezeigt, wie Sie eine virtuelle Verbindung (VC) auf einer Schnittstelle erstellen können, indem Sie eine vorhandene VC kopieren.
Anforderungen
Vor der Konfiguration dieses Beispiels ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.
Bevor Sie mit diesem Beispiel beginnen, konfigurieren Sie die folgende Erstkonfiguration:
[edit interfaces]
user@host# show
at-1/0/0 {
description "PAIX to MAE West"
encapsulation atm-pvc;
unit 61 {
point-to-point;
vci 0.61;
family inet {
address 10.0.1.1/24;
}
}
}
Um die Erstkonfiguration für dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche und ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, kopieren Sie diesen Befehl, fügen Sie ihn in die CLI auf Hierarchieebene ein, und wechseln Sie dann in den Konfigurationsmodus.[edit]
commit
set interfaces at-1/0/0 description "PAIX to MAE West" set interfaces at-1/0/0 encapsulation atm-pvc set interfaces at-1/0/0 unit 61 point-to-point set interfaces at-1/0/0 unit 61 vci 0.61 set interfaces at-1/0/0 unit 61 family inet address 10.0.1.1/24
Überblick
In diesem Beispiel, das das Kopieren von Anweisungen veranschaulicht, fügen Sie eine virtuelle Verbindung hinzu, die einer bereits konfigurierten virtuellen Verbindung sehr ähnlich ist.
Konfiguration
CLI-Schnellkonfiguration
Beginnen Sie auf der Hierarchieebene.[edit interfaces at-1/0/0]
copy unit 61 to unit 62
set unit 62 vci 0.62
edit unit 62
replace pattern 10.0.1.1 with 10.0.2.1
Konfigurieren durch Kopieren
Schritt-für-Schritt-Anleitung
So konfigurieren Sie durch Kopieren einer Konfiguration:
Wechseln Sie in die Hierarchieebene und kopieren Sie die Einheit 61.
[edit interfaces at-1/0/0]
[edit interfaces at-1/0/0] user@host#
copy unit 61 to unit 62
-
Sehen Sie sich die neue Konfiguration an, und sehen Sie, was Sie ändern müssen, um die Konfiguration gültig zu machen.
user@host#
show interfaces at-1/0/0
description "PAIX to MAE West" encapsulation atm-pvc; unit 61 { point-to-point; vci 0.61; family inet { address 10.0.1.1/24; } } unit 62 { point-to-point; vci 0.61; family inet { address 10.0.1.1/24; } } Ändern Sie die Konfiguration, um sie gültig zu machen.
In diesem Beispiel möchten Sie den Virtual Circuit Identifier (VCI) und den Virtual Path Identifier (VPI) neu konfigurieren.
[edit interfaces at-1/0/0] user@host#
set unit 62 vci 0.62
Außerdem möchten Sie die IP-Adresse der neuen Schnittstelle durch eine eigene IP-Adresse ersetzen.
[edit interfaces at-1/0/0] user@host#
edit unit 62
user@host#replace pattern 10.0.1.1 with 10.0.2.1
Ergebnisse
[edit] show interfaces at-1/0/0 { description "PAIX to MAE West" encapsulation atm-pvc; unit 61 { point-to-point; vci 0.61; family inet { address 10.0.1.1/24; } } unit 62 { point-to-point; vci 0.62; family inet { address 10.0.2.1/24; } } }
Beispiel: Ersetzen einer Konfiguration
Wenn Sie Änderungen an der Konfiguration eines Geräts vornehmen müssen, können Sie jederzeit die ursprünglichen Konfigurationseinstellungen mit dem Befehl entfernen und Ihre neuen Konfigurationseinstellungen mit dem Befehl hinzufügen.delete
set
Es gibt jedoch andere Möglichkeiten, eine Konfiguration zu ändern, die effizienter und benutzerfreundlicher sind.
In diesem Beispiel wird gezeigt, wie Sie die folgenden Konfigurationsmodusbefehle verwenden, um eine vorhandene Konfiguration zu aktualisieren:
rename
– Benennen Sie eine vorhandene Konfigurationseinstellung um, z. B. einen Schnittstellennamen. Dieser Befehl kann nützlich sein, wenn Sie einem Gerät neue Schnittstellen hinzufügen.copy
– Kopieren Sie eine Konfigurationseinstellung und die gesamte Hierarchie der Anweisungen, die unter dieser Einstellung konfiguriert sind. Das Kopieren von Konfigurationsanweisungen ist nützlich, wenn Sie viele physische oder logische Schnittstellen desselben Typs konfigurieren.replace
: Nehmen Sie globale Änderungen an Textmustern in der Konfiguration vor. Wenn Sie z. B. ein Wort, das in der Beschreibungsanweisung für alle Schnittstellen auf Ihrem Gerät vorkommt, wiederholt falsch schreiben, können Sie diesen Fehler mit einem einzigen Befehl beheben.
Anforderungen
Vor der Konfiguration dieses Beispiels ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.
Überblick
Im ersten Beispiel in diesem Thema nehmen Sie die folgenden Konfigurationsänderungen vor:
Erstellen Sie eine neue Benutzeroberfläche mit einer Beschreibung, die einen Tippfehler enthält.
Kopieren Sie die Konfiguration aus der Schnittstelle, die Sie erstellt haben, um eine neue Schnittstelle zu erstellen.
Benennen Sie eine der von Ihnen erstellten Schnittstellen um.
Korrigieren Sie den Tippfehler in der Beschreibung für die von Ihnen erstellten Schnittstellen.
Im zweiten, kürzeren Beispiel probieren Sie einige der gleichen Befehle unter etwas anderen Umständen aus.
Konfiguration
- Verwenden Sie die Befehle Kopieren, Umbenennen und Ersetzen, um eine Loopback-Schnittstellenkonfiguration zu ändern
- Vergleichen Sie den Kopierbefehl auf der Ebene der Konfigurationshierarchie der obersten Ebene
Verwenden Sie die Befehle Kopieren, Umbenennen und Ersetzen, um eine Loopback-Schnittstellenkonfiguration zu ändern
Schritt-für-Schritt-Anleitung
Wenn in der vorhandenen Konfiguration eine der in diesem Beispiel verwendeten Loopback-Schnittstellen-Unit-Nummern verwendet wird, müssen Sie andere nicht verwendete Loopback-Interface-Unit-Nummern ersetzen. Andernfalls kann das Ausführen dieser Schritte den bestehenden Betriebsstatus Ihres Geräts beschädigen.
So erstellen und ändern Sie eine Konfiguration einer Loopback-Schnittstelle mit den Befehlen , und :copy
rename
replace
-
Erstellen Sie eine neue Loopback-Schnittstelleneinheitsnummer und fügen Sie eine Beschreibung hinzu.
Die Fehler in der Schreibweise von loopback in der Beschreibung sind beabsichtigt.
[edit] user@host#
set interfaces lo0 unit 100 description "this is a lopbck interface"
-
Zeigen Sie die Konfiguration für die soeben hinzugefügte Loopback-Schnittstelle an.
[edit] user@host#
show interfaces lo0 unit 100
description "this is a lopbck interface";
-
Duplizieren Sie die soeben erstellte Loopback-Schnittstelle, einschließlich Fehlern, von Einheit 100 auf Einheit 101.
[edit] user@host#
copy interfaces lo0 unit 100 to unit 101
-
Zeigen Sie die Konfigurationen für die Loopback-Schnittstellen lo0 unit 100 und lo0 unit 101 an.
[edit] user@host#
show interfaces lo0 unit 100
description "this is a lopbck interface";
[edit] user@host#show interfaces lo0 unit 101
description "this is a lopbck interface";
Der Befehl dupliziert eine Schnittstelle einschließlich aller untergeordneten Anweisungen, z. B . .
copy
description
-
Benennen Sie die Loopback-Schnittstelle lo0 Unit 100 in Loopback-Schnittstelle lo0 Unit 102 um.
[edit] user@host#
rename interfaces lo0 unit 100 to unit 102
-
Zeigen Sie die Konfiguration für die Loopback-Schnittstelle lo0 Einheit 100 an.
[edit] user@host#
show interfaces lo0 unit 100
[edit] user@host#Mit diesem Befehl sollten keine Ergebnisse angezeigt werden. Die Loopback-Schnittstelle lo0 Unit 100 ist jetzt weg. Der Befehl ersetzt die angegebene Konfigurationsanweisung durch die neue Konfiguration.
rename
-
Korrektur der falschen Schreibweise des Wortes loopback in den Beschreibungen für die Loopback-Schnittstellen lo0 unit 101 und lo0 unit 102.
[edit] user@host#
replace pattern lopbck with loopback
-
Zeigen Sie die Konfiguration für die Loopback-Schnittstellen lo0 unit 101 und lo0 102 an, um zu überprüfen, ob das Wort loopback jetzt richtig geschrieben ist.
[edit] user@host#
show interfaces lo0 unit 101
description "this is a loopback interface";
[edit] user@host#show interfaces lo0 unit 102
description "this is a loopback interface";
Der Befehl ersetzt alle Instanzen des im Befehl angegebenen Musters, sofern es nicht in irgendeiner Weise eingeschränkt ist.
replace
Das nächste Beispiel in diesem Thema zeigt eine Möglichkeit, die Auswirkungen des Befehls einzuschränken .replace
-
Verwenden Sie im Konfigurationsmodus den Befehl, um die Gerätekonfiguration in den Zustand zurückzuversetzen, in dem sie sich befand, bevor Sie die vorherigen Schritte ausgeführt haben.
rollback
[edit] user@host#
rollback
Ergebnisse
Verwenden Sie im Konfigurationsmodus die Befehle und, um sicherzustellen, dass sich die Gerätekonfiguration in dem Zustand befindet, in dem sie sich befand, bevor Sie die Schritte in diesem Beispiel ausgeführt haben.show interfaces lo0 unit 101
show interfaces lo0 unit 102
[edit]
user@host: show interfaces lo0 unit 101
[edit]
user@host#
Mit diesem Befehl sollten keine Ergebnisse angezeigt werden.
[edit] user@host# show interfaces lo0 unit 102 [edit] user@host#
Mit diesem Befehl sollten keine Ergebnisse angezeigt werden.
Vergleichen Sie den Kopierbefehl auf der Ebene der Konfigurationshierarchie der obersten Ebene
Schritt-für-Schritt-Anleitung
Das vorherige Beispiel zeigt die Befehle , und auf Hierarchieebene .copy
rename
replace
[edit interfaces interface-name unit logical-interface-number]
Dieses Beispiel zeigt, wie einige dieser Befehle auf der obersten Ebene der CLI-Konfigurationsmodushierarchie funktionieren.
Im folgenden Beispiel müssen Sie zu verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus .Verwenden des CLI-Editors im Konfigurationsmodus
-
Erstellen Sie eine Ethernet-Schnittstelle.
[edit] user@host#
set interfaces et-2/0/0 unit 0 family inet address 192.0.2.2
-
Kopieren Sie die Schnittstelle, die Sie gerade erstellt haben, in eine andere Schnittstelle.
[edit] user@host#
copy interfaces et-2/0/0 to et-2/1/0
Vergleichen Sie diesen Befehl mit dem im vorherigen Beispiel, bei dem der Befehl das Schlüsselwort vor dem zu kopierenden Wert annimmt:
copy
copy
unit
[edit] user@host#
copy interfaces lo0 unit 100 to unit 101
Beachten Sie, dass das Schlüsselwort nicht nach der Präposition und vor dem zu kopierenden Wert wiederholt wird.
interfaces
to
Dies geschieht in einigen Anweisungen der obersten Ebene mit dem Befehl.copy
Tipp:Ebenso wiederholen Sie im Befehl in einigen Anweisungen der obersten Ebene den Schlüsselwortteil der Anweisung nicht vor dem neuen Bezeichner.
rename
-
Zeigen Sie Ihre bisherige Konfiguration an.
[edit] user@host#
show interfaces
et-2/0/0 { unit 0 { family inet { address 192.0.2.2/32; } } } et-2/1/0 { unit 0 { family inet { address 192.0.2.2/32; } } } -
Ersetzen Sie die Adresse für et-2/1/0 durch eine andere IP-Adresse.
[edit interfaces et-2/1/0 unit 0 family inet] user@host#
replace pattern 192.0.2.2 with 192.0.2.40
Beachten Sie, dass Sie, wenn Sie nur ein bestimmtes Exemplar eines Musters anstelle aller Vorkommen ändern möchten, zu dieser bestimmten Hierarchieebene navigieren müssen, bevor Sie den Befehl verwenden.
replace
-
Zeigen Sie die Schnittstellen erneut an.
[edit] user@host#
show interfaces
et-2/0/0 { unit 0 { family inet { address 192.0.2.2/32; } } } et-2/1/0 { unit 0 { family inet { address 192.0.2.40/32; } } } -
Verwenden Sie im Konfigurationsmodus den Befehl, um die Gerätekonfiguration in den Zustand zurückzuversetzen, in dem sie sich befand, bevor Sie die vorherigen Schritte ausgeführt haben.
rollback
[edit] user@host#
rollback
Ergebnisse
Verwenden Sie im Konfigurationsmodus die Befehle und, um sicherzustellen, dass sich die Gerätekonfiguration in dem Zustand befindet, in dem sie sich befand, bevor Sie die Schritte in diesem Beispiel ausgeführt haben.show interfaces et-2/0/0
show interfaces et-2/1/0
[edit]
user@hostshow interfaces et-2/0/0
[edit]
user@host#
Mit diesem Befehl sollten keine Ergebnisse angezeigt werden.
[edit]
user@R1# show interfaces et-2/1/0
[edit]
user@host#
Mit diesem Befehl sollten keine Ergebnisse angezeigt werden.
Einfügen einer neuen Kennung in eine Gerätekonfiguration
Bei der Konfiguration eines Geräts von Juniper Networks können Sie die meisten Anweisungen und Bezeichner in beliebiger Reihenfolge eingeben. Unabhängig von der Reihenfolge, in der Sie die Konfigurationsanweisungen eingeben, zeigt die CLI die Konfiguration immer in einer strikten Reihenfolge an. In einigen wenigen Fällen ist jedoch die Reihenfolge der Anweisungen von Bedeutung, da die Konfigurationsanweisungen eine Sequenz erstellen, die der Reihe nach analysiert wird.
Beispielsweise definieren Sie in einer Routingrichtlinie oder einem Firewallfilter Begriffe, die sequenziell analysiert werden. Wenn Sie einen benannten Pfad in dynamischem MPLS erstellen, definieren Sie außerdem eine geordnete Liste der Transitrouter im Pfad, beginnend mit dem ersten Transitrouter und endend mit dem letzten.
Um einen Teil der Konfiguration zu ändern, in dem die Anweisungsreihenfolge wichtig ist, verwenden Sie den Befehl configuration mode:insert
user@host#insert <statement-path> identifier1 (before | after) identifier2
Wenn Sie den Befehl nicht verwenden, sondern stattdessen den Bezeichner konfigurieren, wird der Bezeichner am Ende der Liste ähnlicher Bezeichner platziert.insert
Beispiel: Einfügen einer neuen Kennung in eine Gerätekonfiguration
Dieses Beispiel zeigt die Verwendung des Befehls.insert
Während ein mit dem Befehl hinzugefügter Begriff am Ende der vorhandenen Liste von Begriffen platziert wird, verwenden Sie den Befehl, um einen Begriff in der von Ihnen angegebenen Reihenfolge hinzuzufügen.set
insert
Das Angeben der Reihenfolge von Anweisungen ist in den Fällen wichtig, in denen die Reihenfolge wichtig ist, da die Konfigurationsanweisungen eine Sequenz erstellen, die der Reihe nach analysiert wird.
Wie dieses Beispiel zeigt, müssen Sie den Begriff erstellen (oder er muss bereits vorhanden sein), bevor Sie ihn mit dem Befehl verwenden können.insert
Der Bezugspunkt für die Platzierung des Begriffs muss ebenfalls vorhanden sein; Wenn Sie z. B. den Begriff T1 vor dem Begriff T2 platzieren möchten, müssen sowohl T1 als auch T2 bereits vorhanden und ausgefüllt sein. Entfernt leere Begriffe automatisch.Junos OS
Anforderungen
Bevor Sie einen Begriff einfügen können, müssen Sie eine anfängliche Richtlinie konfigurieren. Um die anfängliche Richtlinie für dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, und ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, kopieren Sie die Befehle und fügen Sie sie in die CLI auf Hierarchieebene ein, und wechseln Sie dann in den Konfigurationsmodus.[edit policy-options]
commit
set policy-statement statics term term1 from route-filter 192.168.0.0/16 orlonger set policy-statement statics term term1 from route-filter 224.0.0.0/3 orlonger set policy-statement statics term term1 then reject set policy-statement statics term term2 from protocol direct set policy-statement statics term term2 then reject set policy-statement statics term term3 from protocol static set policy-statement statics term term3 then reject set policy-statement statics term term4 then accept
Überprüfen Sie nun, ob Sie die Hierarchie richtig konfiguriert haben:
[edit policy-options]
user@host# show
policy-statement statics {
term term1 {
from {
route-filter 192.168.0.0/16 orlonger;
route-filter 224.0.0.0/3 orlonger;
}
then reject;
}
term term2 {
from protocol direct;
then reject;
}
term term3 {
from protocol static;
then reject;
}
term term4 {
then accept;
}
}
Überblick
Um einen Teil der Konfiguration zu ändern, in dem die Anweisungsreihenfolge wichtig ist, müssen Sie den Befehl configuration mode verwenden.insert
Wenn Sie stattdessen den Befehl verwenden, befindet sich die hinzugefügte Anweisung oder der Bezeichner sequenziell an der falschen Stelle.set
Die einzige andere Möglichkeit, die Bedingungen des Befehls in die richtige Reihenfolge zu bringen, besteht darin, die Konfiguration zu zerlegen und von vorne zu beginnen.
Konfiguration
CLI-Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche und ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, kopieren Sie die Befehle und fügen Sie sie in die CLI auf der Hierarchieebene [edit policy-options] ein, und wechseln Sie dann in den Konfigurationsmodus.commit
[edit] user@host#rename policy-options policy-statement statics term term4 to term term6
[edit] user@host#set policy-options policy-statement statics term term4 from protocol local
[edit] user@host#set policy-options policy-statement statics term term4 then reject
[edit] user@host#set policy-options policy-statement statics term term5 from protocol aggregate
[edit] user@host#set policy-options policy-statement statics term term5 then reject
[edit] user@host#insert policy-options policy-statement statics term term4 after term term3
[edit] user@host#insert policy-options policy-statement statics term term5 after term term4
Konfigurieren zum Einfügen von Begriffen
Schritt-für-Schritt-Anleitung
-
Bestimmen Sie die Reihenfolge, in der Ihre Konfigurationsbedingungen eingefügt werden müssen. Berücksichtigen Sie sowohl die ursprünglichen Begriffe als auch die neuen Begriffe, die Sie hinzufügen möchten.
In der ursprünglichen Konfiguration heißt die Richtlinie , und es gibt vier Begriffe.
statics
Jeder der ersten drei Begriffe stimmt mit einem anderen Übereinstimmungskriterium überein, und die resultierenden Übereinstimmungen werden abgelehnt. Die letzte Laufzeit akzeptiert den gesamten restlichen Datenverkehr.In diesem Beispiel müssen Sie zwei Begriffe hinzufügen, die zusätzliche Datenverkehrstypen eliminieren. Beide Begriffe müssen in der ursprünglichen Konfiguration vor dem letzten Begriff stehen.
Benennen Sie die ursprüngliche term4 in term6 um.
[edit] user@host#
rename policy-options policy-statement statics term term4 to term term6
In diesem Schritt wird der ursprüngliche letzte Begriff, der jetzt in term6 umbenannt wurde, als letzter Begriff beibehalten.
Erstellen Sie einen neuen Begriff4.
[edit] user@host#
set policy-options policy-statement statics term term4 from protocol local
user@host#set policy-options policy-statement statics term term4 then reject
Es wird ein neuer Begriff hinzugefügt, der den Datenverkehr von lokalen Systemadressen abgleicht und ablehnt.
Erstellen Sie einen neuen Begriff5.
[edit] user@host#
set policy-options policy-statement statics term term5 from protocol aggregate
user@host#set policy-options policy-statement statics term term5 then reject
Es wird ein neuer Begriff hinzugefügt, der den Datenverkehr von aggregierten Routen abgleicht und ablehnt.
Fügen Sie term4 nach term3 ein.
[edit] user@host#
insert policy-options policy-statement statics term term4 after term term3
Fügen Sie term5 nach term4 ein.
[edit] user@host#
insert policy-options policy-statement statics term term5 after term term4
Ergebnisse
[edit]
user@host# show policy-options policy-statement statics
term term1 {
from {
route-filter 192.168.0.0/16 orlonger;
route-filter 224.0.0.0/3 orlonger;
}
then reject;
}
term term2 {
from protocol direct;
then reject;
}
term term3 {
from protocol static;
then accept;
}
term term4 {
from protocol local;
then reject;
}
term term5 {
from protocol aggregate;
then reject;
}
term term6 {
then accept;
}
Deaktivieren und Reaktivieren von Anweisungen und Bezeichnern in einer Gerätekonfiguration
In einer Junos OS Konfiguration können Sie Anweisungen und Bezeichner deaktivieren, sodass sie nicht wirksam werden, wenn Sie den Befehl ausgeben.commit
Alle deaktivierten Anweisungen und Identifikatoren werden mit dem Tag gekennzeichnet.inactive
Sie verbleiben in der Konfiguration, werden aber nicht aktiviert, wenn Sie einen Befehl erteilen.commit
Um eine Anweisung oder einen Bezeichner zu deaktivieren, verwenden Sie den Befehl Konfigurationsmodus:deactivate
user@host# deactivate( statement | identifier )
Um eine Anweisung oder einen Bezeichner erneut zu aktivieren, verwenden Sie den Befehl configuration mode:activate
user@host# activate ( statement | identifier )
In beiden Befehlen müssen sich die und die von Ihnen angegebenen auf der aktuellen Hierarchieebene befinden.statement
identifier
Wenn Sie eine Anweisung deaktivieren, wird diese bestimmte Anweisung ignoriert und überhaupt nicht angewendet, wenn Sie einen Befehl ausgeben.commit
Um eine Anweisung zu deaktivieren, verwenden Sie den Befehl configuration mode.disable
In einigen Teilen der Konfigurationshierarchie können Sie eine Anweisung zum Deaktivieren der Funktionalität einfügen.disable
Ein Beispiel ist das Deaktivieren einer Schnittstelle, indem die Anweisung auf Hierarchieebene eingeschlossen wird.disable
[edit interface
interface-name]
Wenn Sie eine Funktion deaktivieren, wird sie wieder aktiviert, wenn Sie einen Befehl ausführen, wird jedoch so behandelt, als ob sie ausgefallen oder administrativ deaktiviert wäre.commit
Beispiel: Deaktivieren und Reaktivieren von Anweisungen und Bezeichnern in einer Gerätekonfiguration
Dieses Beispiel zeigt einen häufigen Anwendungsfall, in dem Sie die Befehle und Konfigurationsmodus verwenden.deactivate
activate
Es handelt sich um zwei Routing-Engines, primäre und Backup-Routing-Engines, für die ein ordnungsgemäßer Routing-Engine-Switchover (GRES) konfiguriert ist. Die Software auf beiden Routing-Engines muss aktualisiert werden. Dies kann leicht erreicht werden, indem GRES deaktiviert, die Routing-Engines aktualisiert und GRES dann erneut aktiviert wird.
Sie können auch ein ähnliches Upgrade mit demselben Setup durchführen, mit der Ausnahme, dass Nonstop Active Routing (NSR) anstelle von GRES konfiguriert ist. Sie müssten NSR deaktivieren und dann die Routing-Engines aktualisieren, bevor Sie NSR erneut aktivieren können.
Anforderungen
In diesem Beispiel ist die Verwendung eines Geräts mit zwei Routing-Engines erforderlich, die aufgerüstet werden können.
Bevor Sie mit diesem Beispiel beginnen, stellen Sie sicher, dass Sie GRES konfiguriert haben.
Überblick
In diesem Beispiel gibt es zwei Routing-Engines. GRES ist konfiguriert, und die Routing-Engines müssen aktualisiert werden. Um das Upgrade durchzuführen, müssen Sie die GRES-Funktion deaktivieren, jede der Routing-Engines aktualisieren und GRES dann erneut aktivieren.
Konfiguration
Konfigurieren der Deaktivierung und Reaktivierung von GRES
Schritt-für-Schritt-Anleitung
So deaktivieren und reaktivieren Sie GRES für das Upgrade der Routing-Engine:
Zeigen Sie an, dass GRES für den Router aktiviert ist.
[edit] user@host#
show chassis
redundancy { graceful-switchover; } fpc 2 { pic 0 { tunnel-services { bandwidth 1g; } } }Deaktivieren Sie GRES.
[edit] user@host#
deactivate chassis redundancy graceful-switchover
user@host#commit
Zeigen Sie, dass GRES deaktiviert ist.
[edit] user@host#
show chassis
redundancy { inactive: graceful-switchover; } fpc 2 { pic 0 { tunnel-services { bandwidth 1g; } } }-
Aktualisieren Sie die Routing-Engines nacheinander.
Anweisungen zum Upgrade von Junos OS auf dualen Routing-Engines finden Sie unter Installieren des Softwarepakets auf einem Gerät mit redundanten Routing-Engines.https://www.juniper.net/documentation/en_US/junos/topics/topic-map/install-software-on-routing-engines.html
GRES reaktivieren.
[edit] user@host#
activate chassis redundancy graceful-switchover
user@host#commit
Ergebnisse
Vergewissern Sie sich, dass die GRES-Funktion erneut aktiviert ist.
[edit]
user@host# show chassis
redundancy {
graceful-switchover;
}
fpc 2 {
pic 0 {
tunnel-services {
bandwidth 1g;
}
}
}
So nehmen Sie globale Änderungen an der Gerätekonfiguration vor
Sie können globale Änderungen an Variablen und Bezeichnern in der Gerätekonfiguration vornehmen, indem Sie den Befehl Konfigurationsmodus verwenden.replace
Mit diesem Befehl wird ein Muster in einer Konfiguration durch ein anderes Muster ersetzt. Mit diesem Befehl können Sie z. B. alle Vorkommen eines Schnittstellennamens suchen und ersetzen, wenn ein PIC in einen anderen Steckplatz im Router verschoben wird.
user@host# replace pattern pattern1 with pattern2 <upto n>
Bei der Option handelt es sich um eine Textzeichenfolge oder einen regulären Ausdruck, der die Bezeichner und Werte definiert, die Sie in der Konfiguration ersetzen möchten.pattern
pattern1
Bei der Option handelt es sich um eine Textzeichenfolge oder einen regulären Ausdruck, der die Bezeichner und Werte ersetzt, die sich in .pattern2
pattern1
Die CLI verwendet die standardmäßige UNIX-artige Syntax für reguläre Ausdrücke (wie in POSIX 1003.2 definiert). Wenn der reguläre Ausdruck Leerzeichen, Operatoren oder Platzhalterzeichen enthält, schließen Sie den Ausdruck in Anführungszeichen ein. Gierige Qualifikanten (so viel wie möglich übereinstimmen) werden unterstützt. Lazy Qualifier (so wenig Übereinstimmung wie möglich) werden nicht unterstützt.
Die Option gibt die Anzahl der ersetzten Objekte an.upto
n
Der Wert von steuert die Gesamtzahl der Objekte, die in der Konfiguration ersetzt werden (nicht die Gesamtzahl des Auftretens des Musters).n
Objekte auf der gleichen Hierarchieebene (gleichgeordnete Objekte) werden zuerst ersetzt. Mehrfaches Vorkommen eines Musters innerhalb eines bestimmten Objekts wird als einzelne Ersetzung betrachtet. Wenn eine Konfiguration z. B. eine Textzeichenfolge enthält, ersetzt der Befehl durch (anstelle von ).010101
replace pattern 01 with pattern 02 upto 2
010101
020202
020201
Die Ersetzung von durch wird als einzelne Ersetzung ( = ) betrachtet, nicht als drei separate Ersetzungen ( =).010101
020202
n
1
n
3
Wenn Sie keine Option angeben, werden alle übereinstimmenden Bezeichner und Werte in der Konfiguration ersetzt.upto
pattern1
Der Befehl steht im Konfigurationsmodus auf jeder Hierarchieebene zur Verfügung.replace
Bei allen Übereinstimmungen wird zwischen Groß- und Kleinschreibung unterschieden.
Allgemeine reguläre Ausdrücke für die Verwendung mit dem Befehlreplace
Administrator |
Funktion |
---|---|
|
Gibt an, dass es sich bei einer Übereinstimmung um einen der beiden Begriffe auf beiden Seiten der Pipe handeln kann. |
|
Wird am Anfang eines Ausdrucks verwendet und gibt an, wo eine Übereinstimmung beginnen soll. |
|
Wird am Ende eines Ausdrucks verwendet und gibt an, dass ein Begriff bis zum Punkt des Zeichens genau übereinstimmen muss. |
|
Gibt einen Bereich von Buchstaben oder Ziffern an, die übereinstimmen sollen. Um den Anfang und das Ende eines Bereichs zu trennen, verwenden Sie einen Bindestrich ( - ). |
|
Gibt eine Gruppe von Begriffen an, die übereinstimmen sollen. Wird als nummerierte Variablen gespeichert. Verwenden Sie für Rückverweise als . |
|
Bezeichnet 0 oder mehr Terme. |
|
Bezeichnet einen oder mehrere Begriffe. |
|
Bezeichnet ein beliebiges Zeichen mit Ausnahme eines Leerzeichens (" "). |
|
Ein umgekehrter Schrägstrich maskiert Sonderzeichen, um ihre besondere Bedeutung zu unterdrücken. Zum Beispiel\. Übereinstimmungen (Punktsymbol). |
|
Rückverweis, der der -ten Gruppe entspricht.n |
|
Rückverweis, der mit der gesamten Übereinstimmung übereinstimmt. |
In der folgenden Tabelle sind einige Beispiele für Ersetzungen aufgeführt.
Befehl |
Ergebnis |
---|---|
|
Match: Ergebnis: |
|
Match: Ergebnis: |
|
Match: Ergebnis: |
|
Match: Ergebnis: |
Beispiel: Verwenden der Funktion "Globales Ersetzen" in einer Gerätekonfiguration – die \n Zurück-Referenz
In diesem Beispiel wird gezeigt, wie Sie einen Rückverweis verwenden können, um ein Muster zu ersetzen.
Anforderungen
Vor der Konfiguration dieses Beispiels ist keine spezielle Konfiguration erforderlich, die über die Geräteinitiierung hinausgeht.
Bevor Sie beginnen, konfigurieren Sie Folgendes:
[edit]
user@host# show interfaces
xe-0/0/0 {
unit 0;
}
fe-3/0/1 {
vlan-tagging;
unit 0 {
description "inet6 configuration. IP: 2000::c0a8::1bf5";
vlan-id 100;
family inet {
address 17.10.1.1/24;
}
family inet6 {
address 2000::c0a8:1bf5/3;
}
}
}
Um diese Erstkonfiguration schnell zu konfigurieren, kopieren Sie die folgenden Befehle und fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, und kopieren Sie dann die Befehle und fügen Sie sie auf Hierarchieebene in die CLI ein:[edit]
set interfaces xe-0/0/0 unit 0
set interfaces fe-3/0/1 vlan-tagging
set interfaces fe-3/0/1 unit 0 description "inet6 configuration IP: 2000::c0a8::1bf5"
set interfaces fe-3/0/1 unit 0 vlan-id 100
set interfaces fe-3/0/1 unit 0 family inet address 17.10.1.1/24
set interfaces fe-3/0/1 unit 0 family inet6 address 2000::c0a8:1bf5/3
Überblick
Eine der nützlichsten Funktionen regulärer Ausdrücke ist der Rückverweis. Rückverweise bieten eine bequeme Möglichkeit, ein wiederholtes Zeichen oder eine Teilzeichenfolge innerhalb einer Zeichenfolge zu identifizieren. Sobald Sie das Muster gefunden haben, können Sie es wiederholen, ohne es erneut zu schreiben. Sie beziehen sich auf das zuvor erfasste Muster mit just (wobei eine Ziffer ist, die angibt, wie oft das Muster abgeglichen werden soll).\#
#
Sie können Rückverweise verwenden, um Daten abzurufen oder zu finden und durch etwas anderes zu ersetzen. Auf diese Weise können Sie große Datenmengen mit einem einzigen Ersetzungsbefehl neu formatieren und sparen sich so die Zeit, die Sie benötigen würden, um das Muster manuell zu suchen und zu ersetzen.
Konfiguration
Konfigurieren einer Ersetzung mithilfe eines Rückverweises im Befehl
Schritt-für-Schritt-Anleitung
So ersetzen Sie ein Muster in einer Konfiguration mithilfe eines Rückverweises:Junos OS
Verwenden Sie den Befehl.
replace
[edit] user@host#
replace pattern pattern1 with pattern2
In diesem Fall möchten wir durch ersetzen.
:1bf5
1bf5
[edit] user@host#
replace pattern "(.*):1bf5" with "\11bf5"
Beachten Sie den Rückverweis (\1), der angibt, dass das Muster nur einmal gesucht und ersetzt werden sollte.
Ergebnisse
Hier ist die resultierende Konfiguration:
[edit]
user@host# show interfaces
xe-0/0/0 {
unit 0;
}
fe-3/0/1 {
vlan-tagging;
unit 0 {
description "inet6 configuration. IP: 2000::c0a8:1bf5";
vlan-id 100;
family inet {
address 17.10.1.1/24;
}
family inet6 {
address 2000::c0a8:1bf5/3;
}
}
}
In diesem Beispiel wird das Muster durch once ersetzt.2000::c0a8::1bf5
2000::c0a8:1bf5
Beispiel: Globales Ersetzen in einer Gerätekonfiguration – Ersetzen eines Schnittstellennamens
In diesem Beispiel wird gezeigt, wie ein Schnittstellenname in einer Konfiguration mithilfe des Befehls global ersetzt wird.replace
Die Verwendung des Befehls kann eine schnellere und bessere Möglichkeit sein, eine Konfiguration zu ändern.replace
Beispielsweise kann ein PIC in einen anderen Steckplatz in einem Router verschoben werden, wodurch sich der Schnittstellenname ändert. Mit einem Befehl können Sie die gesamte Konfiguration aktualisieren. Oder Sie möchten die Konfiguration schnell mit anderen ähnlichen Konfigurationen erweitern, z. B. mit ähnlichen Schnittstellen.
Mit einer Kombination aus den Befehlen und können Sie einer Konfiguration etwas hinzufügen und dann bestimmte Aspekte der neu kopierten Konfigurationen ersetzen.copy
replace
Der Befehl arbeitet mit regulären Ausdrücken.replace
Reguläre Ausdrücke sind schnell, flexibel und allgegenwärtig. Sie können so gut wie jedes Muster erstellen, nach dem Sie suchen müssen, und die meisten Programmiersprachen unterstützen reguläre Ausdrücke.
Anforderungen
Vor der Konfiguration dieses Beispiels ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.
Bevor Sie beginnen, konfigurieren Sie die folgende Hierarchie auf dem Router. Informationen zum schnellen Konfigurieren dieser Hierarchie finden Sie unter .CLI-Schnellkonfiguration
user@host#show interfaces
so-0/0/0 { dce; } user@host#show protocols
ospf { area 0.0.0.0 { interface so-0/0/0.0 { hello-interval 5; } } }
Überblick
In diesem Beispiel wird gezeigt, wie ein Schnittstellenname in einer Konfiguration mithilfe des Befehls global ersetzt wird.replace
Es ist ein einfaches Beispiel.
Die vorherige Konfiguration ist der Ausgangspunkt für diese Konfigurationsaktualisierung. In diesem Beispiel ändern Sie den Namen der initialen Schnittstelle während der gesamten Konfiguration mit einem Befehl.
Konfiguration
CLI-Schnellkonfiguration
Um die Erstkonfiguration für dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche und ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, kopieren Sie diese Befehle und fügen Sie sie auf Hierarchieebene in die CLI ein, und geben Sie dann den Konfigurationsmodus ein :[edit]
commit
set interfaces so-0/0/0 dce set protocols ospf area 0.0.0.0 interface so-0/0/0.0 hello-interval 5
Konfigurieren einer Änderung des Schnittstellennamens
Schritt-für-Schritt-Anleitung
So ändern Sie den Namen einer Schnittstelle:
Stellen Sie sicher, dass Sie sich an der Spitze der Konfigurationsmodushierarchie befinden.
user@host#
top
-
Ersetzen Sie durch die Verwendung des Befehls, der das Schlüsselwort verwendet.
so-0/0/0
so-1/1/0
replace
pattern
user@host#
replace pattern so-0/0/0 with so-1/1/0
Ergebnisse
Nachdem Sie die erforderlichen Änderungen vorgenommen haben, überprüfen Sie die Konfiguration mit den Befehlen und Konfigurationsmodus.show interfaces
show protocols
[edit] user@host#show interfaces
so-1/1/0 { dce; } user@host#show protocols
ospf { area 0.0.0.0 { interface so-1/1/0.0 { hello-interval 5; } } }
Nachdem Sie sich vergewissert haben, dass die Konfiguration korrekt ist, geben Sie den Befehl ein.commit
Beispiel: Globales Ersetzen in einer Gerätekonfiguration – die upto-Option
Betrachten Sie die Hierarchie in Abbildung 1. Die Textzeichenfolge wird an drei Stellen angezeigt:010101
Die Beschreibungsabschnitte von , und .ge-0/0/0
ge-0/0/0.0
fe-0/0/1
Bei diesen drei Instanzen handelt es sich um drei Objekte. Das folgende Beispiel zeigt, wie Sie die Option zum Durchführen von Ersetzungen in einer Gerätekonfiguration verwenden können:upto
Eine Option im Befehl wird in für zwei Objektinstanzen konvertiert.upto 2
replace
01
02
Die Objekte unter den Hauptschnittstellen und werden zuerst ersetzt (da es sich um gleichgeordnete Objekte in der Hierarchieebene handelt).ge-0/0/0
fe-0/0/1
Aufgrund der Einschränkung ersetzt der Befehl Muster in der ersten und zweiten Instanz in der Hierarchie (gleichgeordnete Instanz), nicht jedoch die dritte Instanz (untergeordnetes Element der ersten Instanz).upto 2
replace
user@host#show interfaces
ge-0/0/0 { description "mkt 010101"; #First instance in the hierarchy unit 0 { description "mkt 010101"; #Third instance in the hierarchy (child of the first instance) } } fe-0/0/1 { description "mkt 010101"; #second instance in the hierarchy (sibling of the first instance) unit 0 { family inet { address 200.200.20.2/24; } } } [edit] user@host#replace pattern 01 with 02 upto 2
[edit] user@host#commit
commit complete
[edit]
user@host# show interfaces
ge-0/0/0 {
description "mkt 020202"; #First instance in the hierarchy
unit 0 {
description "mkt 010101"; #Third instance in the hierarchy (child of the first
instance)
}
}
fe-0/0/1 {
description "mkt 020202"; #second instance in the hierarchy (sibling of the first
instance)
unit 0 {
family inet {
address 200.200.20.2/24;
}
}
}
Hinzufügen von Kommentaren in einer Gerätekonfiguration
Sie können Kommentare in eine Gerätekonfiguration einfügen, um jede Anweisung in der Konfiguration zu beschreiben. Sie können Kommentare interaktiv in der CLI und durch Bearbeiten der ASCII-Konfigurationsdatei hinzufügen.
Bei der Konfiguration von Schnittstellen können Sie Kommentare zur Schnittstelle hinzufügen, indem Sie die Anweisung auf Hierarchieebene einfügen.description
[edit interfaces
interface-name
]
Alle Kommentare, die Sie einfügen, werden in der Ausgabe der Befehle angezeigt.show interfaces
Hinzufügen von Kommentaren in der CLI
Wenn Sie Kommentare im Konfigurationsmodus hinzufügen, werden sie einer Anweisung auf der aktuellen Ebene zugeordnet. Jeder Anweisung kann ein einzeiliger Kommentar zugeordnet werden. Bevor Sie einen Kommentar einer Anweisung zuordnen können, muss die Anweisung vorhanden sein. Der Kommentar wird in der Zeile vor der Anweisung platziert.
Um Kommentare zu einer Konfiguration hinzuzufügen, verwenden Sie den Befehl Konfigurationsmodus:annotate
user@host# annotate statement "comment-string
"
statement
ist die Konfigurationsanweisung, an die Sie den Kommentar anhängen. Sie muss sich auf der aktuellen Hierarchieebene befinden. Wenn bereits ein Kommentar für den angegebenen vorhanden ist, wird dieser gelöscht und durch den neuen Kommentar ersetzt.statement
comment-string
ist der Text des Kommentars. Der Kommentartext kann beliebig lang sein und Sie müssen ihn in einer einzelnen Zeile eingeben. Wenn der Kommentar Leerzeichen enthält, müssen Sie ihn in Anführungszeichen setzen. In der Kommentarzeichenfolge können Sie die Kommentartrennzeichen oder ./* */
#
Wenn Sie keine angeben, wird die Kommentarzeichenfolge in die Kommentartrennzeichen eingeschlossen./* */
Um einen vorhandenen Kommentar zu löschen, geben Sie eine leere Kommentarzeichenfolge an:
user@host# annotate statement ""
Wenn Sie Kommentare mit dem Befehl hinzufügen, können Sie die Kommentare in der Konfiguration anzeigen, indem Sie den Befehl show configuration mode oder den Befehl operational mode eingeben.annotate
show configuration
Junos OS Unterstützt Anmerkungen bis zur letzten Ebene in der Konfigurationshierarchie, einschließlich Einzeilern. Die Annotation von Teilen (den untergeordneten Anweisungen oder Bezeichnern innerhalb des Einzeilers) des Einzeilers wird jedoch nicht unterstützt. In der folgenden Beispielkonfigurationshierarchie wird z. B. die Anmerkung bis zur übergeordneten Hierarchie unterstützt, nicht jedoch für die untergeordnete Anweisung:level 1
metric
[edit protocols] isis { interface ge-0/0/0.0 { level 1 metric 10; } } }
Hinzufügen von Kommentaren in einer Datei
Wenn Sie die ASCII-Konfigurationsdatei bearbeiten und Kommentare hinzufügen, können diese ein- oder mehrzeilig sein und müssen der Anweisung vorangestellt werden, der sie zugeordnet sind. Wenn Sie die Kommentare an anderen Stellen in der Datei platzieren, z. B. in derselben Zeile nach einer Anweisung oder in einer separaten Zeile nach einer Anweisung, werden sie entfernt, wenn Sie den Befehl verwenden, um die Konfiguration in der CLI zu öffnen.load
Der folgende Auszug aus einem Konfigurationsbeispiel veranschaulicht, wie Kommentare in einer Konfigurationsdatei platziert werden und wie nicht:
/* This comment goes with routing-options */ routing-options { /* This comment goes with routing-options traceoptions */ traceoptions { /* This comment goes with routing-options traceoptions tracefile */ tracefile rpd size 1m files 10; /* This comment goes with routing-options traceoptions traceflag task */ traceflag task; /* This comment goes with routing-options traceoptions traceflag general */ traceflag general; } autonomous-system 10458; /* This comment is dropped */ } routing-options { rib-groups { ifrg { import-rib [ inet.0 inet.2 ]; /* A comment here is dropped */ } dvmrp-rib { import-rib inet.2; export-rib inet.2; /* A comment here is dropped */ } /* A comment here is dropped */ } /* A comment here is dropped */ }
Wenn Sie Kommentare direkt in die Konfigurationsdatei einfügen, können Sie Kommentare wie folgt formatieren:
Beginnen Sie den Kommentar mit a und beenden Sie ihn mit einem .
/*
*/
Der Kommentartext kann einzeilig sein oder sich über mehrere Zeilen erstrecken.Beginnen Sie den Kommentar mit a und beenden Sie ihn mit einer neuen Zeile (Wagenrücklauf).
#
Beispiel: Einschließen von Kommentaren in eine Gerätekonfiguration mithilfe der CLI
Durch das Hinzufügen von Kommentaren zu einer Gerätekonfiguration wird die Konfigurationsdatei für Benutzer lesbar und verständlicher. Sie können Kommentare während der Konfiguration mithilfe der Anweisung einschließen.annotate
In diesem Beispiel werden Kommentare mithilfe der CLI für eine bereits vorhandene Konfiguration hinzugefügt:
Anforderungen
Vor der Konfiguration dieses Beispiels ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.
Bevor Sie einen Kommentar hinzufügen, müssen Sie die folgende Hierarchie auf dem Router konfigurieren.
Um die Erstkonfiguration für dieses Beispiel schnell zu konfigurieren, kopieren Sie den folgenden Befehl, fügen Sie ihn in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche und ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, kopieren Sie diesen Befehl, fügen Sie ihn in die CLI auf Hierarchieebene ein, und rufen Sie ihn dann aus dem Konfigurationsmodus auf .[edit]
commit
set protocols ospf area 0.0.0.0 interface so-0/0/0.0 hello-interval 5
Überprüfen Sie nun, ob Sie diese Hierarchie konfiguriert haben.
user@host# show protocols
ospf {
area 0.0.0.0 {
interface so-0/0/0 {
hello-interval 5;
}
}
}
Überblick
Wenn Sie Kommentare mithilfe der CLI hinzufügen, tun Sie dies im Konfigurationsmodus mit der Anweisung.annotate
Jeder Kommentar, den Sie hinzufügen, ist mit einer Anweisung auf der aktuellen Ebene verknüpft. Jeder Anweisung kann ein einzeiliger Kommentar zugeordnet werden.
Um die Anweisung zu konfigurieren, wechseln Sie zur Ebene der Anweisung, der Sie einen Kommentar zuordnen möchten.annotate
Um die Kommentare anzuzeigen, gehen Sie zum Anfang der Konfigurationshierarchie und verwenden Sie den Befehl.show
Konfiguration
CLI-Schnellkonfiguration
Um die Kommentare für dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche und ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, kopieren Sie die Befehle, und fügen Sie sie in die CLI ein, beginnend auf der Hierarchieebene, und geben Sie sie dann aus dem Konfigurationsmodus ein .[edit]
commit
edit protocols ospf
annotate area 0.0.0.0 "Backbone area configuration added June 15, 2018"
edit area 0.0.0.0
annotate interface so-0/0/0.0 "Interface from router sj1 to router sj2"
Beachten Sie, dass Sie mit den Befehlen in der Hierarchie nach unten verschoben werden, während Sie verschiedene Abschnitte der Hierarchie mit Anmerkungen versehen.
Einschließen von Kommentaren im CLI-Konfigurationsmodus
Schritt-für-Schritt-Anleitung
Bei diesem Verfahren wird davon ausgegangen, dass Sie die Erstkonfiguration bereits konfiguriert haben.
So fügen Sie Kommentare zu einer Konfiguration hinzu:
Wechseln Sie zur ersten Hierarchieebene, der Sie einen Kommentar hinzufügen müssen.
[edit] user@host#
edit protocols ospf
Fügen Sie der Konfigurationsanweisung mithilfe der Anweisung einen Kommentar hinzu.
area
annotate
[edit protocols ospf] user@host#
annotate area 0.0.0.0 "Backbone area configuration added June 15, 1998"
Wechseln Sie eine Ebene nach unten zur configuration-Anweisung.
interface
[edit protocols ospf] user@host#
edit area 0.0.0.0
-
Fügen Sie der Schnittstelle mithilfe der Anweisung einen Kommentar hinzu.
so-0/0/0.0
annotate
[edit protocols ospf area 0.0.0.0] user@host#
annotate interface so-0/0/0.0 "Interface from router sj1 to router sj2"
Ergebnisse
Wechseln Sie an den Anfang der Hierarchie und verwenden Sie den Befehl, um die von Ihnen hinzugefügten Kommentare anzuzeigen.show
Die Kommentare gehen der Anweisung voraus, mit der sie verknüpft sind.
[edit]
user@host# show protocols
ospf {
/* Backbone area configuration added June 15, 2018 */
area 0.0.0.0 {
/* Interface from router sj1 to router sj2 */
interface so-0/0/0.0 {
hello-interval 5;
}
}
}
Nachdem Sie sich vergewissert haben, dass die Konfiguration korrekt ist, geben Sie den Befehl ein.commit
Beispiel: Verwenden des Platzhalterbefehls mit der Option "Bereich"
Wenn Sie Änderungen an der Konfiguration eines Geräts vornehmen müssen, können Sie jederzeit die ursprünglichen Konfigurationseinstellungen mit dem Befehl entfernen und Ihre neuen Konfigurationseinstellungen mit dem Befehl hinzufügen.delete
set
Es gibt jedoch andere Möglichkeiten, eine Konfiguration zu ändern, die effizienter und benutzerfreundlicher sind.
In diesem Beispiel wird gezeigt, wie der Platzhalterbefehl zusammen mit Bereichen in den Konfigurationsbefehlen activate, deactivate, delete, protect, set, show und unprotect verwendet wird.
Mit dem Befehl platzhalter kann keine Konfigurationshierarchie erstellt werden. Sie verwenden es, um vorhandene Anweisungen zu ändern. Erwarten Sie CLI-Fehler des Formulars , wenn Sie versuchen, Parameter wie "deaktivieren" für eine leere Hierarchie festzulegen.warning: statement not found
Anforderungen
Junos OS Version 12.1 oder höher, das auf dem Gerät ausgeführt wird.
Überblick
Mit der Option range mit dem Platzhalterbefehl können Sie Bereiche in den Befehlen activate, deactivate, delete, protect, set, show und unprotect angeben. Sie können Bereiche verwenden, um einen Bereich von Schnittstellen, logischen Einheiten, VLANs und anderen nummerierten Elementen anzugeben. Mit der Platzhalterbereichsoption wird der eingegebene Befehl in mehrere Befehle erweitert, von denen jeder einem Element im Bereich entspricht.
Mit der Option "Platzhalterbereich" können Sie mehrere Konfigurationsanweisungen mit einem einzigen set-Befehl konfigurieren, anstatt jede von ihnen einzeln zu konfigurieren. Um z. B. 24 Gigabit-Ethernet-Schnittstellen mit unterschiedlichen Portnummern zu konfigurieren, können Sie einen einzigen Platzhalterbereichssatzbefehl anstelle von 24 einzelnen Befehlen zum Festlegen von Schnittstellen verwenden.
Um eine Gruppe von 30 logischen Schnittstellen zu deaktivieren, können Sie den Befehl Platzhalterbereich deaktivieren verwenden, anstatt jede logische Schnittstelle einzeln zu deaktivieren.
Konfiguration
- Verwenden Sie den Befehl wildcard mit Bereichsanweisungen für eine Vielzahl von Konfigurationsaufgaben.
- Verwenden der Option range zum Konfigurieren einer Reihe benannter Bezeichner für eine Konfigurationsanweisung
- Angeben mehrerer Bereiche in der Syntax
- Angeben eines Bereichs und eindeutiger Nummern in der Syntax
- Ausschließen einiger Werte aus einem Bereich
- Angeben eines Bereichs mit einer Schrittnummer
- Platzhalter zum Löschen von Richtlinien verwenden p1-p10
Verwenden Sie den Befehl wildcard mit Bereichsanweisungen für eine Vielzahl von Konfigurationsaufgaben.
Schritt-für-Schritt-Anleitung
- Sie können den Platzhalterbereich mit den Konfigurationsbefehlen "aktiv", "deaktivieren", "löschen", "schützen", "setzen", "anzeigen" und "Schutz aufheben" verwenden.
[edit] user@host#
wildcard range ? Possible completions: activate Remove the inactive tag from a statement annotate Annotate the statement with a comment deactivate Add the inactive tag to a statement delete Delete a data element protect Protect the statement set Set a parameter show Show a parameter unprotect Unprotect the statement
-
Die Anweisung kann mit einer vollständigen Konfigurationshierarchie qualifiziert werden.
wildcard
Wenn der Platzhalterbefehl in einer Konfigurationshierarchie geparkt ist, ist er relativ zu den Optionen, die in dieser Hierarchie unterstützt werden.[edit] user@host#
wildcard range set interfaces ? Possible completions: <interface-name> Interface name + apply-groups Groups from which to inherit configuration data + apply-groups-except Don't inherit configuration data from these groups > interface-range Interface ranges configuration > interface-set Logical interface set configuration lo0 Interface name > stacked-interface-set Stacked interface set configuration > traceoptions Interface trace options xe-0/0/0:0 Interface name xe-0/0/0:1 Interface name
user@host# edit interfaces [edit interfaces]wildcard range set ? Possible completions: <interface-name> Interface name + apply-groups Groups from which to inherit configuration data + apply-groups-except Don't inherit configuration data from these groups > interface-range Interface ranges configuration > interface-set Logical interface set configuration lo0 Interface name > stacked-interface-set Stacked interface set configuration > traceoptions Interface trace options xe-0/0/0:0 Interface name xe-0/0/0:1 Interface name
Im ersten Fall wird der vollständige Pfad zur Schnittstellenhierarchie mit der Anweisung wildcard angegeben. In der zweiten wird der Benutzer in der Schnittstellenhierarchie geparkt. Die unterstützten Optionen sind bei beiden Methoden gleich.
Verwenden der Option range zum Konfigurieren einer Reihe benannter Bezeichner für eine Konfigurationsanweisung
Schritt-für-Schritt-Anleitung
Um eine Serie desselben Schnittstellentyps mit unterschiedlichen Portnummern (0 bis 23) zu konfigurieren, geben Sie den Bereich für die Portnummern im folgenden Format an.
-
[edit] user@host# wildcard range set interfaces ge-0/0/[0-23] unit 0 family vpls
-
Zeigen Sie das Ergebnis an. Der Bereichs-Platzhalterbereich wird auf 24 verschiedene Set-Befehle erweitert, um Schnittstellen mit Portnummern von 0 bis 23 zu konfigurieren. In diesem Fall werden die Schnittstellen erstellt, um die Protokollfamilie hinzuzufügen.
vpls
Wenn die Schnittstellen bereits definiert sind, wird nur die Familie hinzugefügt.root@R1# show | compare [edit interfaces] + ge-0/0/0 { + unit 0 { + family vpls; + } + } + ge-0/0/1 { + unit 0 { + family vpls; + } + } + ge-0/0/2 { + unit 0 { + family vpls; + } + } . . . + ge-0/0/23 { + unit 0 { + family vpls; + }
Angeben mehrerer Bereiche in der Syntax
Schritt-für-Schritt-Anleitung
Sie können mehrere Bereiche in einem Platzhalterbereichsbefehl angeben. Jeder Bereich muss durch ein Komma getrennt werden. Sie können auch überlappende Bereiche haben.
Für die übrigen Beispiele erstellen Sie eine temporäre Kopie Ihrer Konfiguration mit zehn Richtlinienanweisungen. Durch diese Anweisungen werden CLI-Fehler vermieden, die gemeldet werden, wenn Sie versuchen, Attribute in einem NULL-Teil der Hierarchie zu bearbeiten.
[edit] user@device# set policy-options policy-statement p1 then reject set policy-options policy-statement p10 then reject set policy-options policy-statement p2 then reject set policy-options policy-statement p3 then reject set policy-options policy-statement p4 then reject set policy-options policy-statement p5 then reject set policy-options policy-statement p6 then reject set policy-options policy-statement p7 then reject set policy-options policy-statement p8 then reject set policy-options policy-statement p9 then reject [edit] user@device# save temp Wrote 254 lines of configuration to 'temp'
- Wenn Sie mehr als einen Bereich in der Syntax angeben möchten, schließen Sie die Minimal- und Maximalwerte für jeden Bereich durch ein Komma getrennt ein.
[edit] user@host# wildcard range deactivate policy-options policy-statement p[1-3,5-7,6-9]
-
Zeigen Sie das Ergebnis an. Der Platzhalterbereich wird erweitert, um die Anweisung Richtlinien hinzuzufügen, deren Namen mit den angegebenen Bereichen übereinstimmen.
deactivate
Bemerkenswert ist das Fehlen von und in der Liste der Änderungen an der Kandidatenkonfiguration.p4p10HINWEIS:Ein Fehler wird zurückgegeben, wenn der angegebene Richtlinienname noch nicht in der Konfiguration vorhanden ist. Dies liegt daran, dass Sie die deactivate-Anweisung nicht zu einem leeren Teil der Konfigurationshierarchie hinzufügen können.
[edit] show | compare [edit policy-options] ! inactive: policy-statement p1 { ... } ! inactive: policy-statement p2 { ... } ! inactive: policy-statement p3 { ... } ! inactive: policy-statement p5 { ... } ! inactive: policy-statement p6 { ... } ! inactive: policy-statement p7 { ... } ! inactive: policy-statement p8 { ... } ! inactive: policy-statement p9 { ... }
Angeben eines Bereichs und eindeutiger Nummern in der Syntax
Schritt-für-Schritt-Anleitung
Sie können eine Kombination aus einem Bereich und eindeutigen Zahlen in der Syntax des Befehls Platzhalterbereich angeben.
-
Laden Sie die temporäre Konfiguration neu.#d74e52__d74e141
[edit] user@host# load override temp load complete
- Wenn Sie einen Bereich und eine eindeutige Zahl angeben möchten, trennen Sie diese durch ein Komma. In diesem Beispiel wird 10 als eindeutige Zahl zu einer Reihe von Bereichen hinzugefügt.
[edit] user@host# wildcard range deactivate policy-options policy-statement p[1-3,5,7,10]
-
Zeigen Sie das Ergebnis an. Der Platzhalterbereich wird erweitert, um die Anweisung Richtlinien hinzuzufügen, deren Namen mit den angegebenen Bereichen übereinstimmen, sowie der eindeutigen Nummer.
deactivate
Dadurch wird die Richtlinie auch in diesem Beispiel deaktiviert.p10HINWEIS:Ein Fehler wird zurückgegeben, wenn der angegebene Richtlinienname noch nicht in der Konfiguration vorhanden ist. Dies liegt daran, dass Sie die deactivate-Anweisung nicht zu einer leeren Konfigurationshierarchie hinzufügen können.
[edit] user@host# show | compare [edit policy-options] ! inactive: policy-statement p1 { ... } ! inactive: policy-statement p10 { ... } ! inactive: policy-statement p2 { ... } ! inactive: policy-statement p3 { ... } ! inactive: policy-statement p5 { ... } ! inactive: policy-statement p7 { ... }
Ausschließen einiger Werte aus einem Bereich
Schritt-für-Schritt-Anleitung
Sie können bestimmte Werte aus einem Bereich ausschließen, indem Sie die Zahlen oder den auszuschließenden Zahlenbereich mit einem Ausrufezeichen markieren.
-
Laden Sie die temporäre Konfiguration neu.#d74e52__d74e141
[edit] user@host# load override temp load complete
- Um bestimmte Werte aus einem Bereich auszuschließen, schließen Sie den auszuschließenden Teil mit ! in der Syntax.
[edit] user@host# wildcard range deactivate policy-options policy-statement p[1-5,!3-4]
-
Zeigen Sie das Ergebnis an. Der Platzhalterbereich wird erweitert, um die Anweisung Richtlinien hinzuzufügen, deren Namen mit den angegebenen Bereichen übereinstimmen.
deactivate
Beachten Sie, dass Richtlinien und in der Liste der an der Kandidatenkonfiguration vorgenommenen Änderungen fehlen.p3p4 Sie wurden aus dem Platzhalterbereich ausgeschlossen.HINWEIS:Ein Fehler wird zurückgegeben, wenn der angegebene Richtlinienname noch nicht in der Konfiguration vorhanden ist. Dies liegt daran, dass Sie die deactivate-Anweisung nicht zu einer leeren Konfigurationshierarchie hinzufügen können.
[edit] user@host# show | compare [edit policy-options] ! inactive: policy-statement p1 { ... } ! inactive: policy-statement p2 { ... } ! inactive: policy-statement p5 { ... }
Angeben eines Bereichs mit einer Schrittnummer
Schritt-für-Schritt-Anleitung
Sie können eine Schrittnummer angeben, um ein konstantes Intervall im Bereich zu erhalten. Der Schrittwert zählt die erste Übereinstimmung und überspringt dann nachfolgende Übereinstimmungen bis zum angegebenen Schrittwert.
-
Laden Sie die temporäre Konfiguration neu.#d74e52__d74e141
[edit] user@host# load override temp load complete
- Um einen Schritt bereitzustellen, fügen Sie den Schrittwert in die Syntax ein, dem ein Schrägstrich (/) vorangestellt ist. Hier geben wir einen Bereich von 1 bis 10 an und überspringen 1 Zahl zwischen jeder Übereinstimmung mit einem Schrittwert von 2. Der Effekt besteht darin, dass alle geradzahligen Übereinstimmungen übersprungen werden, da wir mit einer ungeraden Zahl (1) beginnen.
[edit] user@host# wildcard range deactivate policy-options policy-statement p[1-10/2]
-
Zeigen Sie das Ergebnis an. Der Platzhalterbereich wird erweitert, um die Anweisung jeder anderen übereinstimmenden Anweisung hinzuzufügen, beginnend mit der ersten Übereinstimmung.
deactivate
HINWEIS:Ein Fehler wird zurückgegeben, wenn der angegebene Richtlinienname noch nicht in der Konfiguration vorhanden ist. Dies liegt daran, dass Sie die deactivate-Anweisung nicht zu einer leeren Konfigurationshierarchie hinzufügen können.
[edit] user@host# show | compare [edit policy-options] ! inactive: policy-statement p1 { ... } ! inactive: policy-statement p3 { ... } ! inactive: policy-statement p5 { ... } ! inactive: policy-statement p7 { ... } ! inactive: policy-statement p9 { ... }
Um die Schrittfunktion besser zu veranschaulichen, wird die temporäre Konfiguration wiederhergestellt, und der Platzhalterbefehl wird wiederholt, diesmal mit einem Schrittwert von 4. Jetzt werden 3 Einträge nach jeder anfänglichen Übereinstimmung übersprungen.
[edit] user@host# load override temp load complete user@host## wildcard range deactivate policy-options policy-statement p[1-10/4] \
-
Zeigen Sie das Ergebnis an. Der Platzhalterbereich wird erweitert, um die Anweisung jeder vierten übereinstimmenden Anweisung hinzuzufügen, beginnend mit der ersten Übereinstimmung.
deactivate
[edit] user@host# show | compare [edit policy-options] ! inactive: policy-statement p1 { ... } ! inactive: policy-statement p5 { ... } ! inactive: policy-statement p9 { ... }
Platzhalter zum Löschen von Richtlinien verwenden p1-p10
Schritt-für-Schritt-Anleitung
Löschen Sie die temporären Richtlinien, die zum Testen der Platzhalterfunktion hinzugefügt wurden.
- Verwenden Sie die Anweisung mit einer Platzhalterbereichsanweisung, um Richtlinien über zu löschen.
delete
p1p10[edit] user@host# wildcard range delete policy-options policy-statement p[1-10]
-
Zeigen Sie das Ergebnis an. Unsere Zeilengruppe enthielt nur Richtlinien durch .
policy-options
p1p10 Dies führt zu einer leeren Konfigurationshierarchie.policy-options
[edit] user@host# show policy-options