Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

修改设备的配置

CLI 允许您修改现有的 Junos OS 演化 版配置。本节介绍添加语句、删除语句、复制语句和插入新标识符的细节,包括示例。

显示当前正在编辑配置的用户

要显示当前正在编辑配置的用户,请使用 status 配置模式命令:

系统将显示谁在编辑配置(rchen)、用户登录的位置(terminal p0)、用户登录的日期和时间(2018-03-01 13:17:25 PST)以及用户正在编辑的层次结构级别([edit interfaces])。

如果发出配置模式命令, status 并且用户已计划候选配置在将来的某个时间变为活动状态,则系统将显示计划提交的人员 (root)、用户登录的位置 (terminal d0)、用户登录的日期和时间 (2018-10-31 14:55:15 PST) 以及提交挂起 (commit at).

如果发出 status 配置模式命令,并且用户正在配置独占模式下编辑配置,则系统将显示谁在编辑配置root()、用户terminal d0登录的位置()、用户登录的日期和时间(2018-11-01 13:05:11 PST),以及用户正在配置独占模式下编辑配置(exclusive [edit])。

如何修改瞻博网络设备配置

要配置瞻博网络设备或修改现有配置,请使用和set命令向edit配置中添加语句。对于每个语句层次结构,从顶层的语句开始创建层次结构。然后,您继续使用在层次结构中逐渐降低的语句创建层次结构。

要修改层次结构,请使用两个配置模式命令。根据要完成的操作选择相关命令:

  • edit- 移动到指定的层次结构级别。如果该层次结构级别不存在,该命令将 edit 创建它。该 edit 命令具有以下语法:

  • set— 创建配置语句并设置标识符值。发出 set 命令后,您将保持在层次结构中的同一级别。该 set 命令具有以下语法:

    配置语句和语句本身的层次结构为 statement-path。如果已移动到语句的层次结构级别,则可以省略语句路径。配置语句本身为 statement。该identifier 字符串标识语句的实例。

语句可以是容器语句,也可以是叶语句。容器语句可以包含其他容器语句以及叶语句。然而,叶子声明是独立的。该命令 edit? 显示容器语句,同时 set? 显示容器和叶语句,用于 > 区分它们。

注意:

不能使用该 edit 命令更改标识符的值。您必须使用 set 命令。

如何添加配置语句和标识符

您可以通过在配置中包含语句来配置瞻博网络设备的所有属性。语句由关键字组成,该关键字是固定文本。还可以在语句中包含标识符。标识符是您定义的标识名称,例如接口名称或用户名,使您能够和 CLI 区分语句集合。

例如,以下列表显示了配置模式下顶层可用的语句:

语句名称前的尖括号 ( > ) 表示它是一个容器语句,您可以在其下面的级别定义其他语句。如果语句名称前没有尖括号 ( > ),则该语句是叶语句;不能在其下的层次结构级别定义其他语句。

语句名称前的加号 (+) 表示它可以包含一组值。要指定集合,请将值包含在括号中。例如:

在某些语句中,可以包含标识符。对于某些标识符(如接口名称),必须以精确的格式指定标识符。例如,接口名称 so-0/0/0 是指位于灵活 PIC 集中器 (FPC) 插槽 0、第一个 PIC 位置和物理接口卡 (PIC) 上第一个端口中的 SONET/SDH 接口。

在某些语句中,可以包含标识符。对于某些标识符(如接口名称),必须以精确的格式指定标识符。例如,接口名称 et-0/0/0 是指位于灵活 PIC 集中器 (FPC) 插槽 0、第一个 PIC 位置和物理接口卡 (PIC) 上第一个端口中的 SONET/SDH 接口。

对于其他标识符(如接口描述性文本以及策略和防火墙术语名称),您可以指定任何名称,包括特殊字符、空格和制表符。

必须将标识符括在引号(双引号)中。还必须使用引号将标识符和包含空格、制表符或以下任何字符的任何字符串括起来:

如果不为需要选项的语句键入选项,则会出现一条消息,指示所需的信息类型。在此示例中,必须键入区域编号才能完成命令:

如何从设备配置中删除语句

您可以使用 delete 配置模式命令从设备配置中删除语句或标识符。删除语句或标识符会有效地“取消配置”与该语句或标识符关联的功能,并将该功能返回到其默认状态。

