Schnittstellenbereiche für physische Schnittstellen
Junos OS ermöglicht es Ihnen, einen Bereich identischer Schnittstellen in einem Schnittstellenbereichzu gruppieren. Zunächst legen Sie die Gruppe der identischen Schnittstellen im Schnittstellenbereich fest. Anschließend können Sie eine allgemeine Konfiguration auf den angegebenen Schnittstellenbereich anwenden. Schnittstellenbereiche reduzieren die Anzahl der erforderlichen Konfigurationsanweisungen. Sie sparen Zeit und ergeben eine kompakte Konfiguration.
Bei dieser Aufgabe wird Junos OS für Geräte verwendet, die den Konfigurationsstil Enhanced Layer 2 Software (ELS) nicht unterstützen. Wenn auf Ihrem Gerät eine Version von Junos OS ausgeführt wird, die ELS unterstützt, finden Sie weitere Informationen unter Konfigurieren von Schnittstellenbereichen für Switches der EX-Serie mit ELS. Weitere Informationen zu ELS finden Sie unter Verwenden der erweiterten Layer-2-Software-CLI.
Konfigurieren von Schnittstellenbereichen
Um einen Schnittstellenbereich zu konfigurieren, verwenden Sie die interface-range Anweisung auf Hierarchieebene [edit interfaces] . Die interface-range Anweisung akzeptiert in ihrer Definition nur die Namen physischer Netzwerkschnittstellen. Junos OS unterstützt Schnittstellenbereiche für die folgenden Schnittstellentypen:
-
GELDAUTOMAT:
at-fpc/pic/port -
Kanalisiert:
(coc | cstm)n-fpc/pic/port -
DPC:
xe-fpc/pic/port -
E1/E3:
(e1 | e3)-fpc/pic/port -
Ethernet:
(xe | ge | fe)-fpc/pic/port -
ISDN:
isdn-fpc/pic/port -
Seriell:
se-fpc/pic/port -
SONET/SDH:
so-fpc/pic/port -
T1/T3:
(t1 | t3)-fpc/pic/port
So konfigurieren Sie einen Schnittstellenbereich:
-
Verwenden Sie die
interface-rangeAnweisung auf der[edit interfaces]Hierarchieebene. Geben Sie den Namen an, den Sie für Ihren Schnittstellenbereich gewählt haben.[edit] user@device# edit interfaces interface-range range-name
So konfigurieren Sie beispielsweise einen Schnittstellenbereich mit dem Namen "range1":
[edit] user@device# edit interfaces interface-range range1
-
Um einen Elementbereich anzugeben, verwenden Sie die
member-range start-range to end-rangeAnweisung auf Hierarchieebene[edit interfaces interface-range range-name]. Zum Beispiel:[edit interfaces interface-range range1] user@device# set member-range et-1/0/0 to et-4/0/40
- Um ein einzelnes Element anzugeben, verwenden Sie die
memberAnweisung auf Hierarchieebene[edit interfaces interface-range range-name]. Zum Beispiel:[edit interfaces interface-range range1] user@device# set member et-0/0/0
- Sie können eine Liste von Membern des Schnittstellenbereichs mithilfe regulärer Ausdrücke mit der
member range of interface namesAnweisung angeben. Ein Bereich für eine member-Anweisung kann Folgendes enthalten:-
*– Alle. Gibt sequenzielle Schnittstellen von 0 bis 47 an.VORSICHT:Der Platzhalter
*in einer memberanweisung berücksichtigt nicht die Schnittstellennummern, die von einem bestimmten Schnittstellentyp unterstützt werden. Enthält unabhängig vom Schnittstellentyp*Schnittstellennummern von 0 bis 47 für die Schnittstellengruppe. Verwenden Sie*daher in einer member-Anweisung mit Vorsicht. -
num– Zahl. Gibt eine bestimmte Schnittstelle anhand ihrer Nummer an. -
[low-high]– Zahlen von niedrig nach hoch. Gibt einen Bereich sequenzieller Schnittstellen an. -
[num1, num2, num3]– Zahlennum1,num2undnum3geben Sie mehrere spezifische Schnittstellen an.
Reguläre Ausdrücke und Platzhalter werden für Präfixe vom Schnittstellentyp nicht unterstützt. Beispielsweise müssen Präfixe
etundxeexplizit erwähnt werden.Zum Beispiel:
[edit interfaces interface-range range1] user@device# set member et-0/*/* set member et-0/[1-10]/0 set member et-0/[1,2,3]/3
-
Eine interface-range Definition kann sowohl als auch member-rangememberAnweisungen enthalten. Es gibt keine Begrenzung für die Anzahl von member oder-Anweisungen member-range innerhalb einer interface-range Definition. Mindestens eine member OR-Anweisung member-range muss jedoch innerhalb einer interface-range Definition vorhanden sein.
Eine interface-range Definition, die nur member oder-Anweisungen member-range und keine allgemeine Konfigurationsanweisung enthält, ist gültig. Sie können jedoch optional eine allgemeine Konfigurationsanweisung als Teil der interface-range Definition zu einem Schnittstellenbereich hinzufügen. Zum Beispiel:
[edit]
interfaces {
+ interface-range range1 {
+ member-range et-1/0/0 to et-4/0/40;
+ member et-0/0/0;
+ member et-0/*/*;
+ member et-0/[1-10]/0;
+ member et-0/[1,2,3]/3;
/*Common configuration is added as part of interface-range definition*/
mtu 500;
ether-options {
flow-control;
speed {
100m;
}
802.3ad primary;
}
}
}
Diese definierten Schnittstellenbereiche können in anderen Konfigurationshierarchien an Stellen verwendet werden, an denen ein interface Knoten vorhanden ist. Zum Beispiel:
protocols {
dot1x {
authenticator {
interface range1 {
retries 1;
}
}
}
}
Im vorherigen Beispiel kann der interface Knoten sowohl einzelne Schnittstellen als auch Schnittstellenbereiche akzeptieren.
Um einen Schnittstellenbereich in erweiterter Konfiguration anzuzeigen, verwenden Sie den (show | display inheritance) Befehl.
Unterstützte Hierarchien
Standardmäßig kann sie in der CLI, in der die interface Anweisung verfügbar ist, interface-range nicht konfiguriert werden. Die folgenden Speicherorte werden unterstützt. Einige der in dieser Liste aufgeführten Hierarchien sind jedoch produktspezifisch:
-
ethernet-switching-options analyzer name input [egress | ingress ] interface -
ethernet-switching-options analyzer name output interface -
ethernet-switching-options bpdu-block interface -
ethernet-switching-options interfaces ethernet-switching-options voip interface -
ethernet-switching-options redundant-trunk-group group g1 interface -
ethernet-switching-options secure-access-port interface
-
poe interface vlans pro-bng-mc1-bsd1 interface -
protocols dot1x authentication interface -
protocols dvmrp interface -
protocols esis interface -
protocols gvrp interface -
protocols igmp interface -
protocols igmp-snooping vlan name interface -
protocols igmp-host client num interface -
protocols isis interface -
protocols layer2-control bpdu-block interface -
protocols layer2-control mac-rewrite interface -
protocols ldp interface -
protocols link-management peer control-channel -
protocols link-management peer lmp-control-channel interface -
protocols link-management te-link name interface -
protocols lldp interface -
protocols lldp-med interface -
protocols mld interface -
protocols mld-host client num interface -
protocols mpls interface -
protocols mstp interface -
protocols mstp msti id interface -
protocols mstp msti vlan id interface -
protocols oam ethernet link-fault-management interface -
protocols oam ethernet lmi interface -
protocols ospf area id interface -
protocols pim interface -
protocols rip group name neighbour -
protocols ripng group name neighbour -
protocols router-advertisement interface -
protocols router-discovery interface -
protocols rstp interface -
protocols rsvp interface -
protocols sflow interfaces -
protocols snmp interface -
protocols stp interface -
protocols vstp interface -
protocols vstp vlan name interface
Erweiterte Anweisungen für den Schnittstellenbereich
Das Betriebssystem erweitert alle member and-Anweisungen member-range in einer Schnittstellenbereichsdefinition, um die endgültige Liste der Schnittstellennamen für den angegebenen Schnittstellenbereich zu generieren.
Eine Beispielkonfiguration sieht folgendermaßen aus, bevor sie erweitert wird:
[edit]
interfaces {
interface-range range1 {
member-range et-0/0/0 to et-4/0/20;
member et-10/1/1;
member et-5/[0-5]/*;
/*Common configuration is added as part of the interface-range definition*/
mtu 256;
hold-time up 10;
ether-options {
flow-control;
speed {
100m;
}
802.3ad primary;
}
}
}
Für die member-range Anweisung werden alle möglichen Schnittstellen zwischen start-range und end-range bei der Erweiterung der Member berücksichtigt. Zum Beispiel die folgende member-range Anweisung:
member-range et-0/0/0 to et-4/0/20 erweitert auf:
[et-0/0/0, et-0/0/1 ... et-0/0/max_ports
et-0/1/0 et-0/1/1 ... et-0/1/max_ports
et-0/2/0 et-0/2/1 ... et-0/2/max_ports
.
.
et-0/MAX_PICS/0 ... et-0/max_pics/max_ports
et-1/0/0 et-1/0/1 ... et-1/0/max_ports
.
et-1/MAX_PICS/0 ... et-1/max_pics/max_ports
.
.
et-4/0/0 et-4/0/1 ... et-4/0/max_ports]
Die folgende member Aussage:
et-5/[0-5]/* erweitert auf:
et-5/0/0 ... et-5/0/max_ports
et-5/1/0 ... et-5/0/max_ports
.
.
et-5/5/0 ... et-5/5/max_ports
Die folgende member Aussage:
et-5/1/[2,3,6,10] erweitert auf:
et-5/1/2
et-5/1/3
et-5/1/6
et-5/1/10
Priorität der Konfigurationsvererbung
Die Schnittstellenbereiche werden in der Reihenfolge der Vererbungspriorität definiert. Die Konfigurationsdaten des ersten Schnittstellenbereichs haben Vorrang vor den nachfolgenden Schnittstellenbereichen.
In diesem Beispiel ist interface et-1/1/1 sowohl im Schnittstellenbereich int-grp-one als auch im Schnittstellenbereich int-grp-twovorhanden:
[edit]
interfaces {
interface-range int-grp-one {
member-range et-0/0/0 to et-4/0/47;
member et-1/1/1;
/*Common config is added part of the interface-range definition*/
mtu 500;
hold-time up 10;
}
interface-range int-grp-two {
member-range et-5/0/0 to et-7/0/47;
member et-1/1/1;
mtu 1024;
}
}
Die Schnittstelle et-1/1/1 erbt vom Schnittstellenbereich int-grp-one , mtu 500da sie zuerst definiert wurde.
Konfigurationsvererbung für Memberschnittstellen
Wenn Junos OS die member in einem interface-rangevorhandenen and-Anweisungen member-rangeerweitert werden, werden Schnittstellenobjekte erstellt, wenn diese nicht explizit in der Konfiguration definiert sind. Das Betriebssystem kopiert die gemeinsame Konfiguration auf alle Mitgliedsschnittstellen des Schnittstellenbereichs.
Die Vordergrundschnittstellenkonfiguration hat Vorrang vor der Konfiguration, die die Schnittstelle von der Schnittstellenbereichskonfiguration erbt.
In diesem Beispiel hat die Schnittstelle et-1/0/1 einen MTU-Wert von 1024, da dies die Vordergrundkonfiguration ist:
interfaces {
interface-range range1 {
member-range et-1/0/0 to et-7/0/47;
mtu 500;
}
et-1/0/1 {
mtu 1024;
}
}
Sie können dies in der Ausgabe des show interfaces | display inheritance Befehls überprüfen:
user@host: show interfaces | display inheritance
##
## 'et-1/0/0' was expanded from interface-range 'range1'
##
et-1/0/0 {
##
## '500' was expanded from interface-range 'range1'
##
mtu 500;
}
et-1/0/1 {
mtu 1024;
}
##
## 'et-1/0/2' was expanded from interface-range 'range1'
##
et-1/0/2 {
##
## '500' was expanded from interface-range 'range1'
##
mtu 500;
}
.........
.........
##
## 'et-10/0/47' was expanded from interface-range 'range1'
##
et-10/0/47 {
##
## '500' was expanded from interface-range 'range1'
##
mtu 500;
}
Allgemeine Konfigurationsvererbung
Wenn eine Schnittstelle Mitglied mehrerer Schnittstellenbereiche ist, erbt diese Schnittstelle die gemeinsame Konfiguration aus all diesen Schnittstellenbereichen.
Zum Beispiel:
[edit]
interfaces {
interface-range int-grp-one {
member-range et-0/0/0 to et-4/0/40;
mtu 256;
}
interface-range int-grp-two {
member-range et-4/0/0 to et-4/0/40;
hold-time up 10;
}
}
In diesem Beispiel haben Schnittstellen et-4/0/0 durch et-4/0/40 sowohl als auch mtuhold-timekonfiguriert.
Vererbung von Konfigurationsgruppen
Schnittstellenbereichsmemberschnittstellen erben wie jede andere Vordergrundkonfiguration Konfigurationen von Konfigurationsgruppen. Der einzige Unterschied besteht darin, dass das interface-range eine Member-Schnittstellenerweiterung durchläuft, bevor das Betriebssystem diese Konfiguration liest.
In diesem Beispiel Junos OS wird die hold-time Konfiguration auf alle Member des Schnittstellenbereichs range1angewendet:
groups {
global {
interfaces {
<*> {
hold-time up 10;
}
}
}
}
apply-groups [global];
interfaces {
interface-range range1 {
member-range et-1/0/0 to et-7/0/47;
mtu 500;
}
}
Überprüfen Sie mit show interfaces | display inheritancewie folgt:
user@host# show interfaces | display inheritance
[...]
##
## 'et-1/0/0' was expanded from interface-range 'range1'
##
et-1/0/0 {
##
## '500' was expanded from interface-range 'range1'
##
mtu 500;
##
## 'hold-time' was inherited from group 'global'
## '10' was inherited from group 'global'
##
hold-time up 10;
}
##
## 'et-1/0/1' was expanded from interface-range 'range1'
##
et-1/0/1 {
##
## '500' was expanded from interface-range 'range1'
##
mtu 500;
##
## 'hold-time' was inherited from group 'global'
## '10' was inherited from group 'global'
##
hold-time up 10;
}
##
## 'et-7/0/47' was expanded from interface-range 'range1'
##
et-7/0/47 {
##
## '500' was expanded from interface-range 'range1'
##
mtu 500;
##
## 'hold-time' was inherited from group 'global'
## '10' was inherited from group 'global'
##
hold-time up 10;
}Siehe auch
Konfigurationserweiterung bei Verwendung des Schnittstellenbereichs
In diesem Beispiel interface-range range1 wird unter der Hierarchie protocols verwendet:
[edit]
interfaces {
interface-range range1 {
member et-7/1/1;
member et-5/0/1;
mtu 500;
hold-time up 10;
ether-options {
flow-control;
speed {
100m;
}
802.3ad primary;
}
}
protocols {
dot1x {
authenticator {
interface range1 {
retries 1;
}
}
}
}
}
Der interface unter authenticator vorhandene Knoten wird wie folgt in Memberschnittstellen des Schnittstellenbereichs range1 erweitert:
protocols {
dot1x {
authenticator {
interface et-7/1/1 {
retries 1;
}
interface et-5/0/1 {
retries 1;
}
}
}
}
Die interface range-1 Anweisung wird auf zwei Schnittstellen erweitert, et-7/1/1 und et-5/0/1, und das Betriebssystem kopiert die Konfiguration retries 1 unter diesen beiden Schnittstellen.
Sie können diese Konfiguration mit dem show protocols dot1x | display inheritance Befehl überprüfen.