物理インターフェイスのインターフェイス範囲
Junos OS Evolved では、同一のインターフェイスの範囲を インターフェイス範囲にグループ化できます。最初に、インターフェイス範囲で同一のインターフェイスのグループを指定します。次に、指定したインターフェイス範囲に共通の設定を適用できます。インターフェイス範囲は、必要な設定ステートメントの数を減らします。時間を節約し、コンパクトな構成を実現します。
インターフェイス範囲の設定
インターフェイス範囲を設定するには、階層レベルで interface-range
ステートメントを [edit interfaces]
使用します。ステートメントは interface-range
、その定義で物理ネットワーク インターフェイス名のみを受け入れます。Junos OS Evolved は、イーサネット インターフェイスのインターフェイス範囲をサポートしています et-fpc/pic/port
。
インターフェイス範囲を設定するには、次の手順に基います。
-
階層レベルで
interface-range
ステートメントを[edit interfaces]
使用します。インターフェイス範囲に選択した名前を含めます。[edit] user@device# edit interfaces interface-range range-name
たとえば、「range1」という名前のインターフェイス範囲を設定するには、次の手順に該当します。
[edit] user@device# edit interfaces interface-range range1
-
メンバー範囲を指定するには、階層レベルで
member-range start-range to end-range
ステートメントを[edit interfaces interface-range range-name]
使用します。例えば:[edit interfaces interface-range range1] user@device# set member-range et-1/0/0 to et-4/0/40
- 個々のメンバーを指定するには、階層レベルで
member
ステートメントを[edit interfaces interface-range range-name]
使用します。例えば:[edit interfaces interface-range range1] user@device# set member et-0/0/0
- ステートメントを含む正規表現を使用して、インターフェイス範囲メンバーのリストを
member range of interface names
指定できます。メンバー ステートメントの範囲には、次を含めることができます。-
*
すべて。0 から 47 までの順次インターフェースを指定します。注意:メンバー ステートメントのワイルドカード
*
は、特定のインターフェイス タイプでサポートされるインターフェイス番号を考慮していません。インターフェイス タイプに関係なく、*
0~47 からインターフェイス グループまでのインターフェイス番号が含まれます。したがって、慎重にメンバー ステートメントで使用*
します。 -
num
—番号。特定のインターフェイスを番号で指定します。 -
[low-high]
—低から高までの数値。順次インターフェースの範囲を指定します。 -
[num1, num2, num3]
:番号num1
、、num2
およびnum3
複数の特定のインターフェイスを指定します。
インターフェイス タイプ プレフィックスでは、正規表現とワイルドカードはサポートされていません。たとえば、プレフィックス
et
とxe
明示的に言及する必要があります。例えば:
[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
-
定義にはinterface-range
、その中に and ステートメントの両方member
をmember-range
含めることができます。定義内interface-range
のステートメントのmember
数にmember-range
制限はありません。ただし、少なくとも 1 つまたは複数のmember
member-range
ステートメントが定義内に存在しているinterface-range
必要があります。
interface-range
単一member
またはmember-range
ステートメントを持ち、共通の構成ステートメントを持たない定義は有効です。ただし、定義の一部interface-range
として共通の設定ステートメントをインターフェイス範囲に追加することもできます。例えば:
[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; } } }
これらの定義されたインターフェイス範囲は、ノードが存在する interface
場所の他の構成階層で使用できます。例えば:
protocols { dot1x { authenticator { interface range1 { retries 1; } } } }
前述の例では、ノードは個々の interface
インターフェイスとインターフェイス範囲の両方を受け入れることができます。
拡張設定のインターフェイス範囲を表示するには、コマンドを (show | display inheritance)
使用します。
拡張インターフェイス範囲ステートメント
オペレーティング システムは、インターフェイス範囲定義内のすべての member
ステートメントを member-range
展開し、指定されたインターフェイス範囲のインターフェイス名の最後のリストを生成します。
展開する前の設定例は次のようになります。
[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; } } }
ステートメントの member-range
場合、メンバー間 start-range
で考えられるすべてのインターフェースと end-range
、メンバーの拡張で考慮されます。たとえば、次のステートメントは次 member-range
のとおりです。
member-range et-0/0/0 to et-4/0/20
次の機能に拡張します。
[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]
次 member
のステートメント:
et-5/[0-5]/*
次の機能に拡張します。
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
次 member
のステートメント:
et-5/1/[2,3,6,10]
次の機能に拡張します。
et-5/1/2 et-5/1/3 et-5/1/6 et-5/1/10
設定継承の優先度
インターフェイス範囲は継承優先度の順に定義されます。最初のインターフェイス範囲設定データは、後続のインターフェイス範囲よりも優先されます。
この例では、インターフェイスet-1/1/1
はインターフェイス範囲とインターフェイス範囲int-grp-one
int-grp-two
の両方に存在します。
[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; } }
インターフェイス et-1/1/1
は、最初に mtu 500
定義されたため、インターフェイス範囲 int-grp-one
から継承されます。
メンバー インターフェイスの設定継承
Junos OS Evolved は、その中に存在する and member-range
ステートメントをinterface-range
展開member
すると、インターフェイス オブジェクトが設定で明示的に定義されていない場合に作成されます。オペレーティング システムは、共通の設定をすべてのインターフェイス範囲のメンバー インターフェイスにコピーします。
インターフェイス範囲設定からインターフェイスが継承する設定よりも、前景色インターフェイスの設定が優先されます。
この例では、インターフェイスの前景色設定であるため、MTU et-1/0/1
値は 1024 です。
interfaces { interface-range range1 { member-range et-1/0/0 to et-7/0/47; mtu 500; } et-1/0/1 { mtu 1024; } }
これは、コマンドの show interfaces | display inheritance
出力で確認できます。
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; }
一般的な設定の継承
インターフェイスが複数のインターフェイス範囲のメンバーである場合、そのインターフェイスはこれらすべてのインターフェイス範囲から共通の設定を継承します。
例えば:
[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; } }
この例では、インターフェイス et-4/0/0
スルー et-4/0/40
は両方 hold-time
を持ち、 mtu
設定されています。
設定グループの継承
インターフェイス範囲メンバー インターフェイスは、他の前景色設定と同様に、設定グループから設定を継承します。唯一の違いは、 interface-range
オペレーティング システムがこの設定を読み取る前にメンバー インターフェイスの拡張を通過することです。
この例では、Junos OS Evolved がインターフェイス範囲range1
のすべてのメンバーに設定を適用hold-time
します。
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; } }
これを検証するには、 show interfaces | display inheritance
次の手順に従います。
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; }
インターフェイス範囲を使用する場合の設定の拡張
この例では、 interface-range range1
階層の下で protocols
使用されています。
[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; } } } } }
下にあるauthenticator
ノードはinterface
、次のようにインターフェイス範囲range1
のメンバー インターフェイスに拡張されます。
protocols { dot1x { authenticator { interface et-7/1/1 { retries 1; } interface et-5/0/1 { retries 1; } } } }
ステートメントは interface range-1
、et-7/1/1 および et-5/0/1 の 2 つのインターフェイスに拡張され、オペレーティング システムは、これらの 2 つのインターフェイスの下で設定 retries 1
をコピーします。
この設定は、コマンドを show protocols dot1x | display inheritance
使用して検証できます。