删除语句时,将从配置中删除该语句及其所有从属语句和标识符。

对于可以具有多个标识符的语句,删除一个标识符时,只会删除该标识符。语句中的其他标识符将保留。

要删除从当前层次结构级别开始的整个层次结构, delete 请使用命令而不指定语句或标识符。省略语句或标识符时,系统会提示您确认删除:

注意:

不能使用单个 delete 命令删除层次结构中的多个语句或标识符。您必须使用多个 delete 命令分别删除每个语句或标识符。例如,请考虑层次结构级别的以下配置 [edit system]

要从配置中删除 domain-namehost-namebackup-router ,必须单独删除每个语句。

不能发出单个 delete 命令。例如,以下命令将不起作用:

您可以使用单个命令和正则表达式同时删除相关配置项,例如通道化接口或静态路由。删除语句或标识符会有效地“取消配置”与该语句或标识符关联的功能,并将该功能返回到其默认状态。

您只能删除配置中通常放置多个项目的某些部分,例如接口。但是,您无法删除不同项目的“组”,如以下示例所示:

删除语句时,将从配置中删除该语句及其所有从属语句和标识符。

要删除相关配置项,请发出 wildcard 带有选项的 delete 配置模式命令,并指定语句路径、要用正则表达式汇总的项目和正则表达式,如下所示:

注意:

使用 wildcard 命令删除相关配置项时,正则表达式必须是 final 语句。

如果 Junos OS 演化版 匹配八个以上的相关项目,CLI 将仅显示前八个项目。

如何从配置中删除接口

您可以使用以下语法删除从 到 t1-0/0/0:0 范围内的 t1-0/0/0:23 多个 T1 接口:

如何从配置中删除路由

可以使用以下语法删除从 172.0.0.0 172.255.0.0 范围内的静态路由:

示例:从设备配置中删除语句

以下示例说明如何删除语句 ospf ,从而有效地取消配置路由器上的 OSPF:

从当前级别向下删除所有语句:

取消配置特定属性。在此示例中,删除接口描述设置:

复制配置中的语句

当设备配置中有许多类似的语句时,可以添加一个语句,然后复制该语句。复制语句会复制该语句以及在该语句下配置的整个语句层次结构。配置许多相同类型的物理或逻辑接口时,复制语句非常有用。

要复制配置中的现有语句,请执行以下操作:

  1. 使用配置模式 copy 命令:
  2. 复制部分配置后,请立即检查新配置的有效性。
  3. 如果配置无效,请修改复制的部分或原始部分以生成有效的配置。

示例:复制配置中的语句

此示例说明如何通过复制现有 VC 在接口上创建一个虚拟连接 (VC)。

要求

配置此示例之前,不需要除设备初始化之外的特殊配置。

在开始此示例之前,请配置以下初始配置:

要快速配置此示例的初始配置,请复制以下命令,将其粘贴到文本文件中,删除所有换行符并更改与您的网络配置匹配所需的任何详细信息,将此命令复制并粘贴到层次结构级别的 CLI [edit] 中,然后进入 commit 配置模式。

概述

在此说明如何复制语句的示例中,您将添加一个与已配置的虚拟连接非常相似的虚拟连接。

配置

CLI 快速配置

[edit interfaces at-1/0/0] 层次结构级别开始。

通过复制进行配置

分步过程

要通过复制配置进行配置,请执行以下操作:

  1. [edit interfaces at-1/0/0]转到层次结构级别并复制单元 61。

  2. 查看新配置,了解需要更改哪些内容才能使配置有效。

  3. 更改配置以使其有效。

    在此示例中,您需要重新配置虚拟电路标识符 (VCI) 和虚拟路径标识符 (VPI)。

    您还希望将新接口的 IP 地址替换为其自己的 IP 地址。

结果

[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;
        }
    }
}

示例:替换配置

如果需要更改设备的配置,则始终可以使用命令删除 delete 原始配置设置,然后使用命令添加新 set 的配置设置。但是,还有其他更高效、更易于使用的修改配置的方法。

