接口范围
接口范围表示类似类型的接口,以及组合在一起的常用配置。范围中包含一个名称、一个范围以及所有类似接口都通用的配置语句。
了解交换机的接口范围
您可以使用接口范围对共享通用配置配置文件的相同类型的接口进行分组。这有助于减少在 EX 系列以太网交换机上瞻博网络时间和精力。接口范围定义中可包含所有接口的常用配置。
接口范围定义包括定义的接口范围的名称、不属于一系列接口的单个成员接口的名称、在成员范围内定义的一系列接口,以及所有接口共同的配置语句。使用成员范围和单个成员定义但没有任何通用配置的接口范围也是有效定义。
接口范围定义仅支持用于千兆位、10 千兆位和快速以太网接口。OCX 系列交换机不支持光纤通道接口。
从Junos OS版本14.1X53-D15,在接口范围中定义的通用配置不会覆盖,但会追加到本地配置。在Junos OS版本14.1X53-D15,在接口范围中定义的通用配置将被本地配置覆盖。
定义的接口范围可用于以下配置层次结构中用于接口节点的位置:
表 1 列出了 EX 系列、NFX、OCX、QFX 系列 和 QFabric 系列的配置层次结构。
EX 系列的配置层次结构 |
用于 EX4600 NFX、QFX 系列 和 QFabric 系统的配置层次结构 |
使用 ELS 的 EX 系列的配置层次结构 |
---|---|---|
|
注意:
OCX 系列交换机不支持这些语句。 |
有关 ELS 的详细信息,请参阅 使用增强型第 2 层软件CLI。 |
另请参阅
使用 ELS 配置 EX 系列交换机的接口范围
此任务对Junos OS增强型第 2 层软件 (ELS) 配置样式的 EX 系列交换机使用安全解决方案。如果交换机运行的软件不支持 ELS,请参阅 配置接口范围 。有关 ELS 的详细信息,请参阅 使用增强型第 2 层软件CLI。
Junos OS允许您将一系列相同的接口分组为一个 接口范围。您首先在接口范围内指定一组相同的接口。然后,您可以将通用配置应用于指定的接口范围,从而减少所需的配置语句数量,同时节省时间,同时生成紧凑型配置。
在交换机上配置接口范围
要配置接口范围,请包含 interface-range
层级的 [edit interfaces]
语句。
语句 interface-range
在其定义中仅接受物理网络接口名称。
接口可以分组为一系列接口,也可在语句定义下使用数字 interface-range
范围。
接口范围定义 中的 接口可添加为成员范围的一部分,也可使用编号范围作为单个成员或多个成员添加。
要指定成员范围,请使用 member-range
层级的 [edit interfaces interface-range name]
语句。
要按词汇顺序指定接口,请使用 语句 member-range start-range to end-range
。
成员语句的范围必须包含以下内容:
*—全部 ,指定从 0 到 47 的连续接口。
谨慎:成员语句中的通配符 * 不会考虑特定接口类型支持的接口编号。无论接口类型如何, * 都包括从 0 到 47 到接口组的接口编号。因此,在 成员语句 中小心使用 * 。
num — 编号;按其编号指定一个特定接口。
[low-high]
— 从低到高的数字;指定了一系列顺序接口。[num1, num2, num3]
—编号 num1、 num2 和 num3 指定 多个特定接口。
示例:指定接口范围成员范围
member-range ge-0/0/0 to ge-4/0/40;
要指定一个或多个成员,请使用 member
层级的 [edit interfaces interface-range name]
语句。
要使用 regex 单独指定接口范围成员列表或使用 regex 的多个接口,请使用 member list of interface names
语句。
示例:指定接口范围成员
member ge-0/0/0; member ge-0/*/* member ge-0/[1-10]/0; member ge-0/[1,2,3]/3;
接口类型前缀不支持 Regex 或通配符。例如,必须显式提及前缀 ge、 fe 和 xe 。
接口范围定义可以包含其中的成员和member-range
语句。接口范围内的成员member-range
或语句数量没有最大限制。但是,接口范围定义中member-range
必须至少存在一个成员或语句。
示例:接口范围通用配置
接口范围通用的配置可添加为接口范围定义的一部分,如下所示:
[edit] interfaces { + interface-range foo { + member-range ge-1/0/0 to ge-4/0/40; + member ge-0/1/1; + member ge-5/[1-10]/*; /*Common configuration is added as part of interface-range definition*/ mtu 256; hold-time up 10; ether-options { flow-control; speed { 100m; } 802.3ad primary; } } }
只有成员或语句且member-range
没有通用配置语句的接口范围定义是有效的。
这些定义的接口范围可用于其他配置层次结构中(位于 存在接口节点 的位置)。
示例:在协议层次结构下使用的接口范围 foo
protocols { dot1x { authenticator { interface foo{ retries 1; } } } }
foo 应为 在 层次结构级别定义的接口 [interfaces]
范围。在以上示例中, 接口 节点可以同时接受单个接口和接口范围。
要查看扩展配置中的接口范围,请使用 (show | display inheritance)
命令。有关详细信息,请参阅 Junos OS CLI 用户指南 。
定义的接口范围可用于使用接口节点的位置。要查看配置层次结构,请参阅 了解 交换机的接口范围 。
扩展接口范围语句
操作系统扩展接口范围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
成员接口的配置继承
当Junos OS member
扩展 中呈现的 和 member-range
interface-range
语句时,在配置中未显式定义接口对象时,将创建接口对象。操作系统将通用配置复制到所有接口范围的成员接口。
前景接口配置优先于接口从接口范围配置继承的配置。
此示例中,接口 et-1/0/1
的一个MTU值为 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; }
配置组继承
接口范围成员接口像任何其他前景配置一样,从配置组继承配置。唯一不同的是 ,在 interface-range
操作系统读取此配置之前,要完成成员接口扩展。
在这种情况下,Junos OShold-time
将配置应用于接口范围的所有成员range1
:
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; }
另请参阅
通用配置继承
如果一个接口是多个接口范围的成员,该接口将继承所有接口范围中的通用配置。
例如:
[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
配置。
配置继承优先级
接口范围按照继承优先级的顺序定义。第一个接口范围配置数据优先于后续接口范围。
此示例中的接口范围 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
因为它先定义。
使用接口范围的配置扩展
此示例在 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; } } } } }
下 interface
部呈现的 authenticator
节点将扩展为接口范围的成员接口 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/1retries 1
,并且操作系统在这两个接口下复制配置。
您可使用 命令验证此 show protocols dot1x | display inheritance
配置。