Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

加载配置文件

在设备上加载配置文件有助于加载可能在网络中的许多设备上通用的配置文件部分。

从文件或终端加载配置的示例

您可以创建一个文件,其中包含 瞻博网络设备的配置数据,将其复制到本地设备,然后将该文件加载到CLI。加载该文件后,可以提交该文件在设备上激活配置,或者可以使用 CLI 交互式编辑配置,稍后提交配置。

您还可以在终端键入时创建配置,然后加载配置。当您切下配置的现有部分并粘贴到配置中的其他位置时,从端子加载配置非常有用。

要加载位于设备上的现有配置文件,请使用 load 配置模式命令:

要从终端加载配置,请使用以下版本的配置 load 模式命令。按下 Ctrl-d 以结束输入。

要替换整个配置,请为 override 层次结构的任何层级指定 选项。load override操作将当前候选配置替换为您正在加载的文件。因此,如果保存完整配置,则使用此选项。

override操作会丢弃当前候选配置,并将配置加载到filename 中或您在终端上键入的配置中。当您使用override选项并提交配置时,所有系统进程都会重新分析配置。

要更换配置的部分,请指定 replace 选项。该操作 load replace 会查找 replace: 您添加到已加载文件中的标签。然后,操作将候选配置的这些部分替换为标记后指定的任何内容。当您需要更精确地控制所更改的内容时,这一点很有用。要完成此操作,您必须在文件中或在终端键入的配置 replace: 中包括标记。该软件将搜索replace:标记、删除相同名称的现有语句(如果有),并将其替换为传入配置。如果不存在同名语句,则 replace 操作会将标记标记的语句添加到 replace: 配置中。

如果在 或 override 操作 merge 中指定包含标记的文件或类型文本, replace:replace: 标记将被忽略。在这种情况下, override 将优先执行 或 merge 操作。

如果要执行操作,并且您指定的文件没有 replacereplace: 标记, replace 操作将作为操作 merge 运行。如果 replace 键入的文本没有 merge 标记,此操作也将作为 replace: 操作运行。如果您要运行自动化脚本并且无法提前知道脚本需要执行的操作还是操作,此信息 replace 可能会 merge 很有用。这些脚本可以使用此replace操作来覆盖这两种情况。

load merge操作会将配置从保存的文件或终端与现有的候选配置合并。如果要添加新的配置部分,此信息非常有用。例如,假设您正在向[edit protocols]层次结构级别添加 BGP 配置,而以前没有 BGP 配置。您可以使用此load merge操作将传入配置与现有候选配置相结合。如果现有配置和传入配置包含冲突语句,则传入配置中的语句将覆盖现有配置中的声明。

要仅更换更改的配置部分,请为层次结构的任何级别指定 update 选项。该操作 load update 将比较候选配置和新配置数据。此操作只会更改候选配置与新配置不同的部分。例如,如果存在现有 BGP,并且正在加载的文件有一些更改,则您可以使用此操作。

mergeoverrideupdate选项支持以 JavaScript 对象表示法(JSON)格式加载配置数据。加载使用 JSON 格式的配置数据时,必须在命令中json指定选项。

要使用补丁文件更改配置的一部分,请指定 patch 选项。该load patch操作将加载包含配置更改的文件或终端输入。首先,在已更改配置的设备上键入show | compare命令,以输出两个配置之间的差异。然后,您可以在另一个设备上加载差异。命令的优势在于,在将片段加载到目标设备之前,不必将不同层级的片段复制到 load patch 文本文件中。如果您使用相同选项配置多个设备,这可能是一种有用的时间保护。例如,假设您在 router1 上配置了路由策略,并且想要复制 router2、router3 和 router4 上的策略配置。您可以使用此load patch操作。

此示例将首先运行 show | compare 命令。

示例:

继续此示例,您将命令的输出复制到剪贴板 show | compare ,确保包含层次结构级别。在路由器 2、路由器 3 和路由器 4 上,键入 load patch terminal 并粘贴输出。然后按 Enter 并按 Ctrl-d 结束操作。如果修补程序输入为现有语句指定不同的值,则修补程序输入将覆盖现有语句。

要使用 mergereplacesetupdate 选项而不指定完全层次结构级别,请指定 relative 选项。此选项可相对于配置层次结构中的当前编辑点加载传入配置。