此示例说明如何使用以下配置模式命令更新现有配置:

  • rename— 重命名现有配置设置,例如接口名称。向设备添加新接口时,此命令可能很有用。

  • copy— 复制配置设置和在该设置下配置的语句的整个层次结构。配置许多相同类型的物理或逻辑接口时,复制配置语句非常有用。

  • replace- 对配置中的文本模式进行全局更改。例如,如果您始终拼错设备上所有接口的描述语句中通用的单词,则可以通过单个命令修复此错误。

要求

配置此示例之前,不需要除设备初始化之外的特殊配置。

概述

在本主题的第一个示例中,您将进行以下配置更改:

  • 创建一个新界面,其中包含包含键入错误的描述。

  • 从您创建的接口复制配置以创建新接口。

  • 重命名您创建的接口之一。

  • 修复您创建的接口的说明中的键入错误。

在第二个较短的示例中,您将在略有不同的情况下尝试一些相同的命令。

配置

使用复制、重命名和替换命令修改环路接口配置

分步过程
谨慎:

如果现有配置使用此示例中使用的任何环路接口单元号,则必须替换不同的未使用的环路接口单元号。否则,执行这些步骤可能会损坏设备的现有操作状态。

要使用 、 renamereplace命令创建和copy修改环路接口的配置,请执行以下操作:

  1. 创建新的环路接口单元号并附上描述。

    描述中环回拼写中的错误是故意的。

  2. 显示刚刚添加的环路接口的配置。

  3. 将刚刚创建的环路接口(包括错误)从单元 100 复制到单元 101。

  4. 显示环路接口 lo0 单元 100 和 lo0 单元 101 的配置。

    copy 命令复制包含任何子语句的接口,例如 description

  5. 将环路接口 lo0 单元 100 重命名为环路接口 lo0 单元 102。

  6. 显示环路接口 lo0 单元 100 的配置。

    不应看到此命令的任何结果。单元 100 的环路接口 lo0 现已消失。该 rename 命令将指示的配置语句替换为新配置。

  7. 修复环路接口 lo0 单元 101 和 lo0 单元 102 描述中单词 环回 的拼写错误。

  8. 显示环路接口 lo0 单元 101 和 lo0 102 的配置,以验证 “环回 ”一词现在拼写是否正确。

    replace 命令将替换命令中指定的模式的所有实例,除非以某种方式受到限制。本主题中的下一个示例演示一种限制命令效果 replace 的方法。

  9. 在配置模式下,使用 rollback 命令将设备配置返回到执行上述步骤之前的状态。

结果

在配置模式下,使用 and show interfaces lo0 unit 101 show interfaces lo0 unit 102 命令确保设备配置处于执行此示例中的步骤之前的状态。

不应看到此命令的任何结果。

不应看到此命令的任何结果。

比较顶级配置层次结构级别的 copy 命令

分步过程

前面的示例显示了copy层次结构级别的 、 renamereplace[edit interfaces interface-name unit logical-interface-number]命令。此示例说明其中一些命令如何在 CLI 配置模式层次结构的顶层工作。

以下示例要求您导航到配置层次结构中的各个级别。有关导航 CLI 的信息,请参阅 在配置模式下使用 CLI 编辑器

  1. 创建以太网接口。

  2. 将刚刚创建的接口复制到另一个接口。

    将此命令与上一示例中的命令进行比较 copy ,其中命令在 copy 要复制的值之前获取关键字 unit

    请注意,关键字 interfaces 不会在介词 to 之后和要复制的值之前重复。这发生在带有命令的某些 copy 顶级语句中。

    提示:

    同样,在命令中 rename ,您不能在某些顶级语句的新标识符之前重复语句的关键字部分。

  3. 显示到目前为止的配置。

  4. 将 et-2/1/0 的地址替换为另一个 IP 地址。

    请注意,如果只想更改模式的特定匹配项而不是所有匹配项,则必须在使用命令之前 replace 导航到该特定层次结构级别。

  5. 再次显示接口。

  6. 在配置模式下,使用命令将 rollback 设备配置返回到执行上述步骤之前的状态。

结果

在配置模式下,使用 and show interfaces et-2/0/0 show interfaces et-2/1/0 命令确保设备配置处于执行此示例中的步骤之前的状态。

不应看到此命令的任何结果。

不应看到此命令的任何结果。

在设备配置中插入新标识符

