在 Oracle® Solaris 11.2 中配置和管理网络组件

退出打印视图

更新时间: 2014 年 7 月
 
 

为 NCP 创建 NCU

NCP 本质上是一个容器,包括配置有属性的一组 NCU,这些属性定义了 NCP 的网络配置。所有 NCP 都包含链路 NCU 和接口 NCU。

链路 NCU 指定 NCP 的链路配置和链路选择策略。接口 NCU 指定 NCP 的接口配置策略。如果要求 IP 连接,就需要提供链路 NCU 和接口 NCU 两者。必须使用 netcfg 命令或网络管理 GUI 显式添加或删除 NCU。有关使用网络管理 GUI 添加和删除 NCU 的更多信息,请参见从桌面管理网络配置

可以使用 netcfg 命令在交互模式或命令行模式下创建 NCU。因为创建 NCU 涉及到多个操作,所以在交互模式下创建 NCU,比尝试构建一行命令来创建 NCU 及其所有属性更为轻松高效。NCU 可以在最初创建 NCP 时创建,也可以在这之后创建。创建或修改 NCU 的过程包括设置常规的 NCU 属性,以及设置专门适用于每个 NCU 类型的属性。

当您以交互方式创建 NCU 时,netcfg 命令会遍历 NCU 的每个相关属性,显示其缺省值(如果有)和所有可能值。例如,如果为接口 NCU 的 ipv4-addrsrc 属性指定 dhcp,则不会提示您指定 ipv4-addr 属性的值,因为此属性仅用于配置静态 IP 地址。可以在交互式提示下为各个属性指定备用值。不指定值,按回车键,就会重新应用缺省值;如果没有缺省值,就会将该属性留空。

创建或修改 NCU 时,可以指定多个 NCU 属性。一些属性同时适用于两种 NCU 类型,而另外一些仅适用于链路 NCU 或接口 NCU。有关所有 NCU 属性(包括指定这些属性时可能适用的规则和条件)的完整说明,请参见 netcfg(1M) 手册页。

如何以交互方式为 NCP 创建 NCU

以下过程介绍了如何选择现有 NCP,然后以交互方式为该 NCP 创建 NCU。


注 -  在初始配置文件创建期间执行的“遍历”过程可以确保,在修改 NCP 时,系统根据您在创建期间所做的选择,仅向您提示那些适用的属性。
  1. 启动 netcfg 交互式会话。
    $ netcfg
    netcfg>
  2. 选择现有 NCP。

    在以下示例中,选择了 NCP myncp

    netcfg> select ncp myncp
    netcfg:ncp:myncp>

    选择 NCP 会自动使您进入该 NCP 的范围。对于位置、ENM 或 WLAN 对象,命令提示符会使您进入该配置文件的配置文件范围。

  3. 为 NCP 创建链路 NCU 和接口 NCU。

    以下示例中创建了链路 NCU:

    netcfg:ncp:myncp> create ncu phys net0
    Created ncu `net0'. Walking properties ...
    activation-mode (manual) [manual|prioritized]>
    mac-address>
    autopush>
    mtu> 1600

    其中 ncu 是对象类型,phys 是 NCU 的类,而 net0 是对象名称。

    创建 NCU 会使您进入该对象的范围,并使您遍历该对象的缺省属性。

      在本例中,指定了以下属性:

    • activation-mode 属性缺省为 manual,按回车键即可接受。

    • mac-addressautopush 属性将留空。

    • mtu 属性设置为值 1600

    以下示例说明如何创建接口 NCU:

    netcfg:ncp:myncp> create ncu ip net0
    Created ncu `net0'. Walking properties ...
    ip-version (ipv4,ipv6) [ipv4|ipv6]> ipv4
    ipv4-addrsrc (dhcp) [dhcp|static]> dhcp
    ipv4-default-route>

    其中 ncu 是对象类型,ip 是对象类,而 net0 是对象名称。

    创建 NCU 会使您进入该对象的范围,并使您遍历该对象的缺省属性。

      在本例中,指定了以下属性:

    • ip-version 属性设置为 ipv4

    • ipv4-addrsrc 属性设置为 dhcp

    在创建 NCU 的过程中,class 选项用于区分 NCU 的两种类型。

  4. (u53ef选) 如下所示确保配置正确:
    netcfg:ncp:myncp:ncu:net0> verify
    All properties verified

    verify 子命令验证配置并通知是否缺少任何必需值。

  5. 保存创建的各个 NCU。
    • 使用 commit 子命令:
      netcfg:ncp:myncp:ncu:net0> commit
      Committed changes
      netcfg:ncp:myncp:ncu:net0>

      commit 子命令会隐式验证属性。

    • 使用 end 子命令:
      netcfg:ncp:myncp:ncu:net0> end
      Committed changes
      netcfg:ncp:myncp>

      end 子命令会隐式提交更改。

      在本例中,如果已完成将 NCU 添加到 NCP,则 end 子命令会将会话移动到 NCP 范围。

    在交互模式下,更改不会保存到持久性存储,直到您提交这些更改。使用 commit 子命令时,会提交整个配置文件。为了保持持久性存储的一致性,commit 操作还包括验证步骤。如果验证失败,commit 操作也将失败。如果隐式提交失败,则会向您提供选项以结束或退出交互式会话,而不提交当前更改。也可以保持在当前范围内并继续对配置文件进行更改。


    注 -  要取消所做的更改,可使用 cancelrevert 子命令。

    cancel 子命令结束当前的配置文件配置而不将当前更改提交到持久性存储,然后将交互式会话上移到高一级的范围。revert 子命令撤消您进行的更改,并重新读取以前的配置。使用 revert 子命令时,交互式会话将保持在相同的范围内。


  6. 完成后,退出交互式会话。
    netcfg:ncp:myncp> exit

    exit 子命令类似于 end 子命令,但也会退出交互式会话。