示例:

要加载包含set配置模式命令的配置,请指定set选项。此选项可逐行执行配置说明,因为它们存储在文件中或来自终端。说明set中可包含任何配置模式命令,例如、 editexit、和。 top

要将配置文件从另一个网络系统复制到本地路由器,可以使用 SSH 和 Telnet 实用程序,如 CLI Explorer 中所述

注:

如果您在通用标准环境中工作,则只要更改属性(例如更改密码或更改共享密钥RADIUS secret 系统日志消息。在以下配置负载操作期间记录这些更改:

字符编码如何在瞻博网络上工作

Junos OS 配置数据和操作命令输出可能包含非 ASCII 字符,它们位于7位 ASCII 字符集之外。当以某些格式或某些类型的会话显示操作或配置数据时,软件将转义并编码这些字符。该软件使用等效的 UTF-8 十进制参考来对字符进行转义或编码。

该CLI尝试显示以文本、集或 JSON 格式产生的配置数据中任何非 ASCII 字符。此外CLI还会尝试在以文本格式产生的命令输出中显示这些字符。在例外情况下,CLI显示 UTF-8 十进制参考。(例外情况包括 XML 格式的配置数据,以及 XML 或 JSON 格式的命令输出,)在 NETCONF 和 Junos XML 协议会话中,如果请求包含非 ASCII 字符的配置数据或命令输出,将看到类似的结果。在这种情况下,服务器会为这些字符返回等效的 UTF-8 十进制参考,用于所有格式。

例如,假设设备上配置了以下用户帐户,其中包含带 tilde (ñ) 的拉美文小字母 n。

以文本格式显示结果配置时,CLI 将打印相应的字符。

当以 XML 格式在 CLI 中显示生成的配置时,ñ 字符将映射到其等效的 UTF-8 十进制参考 ñ 。如果您在 NETCONF 或标准 XML 协议会话中以任何格式显示配置,Junos结果相同。

将配置数据加载到设备上时,可以使用其等效的 UTF-8 十进制字符参考来加载非 ASCII 字符。

关于指定语句和标识符

本主题提供有关容器CLI和叶语句的详细信息,以便了解如何在创建 ASCII 配置文件时指定它们。本主题还介绍如何CLI类型检查以验证您输入的数据是否正确。

指定语句

语句有两种显示方式之一,有大括号 ({ }) 或没有括号:

  • 语句名称和标识符,包含一个或多个大括号的较低级别的语句:

  • 语句名称、标识符和单个标识符:

语句 名称 是 语句的名称。标识符名称是唯一标识语句实例的名称或其他字符串。在配置中可以多次指定语句时,您可以使用标识符。

指定语句时,必须指定语句名称、标识符名称或两者,具体取决于语句层次结构。

可通过以下方式之一指定标识符:

  • 标识符名称标识符名称 是在语句中指定一次以上语句时用于唯一标识语句的关键字。

  • 标识符名称值标识符名称 是关键字, 是必需选项变量。

  • 标识符名称 [value1 value2 value3 ...]标识符名称 是接受多个值的关键字。当指定一组值时,需要使用托架,而但是,当您仅指定一个值时,它们是可选的。

以下示例说明如何在配置中指定语句和标识符:

创建 ASCII 配置文件时,请指定语句和标识符。每个语句都有首选样式,CLI在显示配置以响应配置模式命令时使用此 show 样式。您可以通过以下一种方法指定语句和标识符:

  • 后面跟有标识符的语句:

  • 语句后跟括在大括号中的标识符:

  • 对于某些重复的标识符,您可以对所有语句使用一组大括号:

执行 CLI 类型检查

指定标识符和值时,CLI 执行类型检查,以验证输入的数据格式是否正确。例如,对于您必须指定 IP 地址的语句,CLI需要以有效格式输入地址。否则,将显示一条错误消息,指示需要键入哪些内容。列出了需要检查的CLI类型。以下为CLI输入类型:

表 1: CLI 配置输入类型

数据类型

编排

示例

物理接口名称(在 [edit interfaces]层次结构中使用)

type-fpc/pic/port

Correct: et-0/0/1

Incorrect: et-0

完整接口名称

type-fpc/pic/port<:channel>.logical

Correct: et-0/0/1.0

Incorrect: et-0/0/1

完整或缩写的接口名称(在 [edit interfaces]层次结构之外的位置使用)

type-<fpc</pic/port>><<: channel>.logical>

Correct: et, et-1, et-1/2/3:4.5

IP 地址

0xhex-bytesoctet<. octet<.octet. <octet>>>

Correct: 1.2.3.4, 0x01020304, 128.8.1,128.8

Sample translations:

1.2.3逐渐1.2.3.00x01020304逐渐1.2.3.40x010203逐渐0.1.2.3

IP 地址(目标前缀)和前缀长度

0xhex-bytes</length>octet<octet <octet.<octet>>></length>

Correct: 10/8, 128.8/16, 1.2.3.4/32, 1.2.3.4

Sample translations:

1.2.3逐渐1.2.3.0/320x01020304逐渐1.2.3.4/320x010203逐渐0.1.2.3/32default逐渐0.0.0.0/0

国际标准化组织(ISO)地址

hex-nibble<hex-nibble ...>

Correct: 47.1234.2345.3456.00, 47123423453456.00, 47.12.34.23.45.34.56.00

Sample translations:

47123456逐渐47.1234.5647.12.34.56逐渐47.1234.564712.3456逐渐47.1234.56

OSPF 区域标识符(ID)

0xhex-bytesoctet<.octet<.octet.< octet >>> decimal-number

Correct: 54, 0.0.0.54, 0x01020304, 1.2.3.4

Sample translations:

54逐渐0.0.0.54

257逐渐0.0.1.1128.8逐渐128.8.0.00x010203逐渐0.1.2.3

关于从文件加载配置

以下示例说明从文件加载配置的过程。

图 1: 覆盖当前配置 覆盖当前配置
图 2: 使用替换选项 使用替换选项
图 3: 使用合并选项 使用合并选项
图 4: 使用修补文件 使用修补文件
图 5: 使用 set 选项 使用 set 选项

上传配置文件

您可以在本地系统上创建配置文件,将该文件复制到设备,然后将该文件加载到CLI。在您加载配置文件之后,您可以提交它以激活设备上的配置。您也可以使用 CLI 以交互方式编辑配置,稍后再提交。

要从本地系统上传配置文件:

  1. 使用文本编辑器(如记事本)创建配置文件,确保配置文件的语法正确。
  2. 在配置文件中,包括以下一个或多个选项,以在加载文件时执行所需操作。
    表 2: Load 命令选项
    选项 说明

    merge

    将当前活动配置与指定文件名中的配置或终端窗口中键入的配置相结合。向merge现有配置中添加新节时,操作很有用。如果活动配置和传入配置包含冲突语句,则传入配置中的语句将覆盖活动配置中的声明。

    override

    丢弃当前候选配置。在指定的文件名中加载配置,或在终端键入的配置。当您使用override选项并提交配置时,所有系统进程都会重新分析配置。您可以在层次override结构的任何级别上使用该选项。

    replace

    搜索标记,删除相同名称(如果有)的现有语句,然后用传入配置 replace 替换现有语句。如果不存在相同名称的语句,操作会将标记标记的语句 replacereplace 添加到活动配置中。

    注:

    要完成此操作,必须在文本文件中或在终端输入的配置中包括 replace 标记。

  3. 按 Ctrl + a 选择配置文件中的所有文本。
  4. 按 Ctrl + c 将配置文本文件的内容复制到剪贴板。
  5. 使用您的用户名和密码登录设备。
  6. 进入配置模式:user@host> configure

    [edit] user@host#

  7. 加载配置文件:[编辑] user@host# load merge terminal
  8. 在光标处,使用鼠标和"粘贴"图标粘贴剪贴板的内容:[编辑] user@host # [输入到端的新线路键入 load merge terminal ^D] >Cursor 已出现。将剪贴板的内容粘贴到此处 <
  9. 按下 Enter。
  10. 按 Ctrl + d 设置文件结尾标记。

要在提交配置之前查看配置步骤的结果,请在用户show提示符下键入命令。

要将这些更改提交至活动配置,请在commit用户提示符下键入命令。您也可以使用 CLI 以交互方式编辑配置,稍后再提交。