配置瞻博网络设备时,您可以按任意顺序输入大多数语句和标识符。无论输入配置语句的顺序如何,CLI 始终严格按顺序显示配置。但是,在少数情况下,语句的顺序很重要,因为配置语句会创建一个按顺序分析的序列。

例如,在路由策略或防火墙过滤器中,您可以定义按顺序分析的术语。此外,在动态 MPLS 中创建命名路径时,需要定义路径中传输路由器的有序列表,从第一个传输路由器开始,到最后一个路由器结束。

要修改语句顺序很重要的配置部分,请使用 insert 配置模式命令:

如果不使用该 insert 命令而是配置标识符,则该标识符将放在类似标识符列表的末尾。

示例:在设备配置中插入新标识符

此示例演示了命令 insert 的用法。

使用命令添加 set 的术语位于现有术语列表的末尾,而您可以使用命令按 insert 指定的顺序添加术语。在顺序很重要的情况下,指定语句的顺序非常重要,因为配置语句会创建一个按顺序分析的序列。

如本示例所示,必须先创建术语(或者它必须已存在),然后才能将其与命令一起使用 insert 。放置术语的参考点也必须存在;例如,要将术语 T1 放在术语 T2 之前,T1 和 T2 必须已存在并已填充。 Junos OS 演化版会自动 删除空术语。

要求

在插入术语之前,必须配置初始策略。要快速配置此示例的初始策略,请复制以下命令,将其粘贴到文本文件中,删除所有换行符并更改任何必要的详细信息以匹配您的网络配置,将命令复制并粘贴到层次结构级别的 CLI [edit policy-options] 中,然后从配置模式进入 commit

现在检查以验证是否正确配置了层次结构:

概述

要修改语句顺序很重要的配置部分,必须使用 insert 配置模式命令。 set 如果改用命令,则添加的语句或标识符将按顺序位于错误的位置。以正确顺序获取命令条款的唯一其他方法是拆除配置并重新开始。

配置

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符并更改与您的网络配置匹配所需的任何详细信息,将命令复制并粘贴到 [编辑策略选项] 层次结构级别的 CLI 中,然后进入 commit配置模式。

配置为插入术语

分步过程
  1. 确定配置条款需要遵循的顺序。请考虑原始条款和您计划添加的新条款。

    在原始配置中,策略名为 statics,共有四个术语。前三个术语中的每一个都以不同的匹配标准匹配,并且生成的匹配将被拒绝。最后一个术语接受所有其他流量。

    在此示例中,您需要添加两个术语来消除其他类型的流量。这两个术语都需要在原始配置中的最后一个术语之前。

  2. 将原始术语 4 重命名为术语 6。

    此步骤将保留原来的最后一个术语(现在重命名为 term6)作为最后一个术语。

  3. 创建新术语4.

    添加了一个新术语,用于匹配来自本地系统地址的流量并拒绝它。

  4. 创建新术语5.

    将添加一个新术语,用于匹配来自聚合路由的流量并拒绝它。

  5. 在术语 3 之后插入术语 4。

  6. 在术语 4 之后插入术语 5。

结果

[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;
}

停用和重新激活设备配置中的语句和标识符

Junos OS 演化 版配置中,您可以停用语句和标识符,使其在发出 commit 命令时不会生效。任何已停用的语句和标识符都标有 inactive 标记。它们仍保留在配置中,但在发出 commit 命令时不会激活。

要停用语句或标识符,请使用 deactivate 配置模式命令:

要重新激活语句或标识符,请使用 activate 配置模式命令:

在这两个命令中, statement 您指定的 和 identifier 必须位于当前层次结构级别。停用语句时,发出命令时 commit 将忽略该特定语句,并且根本不应用该语句。

要禁用语句,请使用 disable 配置模式命令。

在配置层次结构的某些部分中,可以包含用于 disable 禁用功能的语句。例如,通过在层次结构级别包含 disable 语句 [edit interface interface-name] 来禁用接口。禁用某个函数时,它会在您发出 commit 命令时重新激活,但会被视为已关闭或被管理性禁用。

示例:停用和重新激活设备配置中的语句和标识符

此示例显示了使用 and activate 配置模式命令的deactivate常见用例。它涉及配置了平滑路由引擎切换 (GRES) 的双路由引擎(主引擎和备份引擎)。两个路由引擎上的软件都需要升级。这可以通过停用 GRES、更新路由引擎,然后重新激活 GRES 轻松实现。

注意:

您还可以使用相同的设置执行类似的升级,只是配置了不间断活动路由 (NSR) 而不是 GRES。在重新激活 NSR 之前,您需要停用 NSR,然后升级路由引擎。

要求

此示例要求使用具有可升级的双路由引擎的设备。

在开始此示例之前,请确保已配置 GRES。

概述

在此示例中,有两个路由引擎。GRES 已配置,需要升级路由引擎。要完成升级,您需要停用 GRES 功能,升级每个路由引擎,然后再次激活 GRES。

配置

配置 GRES 的停用和重新激活

分步过程

要停用并重新激活用于路由引擎升级的 GRES:

  1. 显示已为路由器启用 GRES。

  2. 停用 GRES。

  3. 显示 GRES 已停用。

  4. 逐个升级路由引擎。

  5. 重新激活 GRES。

结果

验证是否再次激活了 GRES 功能。

如何在设备配置中进行全局更改

您可以使用配置模式命令对 replace 设备配置中的变量和标识符进行全局更改。此命令将配置中的一个模式替换为另一个模式。例如,当 PIC 移动到路由器中的另一个插槽时,您可以使用此命令查找并替换接口名称的所有匹配项。

选项patternpattern1是一个文本字符串或正则表达式,用于定义要在配置中替换的标识符和值。

pattern2 选项是一个文本字符串或正则表达式,用于替换位于 中的 pattern1标识符和值。

CLI 使用标准 UNIX 样式的正则表达式语法(如 POSIX 1003.2 中所定义)。如果正则表达式包含空格、运算符或通配符,请用引号将表达式括起来。支持贪婪限定符(尽可能匹配)。不支持惰性限定符(尽可能少匹配)。

upton选项指定替换的对象数。的值n控制配置中替换的对象总数(而不是模式出现的总次数)。首先替换相同层次结构级别的对象(同级)。给定对象中模式的多次出现被视为单个替换。例如,如果配置包含010101 文本字符串,则该命令replace pattern 01 with pattern 02 upto 2将替换为 010101 020202 (而不是 020201)。替换为 010101 020202 被视为单个替换 (n = 1),而不是三个单独的替换 (n =3)。

如果未指定 upto 选项,则会替换配置 pattern1 中匹配的所有标识符和值。

replace 命令可在任何层次结构级别的配置模式下使用。所有匹配项都区分大小写。

与命令一起使用的 replace 常用正则表达式

表 1:用于replace命令

算子

功能

|

指示匹配可以是管道两侧的两个术语之一。

^

在表达式的开头使用,表示匹配的开始位置。

$

在表达式末尾使用,表示术语必须完全匹配到字符点 $

[ ]

指定要匹配的字母或数字范围。若要分隔范围的开始和结束,请使用连字符 ( - )。

( )

指定要匹配的一组术语。存储为编号变量。用于反向引用,如 \1 \2 .... \9

*

表示 0 个或多个术语。

+

表示一个或多个术语。

.

表示除空格 (“ ”) 之外的任何字符。

\

反斜杠转义特殊字符以抑制其特殊含义。例如\。匹配 . (句点符号)。

\n

与第 th 组匹配 n的反向引用。

&

匹配整个匹配项的反向引用。

下表列出了一些替换示例。

表 2:更换示例

命令

结果

replace pattern myrouter with router1

火柴: myrouter

结果: router1

replace pattern "192\.168\.(.*)/24" with "10.2.\1/28"

火柴: 192.168.3.4/24

结果: 10.2.3.4/28

replace pattern "1.\1" with "abc&def"

火柴: 1.1

结果: abc1.1def

replace pattern 1.1 with " abc\&def"

火柴: 1#1

结果: abc&def

示例:如何在设备配置中使用全局替换 - \n 反向引用

此示例说明如何使用反向引用来替换模式。

要求

配置此示例之前,不需要除设备启动之外的特殊配置。

在开始之前,请配置以下内容:

要快速配置此初始配置,请复制以下命令并将其粘贴到文本文件中,删除所有换行符,更改任何必要的详细信息以匹配您的网络配置,然后将命令复制并粘贴到层次结构级别的 CLI [edit] 中:

概述

正则表达式最有用的功能之一是反向引用。反向引用提供了一种识别字符串中重复字符或子字符串的便捷方法。找到模式后,您可以重复它而无需再次编写。您仅使用(其中#是一个数字,表示您希望模式匹配的次数)来\#引用先前捕获的模式。

您可以使用反向引用来调用或查找数据并将其替换为其他内容。通过这种方式,您可以使用单个替换命令重新格式化大型数据集,从而节省手动查找和替换模式所需的时间。

配置

使用命令中的反向引用配置替换

分步过程

要使用反向引用替换 Junos OS 演化 版配置中的模式:

  • 使用 replace 命令。

    在本例中,我们要替换为 :1bf51bf5.

    请注意反向引用 (\1),它指示应仅搜索和替换一次模式。

结果

下面是生成的配置:

在此示例中,模式 2000::c0a8::1bf5 替换为 2000::c0a8:1bf5 一次。

示例:设备配置中的全局替换 — 替换接口名称

此示例说明如何使用命令在 replace 配置中全局替换接口名称。

使用该 replace 命令可以更快、更好地更改配置。例如,PIC 可能会移动到路由器中的另一个插槽,这会更改接口名称。使用一个命令,您可以更新整个配置。或者,您可能希望使用其他类似配置(例如类似接口)快速扩展配置。

通过使用和replace命令的组合copy,您可以添加到配置中,然后替换新复制的配置的某些方面。该replace命令适用于正则表达式。正则表达式快速、灵活且无处不在。您可以修改可能需要搜索的任何模式,并且大多数编程语言都支持正则表达式。

要求

配置此示例之前,不需要除设备初始化之外的特殊配置。

开始之前,请在路由器上配置以下层次结构。要快速配置此层次结构,请参阅 CLI 快速配置

概述

此示例说明如何使用命令在 replace 配置中全局替换接口名称。这是一个简单的例子。

以前的配置是此配置更新的起点。在此示例中,您将使用一个命令更改整个配置中初始接口的名称。

配置

CLI 快速配置

要快速配置此示例的初始配置,请复制以下命令,将其粘贴到文本文件中,删除所有换行符并更改与您的网络配置匹配所需的任何详细信息,将这些命令复制并粘贴到层次结构级别的 CLI [edit] 中,然后从配置模式进入 commit

配置接口名称更改

分步过程

要更改接口名称:

  1. 确保您位于配置模式层次结构的顶部。

  2. 替换为xe-0/0/0xe-1/1/0使用replace命令,命令使用pattern关键字。

结果

进行所需的更改后,请使用和show protocols配置模式命令验证show interfaces配置。

确认配置正确后,输入 commit 命令。

在设备配置中添加注释

您可以在设备配置中包含注释,以描述配置中的任何语句。您可以在 CLI 中和通过编辑 ASCII 配置文件以交互方式添加注释。

配置接口时,可以通过在层次结构级别包含 description 语句 [edit interfaces interface-name] 来添加有关接口的注释。您包含的任何注释都会显示在命令的 show interfaces 输出中。

在 CLI 中添加注释

在配置模式下添加注释时,这些注释与当前级别的语句相关联。每个语句都可以有一个与之关联的单行注释。在将注释与语句关联之前,该语句必须存在。注释放在语句前面的行上。

要向配置添加注释,请使用 annotate 配置模式命令:

statement 是要附加注释的配置语句;它必须位于当前层次结构级别。如果指定的 statement 注释已存在,则会将其删除并替换为新注释。

comment-string 是注释的文本。注释文本可以是任意长度,您必须在一行上键入它。如果注释包含空格,则必须用引号将其括起来。在注释字符串中,可以包含注释分隔符 /* */#。如果未指定任何注释字符串,则注释字符串将用注释分隔符括起来 /* */

要删除现有注释,请指定一个空注释字符串:

如果使用命令添加注释 annotate ,则可以通过输入 show 配置模式命令或 show configuration 操作模式命令来查看配置中的注释。

注意:

Junos OS 演化版支持 配置层次结构中最后一级的注释,包括单行代码。但是,不支持对单行的部件(单行中的子语句或标识符)进行注释。例如,在以下示例配置层次结构中,父层次结构支持 level 1 注释,但子语句不支持 metric 注释:

在文件中添加注释

编辑 ASCII 配置文件并添加注释时,注释可以是一行或多行,并且必须在与其关联的语句之前。如果将注释放在文件的其他位置(如语句后面的同一行或语句后面的单独行上),则在使用命令将 load 配置打开到 CLI 中时,注释将被删除。

以下配置示例摘录说明了如何在配置文件中放置和不放置注释:

直接在配置文件中包含注释时,可以通过以下方式设置注释的格式:

  • 注释以 开头,以 */./* 注释文本可以位于一行上,也可以跨越多行。

  • 注释以 a # 开头,以新行(回车)结尾。

示例:使用 CLI 在设备配置中包含注释

向设备配置添加注释可使配置文件可读且更易于用户理解。您可以在使用语句进行 annotate 配置时包括注释。在此示例中,通过使用 CLI 对现有配置添加注释:

要求

配置此示例之前,不需要除设备初始化之外的特殊配置。

在添加注释之前,必须在路由器上配置以下层次结构。

要快速配置此示例的初始配置,请复制以下命令,将其粘贴到文本文件中,删除所有换行符并更改与您的网络配置匹配所需的任何详细信息,将此命令复制并粘贴到层次结构级别的 CLI [edit] 中,然后从配置模式进入 commit

现在验证是否已配置此层次结构。

概述

使用 CLI 添加注释时,可以使用语句 annotate 在配置模式下执行此操作。您添加的每个注释都与当前级别的语句相关联。每个语句都可以有一个与之关联的单行注释。

要配置语句, annotate 请移动到要与注释关联的语句级别。要查看注释,请转到配置层次结构的顶部并使用 show 命令。

配置

CLI 快速配置

要快速配置此示例的注释,请复制以下命令,将其粘贴到文本文件中,删除所有换行符并更改与网络配置匹配所需的任何详细信息,从层次结构级别开始 [edit] 将命令复制并粘贴到 CLI 中,然后从配置模式进入 commit

请注意,当您批注层次结构的不同部分时,命令会将您向下移动层次结构。

在 CLI 配置模式中包含注释

分步过程

此过程假定您已经配置了初始配置。

要向配置添加注释:

  1. 移动到需要向其添加注释的第一个层次结构级别。

  2. 使用annotate配置语句向配置语句添加注释area

  3. 向下移动一个级别到 interface 配置语句。

  4. 使用该annotate语句向接口et-0/0/0.0添加注释。

结果

移动到层次结构的顶部,然后使用 show 命令查看您添加的注释。注释位于与其关联的语句之前。

确认配置正确后,输入 commit 命令。

示例:将通配符命令与范围选项一起使用

如果需要更改设备的配置,则始终可以使用命令删除 delete 原始配置设置,然后使用命令添加新 set 的配置设置。但是,还有其他更高效、更易于使用的修改配置的方法。

此示例说明如何使用通配符命令以及激活、停用、删除、保护、设置、显示和取消保护配置命令的范围。

注意:

通配符命令无法创建配置层次结构。您可以使用它来修改现有语句。当您尝试在空层次结构上设置参数(如停用)时,预计会出现表单 warning: statement not found 的 CLI 错误。

要求

在设备上运行的 Junos OS 12.1 或更高版本。

概述

使用带有通配符命令的范围选项,可以在激活、停用、删除、保护、设置、显示和取消保护命令中指定范围。您可以使用范围来指定接口、逻辑单元、VLAN 和其他编号元素的范围。通配符范围选项将您输入的命令扩展为多个命令,每个命令对应于范围中的一个项目。

通配符范围选项使您能够使用单个 set 命令配置多个配置语句,而不是单独配置每个配置语句。例如,要使用不同的端口号配置 24 个千兆以太网接口,可以使用单个通配符范围 set 命令,而不是 24 个单独的 set interfaces 命令。

同样,要停用一组 30 个逻辑接口,您可以使用通配符范围停用命令,而不是单独停用每个逻辑接口。

配置

将通配符命令与 range 语句一起使用,以执行各种配置任务。

分步过程
  1. 您可以将通配符范围与活动、停用、删除、保护、设置、显示和取消保护配置命令配合使用。
  2. 可以使用完整的配置层次结构来限定该 wildcard 语句。停留在配置层次结构中时,通配符命令相对于该层次结构支持的选项。

    在第一种情况下,接口层次结构的完整路径是使用通配符语句指定的。在第二种情况下,用户停放在接口层次结构中。这两种方法支持的选项相同。

使用 range 选项为配置语句配置一系列命名标识符

分步过程

要使用不同的端口号(0 到 23)配置一系列相同类型的接口,请使用以下格式指定端口号的范围。

  1. 显示结果。范围通配符范围扩展到 24 个不同的 set 命令,用于配置端口号范围为 0 到 23 的接口。在这种情况下, vpls 将创建接口以添加协议家族。如果已经定义了接口,则只添加家族。

在语法中指定多个范围

分步过程

可以在通配符范围命令中指定多个范围。每个范围必须用逗号分隔。您还可以有重叠的范围。

注意:

对于其余示例,您将创建包含十个策略语句的配置的临时副本。具有这些语句可避免在尝试操作层次结构的空部分中的属性时报告的 CLI 错误。

  1. 若要在语法中指定多个范围,请包括每个范围的最小值和最大值,用逗号分隔。
  2. 显示结果。通配符范围将展开,以将 deactivate 语句添加到名称与指定范围匹配的策略中。值得注意的是,候选配置的更改列表中没有 p4p10

    注意:

    如果配置中尚不存在指定的策略名称,则会返回错误。这是因为您无法将 deactivate 语句添加到配置层次结构的空白部分。

在语法中指定范围和唯一编号

分步过程

可以在通配符范围命令的语法中指定范围和唯一数字的组合。

  1. 重新加载 临时配置

  1. 要指定范围和唯一编号,请用逗号分隔。在此示例中,10 作为唯一编号添加到一系列范围中。
  2. 显示结果。通配符范围将展开,以将 deactivate 语句添加到名称与指定范围匹配的策略以及唯一编号。因此, p10 在此示例中,策略也被停用。

    注意:

    如果配置中尚不存在指定的策略名称,则会返回错误。这是因为您无法将 deactivate 语句添加到空的配置层次结构中。

从范围中排除某些值

分步过程

可以通过使用感叹号标记要排除的数字或要排除的数字范围来从范围中排除某些值。

  1. 重新加载 临时配置

  2. 要从范围中排除某些值,请使用 !在语法中。
  3. 显示结果。通配符范围将展开,以将 deactivate 语句添加到名称与指定范围匹配的策略中。请注意,对候选配置所做的修改列表中没有策略 p3p4 。它们已从通配符范围中排除。

    注意:

    如果配置中尚不存在指定的策略名称,则会返回错误。这是因为您无法将 deactivate 语句添加到空的配置层次结构中。

使用步骤号指定范围

分步过程

您可以提供一个步长编号,以便在范围内具有恒定的间隔。步长值对第一个匹配项进行计数,然后跳过后续匹配项,直至达到指定的步长值。

  1. 重新加载 临时配置

  2. 若要提供步骤,请在语法中包含步骤值,前面加上正斜杠 (/)。在这里,我们指定 1-10 的范围,使用步长值 2 在每次匹配之间跳过 1 个数字。效果是跳过所有偶数匹配,因为我们从匹配奇数 (1) 开始。
  3. 显示结果。通配符范围将扩展以将该 deactivate 语句添加到所有其他匹配语句中,从第一个匹配项开始。

    注意:

    如果配置中尚不存在指定的策略名称,则会返回错误。这是因为您无法将 deactivate 语句添加到空的配置层次结构中。

    为了更好地说明 step 函数,恢复临时配置并重复通配符命令,这次的步长值为 4。现在,每次初始匹配后都会跳过 3 个条目。

  4. 显示结果。通配符范围将扩展为将语句添加到 deactivate 每四个匹配语句(从第一个匹配项开始)。

使用通配符删除策略 p1-p10

分步过程

删除为测试通配符功能而添加的临时策略。

  1. delete将语句与通配符范围语句一起使用,可通过 删除p10策略p1
  2. 显示结果。我们的 policy-options 节仅 p1 包含通过 的策略 p10。这将导致配置层次结构为空 policy-options