JavaScript is required to for searching.
跳过导航链接
退出打印视图
在 Oracle Solaris 11.1 中使用反应性网络配置连接系统     Oracle Solaris 11.1 Information Library (简体中文)
为本文档评分
search filter icon
search icon

文档信息

前言

1.  反应性网络配置(概述)

2.  创建和配置反应性网络配置文件(任务)

使用 netcfg 命令配置配置文件

netcfg 交互模式

netcfg 命令行模式

netcfg 命令文件模式

netcfgnetadm 子命令

netcfg 子命令

netadm 子命令

创建用户定义的配置文件

创建 NCP

为 NCP 创建 NCU

如何以交互方式创建具有 NCU 的 NCP

创建位置配置文件

如何以交互方式创建位置配置文件

创建 ENM 配置文件

如何以交互方式创建 ENM 配置文件

创建已知 WLAN 配置文件

如何以交互方式创建已知 WLAN 配置文件

设置和更改配置文件的属性值

如何以交互方式设置属性值

列出系统中的配置文件配置信息

列出系统中的所有配置文件配置信息

列出特定配置文件的所有属性值

获取特定属性的值

如何以交互方式获取单个属性值

使用 walkprop 子命令查看和更改属性值

启用和禁用配置文件

3.  管理反应性网络配置(任务)

4.  使用网络管理图形用户界面

索引

请告诉我们如何提高我们的文档:
过于简略
不易阅读或难以理解
重要信息缺失
错误的内容
需要翻译的版本
其他
Your rating has been updated
感谢您的反馈!

您的反馈将非常有助于我们提供更好的文档。 您是否愿意参与我们的内容改进并提供进一步的意见?

创建用户定义的配置文件

可以使用 netcfg 命令创建用户定义的配置文件。该命令在交互模式或命令行模式下都可使用。netcfg 命令还支持将配置文件配置信息导出到输出文件。有关命令行模式和交互模式的详细信息,请参见netcfg 命令行模式netcfg 交互模式

如果您具有 "Console User"(控制台用户)特权,可使用 netcfg 命令创建用户定义的配置文件。这些特权会自动指定给任何从 /dev/console 登录到系统的用户。具有 "Network Autoconf Admin"(网络自动配置管理员)权限配置文件的用户还可以创建和修改所有类型的反应性网络(NWAM 管理的)配置文件和配置对象。有关更多信息,请参见网络配置安全和授权

可以创建以下配置文件和配置对象:

有关配置文件和配置对象的信息,请参见网络配置文件和类型


注 - AutomaticDefaultFixed NCP 及位置配置文件是系统定义的。请勿尝试使用 netcfg 命令创建这些配置文件。


用于从命令行创建配置文件的基本命令语法如下所示:

netcfg create [ -t template ] object-type [ class ] object-name
create

创建指定类型和名称的内存配置文件(或配置对象)。

-t template

指定新的配置文件与 template 完全相同,其中 template 是相同类型的现有配置文件的名称。如果未使用 -t 选项,将使用缺省值创建新的配置文件。

object-type

指定要创建的配置文件的类型。

可以为 object-type 选项指定以下值之一:

  • ncp

  • ncu

  • loc

  • enm

  • wlan

必须在全局范围内创建由除 ncu 以外的 object-type 选项指定的所有配置文件,才能使用 netcfg 命令选择特定对象。

class

指定由 object-type 所指定的配置文件的类。此参数仅用于 ncu 对象类型且有两个可能值,phys(用于链路 NCU)或 ip(用于接口 NCU)。

object-name

指定用户定义的配置文件的名称。对于 NCU,object-name 是相应的链路或接口的名称。对于所有其他配置文件类型,object-name 是任何用户定义的名称。


注 - 创建 NCP 时,class 不是必需选项。


也可以使用 Automatic NCP 的副本作为模板,然后对该配置文件进行更改,如下所示:

$ netcfg> create -t Automatic ncp test

要创建一个名为 office 的位置配置文件,应键入以下命令:

$ netcfg> create loc office

有关 netcfg 子命令的信息,请参见netcfg 子命令

创建 NCP

在交互模式下创建配置文件,会在以下范围之一内显示命令提示符:

创建 NCP 或 NCU 会将焦点移到该对象范围中,带您遍历指定配置文件的缺省属性。

要以交互方式创建 NCP,可通过启动 netcfg 交互式会话开始。然后,使用 create 子命令创建新的 NCP。例如:

$ netcfg
netcfg> create ncp User
netcfg:ncp:User>

为 NCP 创建 NCU

NCP 本质上是一个容器,包含一组 NCU。所有 NCP 都包含链路 NCU 和接口 NCU。链路 NCU 指定链路配置策略和链路选择策略。接口 NCU 指定接口配置策略。如果要求 IP 连接,就需要提供链路 NCU 和接口 NCU 两者。必须使用 netcfg 命令或网络管理 GUI 显式添加或删除 NCU。有关使用网络管理 GUI 添加和删除 NCU 的更多信息,请参见编辑网络配置文件

无法使用 netcfg 命令修改 DefaultFixed NCP。当 NCP 处于活动状态时,可以使用 ipadmdladm 命令在 DefaultFixed 中创建、修改或删除 NCU。还可以使用 ipadmdladm 命令将物理链路和 IP 接口以外的 NCU 类添加到反应性 NCP。ipadmdladm 命令可提供创建和修改更复杂的链路和接口类的功能。

有关 ipadmdladm 命令的更多信息,请参见《在 Oracle Solaris 11.1 中使用固定网络配置连接系统》中的第 3  章 "使用数据链路"《在 Oracle Solaris 11.1 中使用固定网络配置连接系统》中的第 4  章 "使用 IP 接口"


注 - 用户可以添加不与系统中当前安装的任何链路相关联的 NCU。此外,也可以删除映射到系统中当前安装的某个链路的 NCU。


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

根据您在创建 NCP 过程中所做的选择,在为该特定 NCP 创建 NCU 的过程中,系统将最为合理地向您显示相关属性。

当您以交互方式创建 NCU 时,netcfg 会遍历每个相关属性并显示其缺省值(如果有)和可能值。不指定值,按 Return(回车键),就会应用缺省值(如果没有缺省值,就会将该属性留空),您也可以指定一个其他值。在为 NCP 创建 NCU 的过程中显示的属性,与您之前所做的选择有关。例如,对于一个接口 NCU,如果您已为 ipv4-addrsrc 属性选择了 dhcp,系统就不会提示您为 ipv4-addr 属性指定值。

下表描述创建或修改 NCU 时可能指定的所有 NCU 属性。某些属性对 NCU 的两种类型都适用。有些属性或者只适用于链路 NCU,或者只适用于接口 NCU。有关所有 NCU 属性(包括指定这些属性时可能适用的规则和条件)的完整说明,请参见 netcfg(1M) 手册页。

表 2-1 创建或修改 NCU 时涉及的 NCU 属性

属性
说明
可能值
NCU 类型
type
指定 NCU 类型(链路或接口)。
link 或 interface
链路和接口
class
指定 NCU 类。
phys(用于链路 NCU)或 ip(用于接口 NCU)
链路和接口
parent
指定此 NCU 所属的 NCP。
parent-NCP
链路和接口
enabled
指定是启用还是禁用该 NCU。此属性为只读。当使用 netadm 命令或网络管理 GUI 启用或禁用 NCU 时,将间接更改此属性。
truefalse
链路和接口
activation-mode
指定自动激活 NCU 的触发类型。
manualprioritized

缺省值为 manual

链路
priority-group
指定组优先级号。
0(用于有线链路)或 1(用于无线链路)

对于用户定义的 NCP,可以指定与此不同的策略,例如,指定无线链路 1 的优先级是 1,有线链路 1 的优先级是 2,有线链路 2 的优先级是 3。


注 - 数字越小,指示优先级越高。


链路
priority-mode
指定用来确定优先组的激活行为的模式(如果 activation-mode 属性设置为 prioritized)。
exclusivesharedall

有关在指定这些值时要遵循的规则,请参见 netcfg(1M) 手册页。

链路
mac-address
指定分配给此链路的 MAC 地址缺省情况下,将出厂 MAC 地址或缺省 MAC 地址用于链路。可设置为其他值,覆盖此选择。
一个包含 48 位 MAC 地址的字符串
autopush
标识链路打开时在链路上自动推送的模块。
一个字符串列表(要在链路上推送的模块)

有关信息,请参见 autopush(1M) 手册页。

链路
mtu
自动设置为物理链路的缺省 MTU。可通过将该属性设置为一个其他值来覆盖此值。
链路的 MTU 大小
链路
ip-version
指定要使用的 IP 的版本。可以指定多个值。
ipv4ipv6

缺省值是 ipv4ipv6

接口
ipv4-addrsrc
标识指定给此 NCU 的 IPv4 地址的源。可以指定多个值。
dhcpstatic

缺省值为 dhcp

接口
ipv6-addrsrc
标识指定给此 NCU 的 IPv6 地址的源。可以指定多个值。
dhcpautoconfstatic

缺省值是 dhcpautoconf

接口
ipv4-addr
指定要分配给此 NCU 的一个或多个 IPv4 地址。
要指定的一个或多个 IPv4 地址
接口
ipv6-addr
指定要分配给此 NCU 的一个或多个 IPv6 地址。
要指定的一个或多个 IPv6 地址
接口
ipv4-default-route
指定 IPv4 地址的缺省路由。
一个 IPv4 地址
接口
ipv6-default-route
指定 IPv6 地址的缺省路由。
一个 IPv6 地址
接口

如何以交互方式创建具有 NCU 的 NCP

以下过程介绍了如何在交互模式下创建 NCP 以及其 NCU。


注 - 系统网络在初始配置文件创建过程中执行的“遍历”过程可以确保系统根据您先前做出的选择,仅向您提示那些适用的属性。


  1. 启动 netcfg 交互式会话。
    $ netcfg
    netcfg>
  2. 创建 NCP。
    netcfg> create ncp User
    netcfg:ncp:User>

    其中 ncp 是配置文件类型,User 是配置文件名称。

    创建 NCP 会自动使您进入 NCP 范围。如果您创建的是位置、ENM 或 WLAN 对象,则命令提示符会使您进入配置文件范围。


    注 - 重复步骤 3 和 4,直到为该 NCP 创建了所有必需的 NCU。


  3. 为 NCP 创建链路 NCU 和接口 NCU。
    1. 要创建链路 NCU,请键入以下命令:
      netcfg:ncp:User> create ncu phys net0
      Created ncu `net0', Walking properties ...

      其中 ncu 是对象类型,phys 是类,net0只是为了举例)是对象名称。

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

      有关 NCU 属性的信息,请参见表 2-1

    2. 要创建接口 NCU,请键入以下命令:
      netcfg:ncp:User> create ncu ip net0
      Created ncu `net0'. walking properties ...

      其中 ncu 是对象类型,ip 是类,net0只是为了举例)是对象名称。

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

      在创建 NCU 的过程中,class 选项用于区分 NCU 的两种类型。在不同 NCU 类型共享同一名称的情况下,此选项特别有用。如果省略 class 选项,区分共享同一名称的 NCU 就要困难得多。

  4. 为创建的 NCU 添加适当的属性。
  5. 在创建 NCU 期间,或为指定的 NCU 设置属性值时,使用 verify 子命令确保您所做的更改是正确的。
    netcfg:ncp:User:ncu:net0> verify
    All properties verified

    verify 子命令会验证您的配置并通知是否缺少任何必需值。可以在创建或修改配置文件时显式使用 verify 子命令验证更改。

  6. 提交为 NCU 设置的属性。
    netcfg:ncp:User:ncu:net0> commit
    committed changes.

    commit 子命令会隐式验证更改。

    您也可以使用 end 子命令执行隐式提交,这会将交互式会话上移一级,移到紧邻的较高范围。在这种情况下,如果您已经创建完 NCP 并向其中添加了 NCU,则可以直接从 NCP 范围退出交互式会话。

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


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

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


  7. 使用 list 子命令显示 NCP 配置。
  8. 配置完 NCP 后,退出交互式会话。
    netcfg:ncp:User> exit

    任何时间使用 exit 子命令结束 netcfg 交互式会话,都会验证和提交当前配置文件。如果验证或提交操作失败,系统会发出相应的错误消息,您可以选择退出而不提交当前更改,也可以保持在当前范围内并继续对配置文件进行更改。


    注 - 要退出范围而不退出 netcfg 交互式会话,请键入 end 子命令:

    netcfg:ncp:User> end
    netcfg>

示例 2-1 以交互方式创建具有 NCU 的 NCP

在以下示例中,创建了一个 NCP 和两个 NCU(一个链路 NCU,一个接口 NCU)。

$ netcfg
netcfg> create ncp User
netcfg:ncp:User> create ncu phys net0
Created ncu `net0', Walking properties ...
activation-mode (manual) [manual|prioritized]>
mac-address>
autopush>
mtu>
netcfg:ncp:User:ncu:net0> end
Committed changes
netcfg:ncp:User> 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>
netcfg:ncp:User:ncu:net0> verify
All properties verified
netcfg:ncp:User:ncu:net0> end
Committed changes
netcfg:ncp:User> list
ncp:User
        management-type     reactive
NCUs:
        phys    net0
        ip      net0
netcfg:ncp:User> list ncu phys net0
ncu:net0
        type                    link
        class                   phys
        parent                  "User"
        activation-mode         manual
        enabled                 true
netcfg:ncp:User> list ncu ip net0
ncu:net0
        type                    interface
        class                   ip
        parent                  "User"
        enabled                 true
        ip-version              ipv4
        ipv4-addrsrc            dhcp
        netcfg:ncp:User> exit
$

在此示例中,因为选择的值是 ipv4,未使用 ipv6-addrsrc 属性,所以没有显示对此属性的提示。同样,对于 phys NCU,由于采用了 priority-group 属性的缺省值(手动激活),所以没有应用条件相关的其他属性。

示例 2-2 以交互方式为现有 NCP 创建 NCU

要为现有 NCP 创建 NCU 或修改任何现有配置文件的属性,请将 netcfg 命令与 select 子命令一起使用。

在以下示例中,为现有 NCP 创建了一个 IP NCU。在交互模式下修改现有配置文件的过程类似于创建配置文件。以下示例和示例 2-1 的区别是,在本示例中,使用 select 子命令代替了 create 子命令,因为该 NCP 已经存在。

$ netcfg
netcfg> select ncp User
netcfg:ncp:User> list
ncp:User
        management-type    reactive
NCUs:
        phys   net0
netcfg:ncp:User> 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>
netcfg:ncp:User:ncu:net0> end
Committed changes
netcfg:ncp:User> list
ncp:User
        management-type    reactive
NCUs:
        phys    net0
        ip      net0
netcfg:ncp:User> list ncu phys net0
ncu:net0
        type                    link
        class                   phys
        parent                  "User"
        activation-mode         manual
        enabled                 true
netcfg:ncp:User> list ncu ip net0
NCU:net0
        type                    interface
        class                   ip
        parent                  "User"
        enabled                 true
        ip-version              ipv4
        ipv4-addrsrc            dhcp
        netcfg:ncp:User> exit
$

创建位置配置文件

位置配置文件包含的属性用于定义与基本链路和 IP 连接不直接相关的网络配置值。例如,在需要时结合应用的命名服务和 IP 过滤器设置。在任何给定时刻,系统中必须有一个位置配置文件和一个 NCP 处于活动状态。

存在系统定义的位置和用户定义的位置。系统定义的位置是网络管理守护进程 nwamd 在某些情况下选择的缺省位置,例如,如果您未指定位置,或者如果未启用手动启用的位置,或者根据条件启用的位置的条件一个都不满足。系统定义的位置具有 system 激活模式。用户定义的位置配置为根据网络状况(例如,通过网络连接获取的 IP 地址)手动或根据条件启用。

有关手动激活(启用)位置配置文件的信息,请参见启用和禁用配置文件

可以使用 netcfg 命令在交互模式或命令行模式下创建位置。创建位置配置文件时,必须通过指定那些定义该位置的特定配置属性的值来设置位置的属性。位置属性按组进行分类,这里的组表示配置首选项的某个特定类。

位置属性也存储在系统信息库中。当启用某个特定位置配置文件时,其属性将自动应用到正在运行的系统。创建或修改位置配置文件包括设置用于定义配置文件的配置方式的各种属性以及设置用于定义配置文件的启用时间的属性。在配置过程中为您提供的属性基于已设置的属性值。

下表描述了可以指定的所有位置属性。请注意位置属性是按组分类的。有关所有位置属性(包括指定这些属性时可能适用的任何规则、条件和相关项)的完整说明,请参见 netcfg(1M) 手册页。

表 2-2 位置属性及其说明

属性组和说明
属性值和说明
选择条件

指定确定如何以及何时启用或禁用某个位置的条件。

  • activation-mode

    activation-mode 属性的可能值是 manualconditional-anyconditional-all

  • conditions

有关可用于构造条件字符串的条件和操作的信息,请参见表 1-1

系统域

确定由 NIS 命名服务直接使用的主机域名。

system-domain 属性包括 default-domain 属性。此属性指定用于远程过程调用 (Remote Procedure Call, RPC) 交换的系统范围的域。
名称服务信息

指定要使用的命名服务和命名服务转换器配置。

以下是指定的命名服务的属性的列表:
  • domain-name

  • nameservices

  • nameservices-config-file

  • dns-nameservice-configsrc

  • dns-nameservice-domain

  • dns-namservice-servers

  • dns-nameservice-search

  • dns-nameservice-sortlist

  • dns-nameservice-options

  • nis-nameservice-configsrc

  • nis-namservice-servers

  • ldap-nameservice-configsrc

  • ldap-namservice-servers

有关这些属性的更多信息,请参见 netcfg(1M) 手册页中的“位置属性”一节。

NFSv4 域

指定 NFSv4 域。

用于系统的 nfsmapid_domain 属性的值。如 nfsmapid 手册页中所述,此值用于在位置处于活动状态时设置 nfsmapid_domain SMF 属性。如果未设置此属性,位置处于活动状态时,会清除系统的 nfsmapid_property。有关更多信息,请参见 nfsmapid(1M) 手册页。
IP 过滤器配置

指定用于 IP 过滤器配置的参数。对于这些属性,指定了指向包含 IP 过滤器和 NAT 规则的适当 ipf ipnat 文件的路径。

  • ipfilter-config-file
  • ipfilter-v6-config-file

  • ipnat-config-file

  • ippool-config-file

    如果指定了配置文件,则标识出的文件中包含的规则将应用到相应的 ipfilter 子系统。

用于 IPsec 的配置文件

指定哪些文件要用于 IPsec 配置。

  • ike-config-file
  • ipsecpolicy-config-file

如何以交互方式创建位置配置文件

以下过程描述如何创建位置配置文件。


注 - 在创建初始配置文件过程中,反应性网络执行的“遍历”过程会根据您先前输入的值,仅向您提示那些适用的属性。


有关 netcfg 子命令的信息,请参见netcfg 子命令

  1. 启动 netcfg 交互式会话。
    $ netcfg
    netcfg>
  2. 创建或选择位置。
    netcfg> create loc office
    netcfg:loc:office>

    在此示例中,创建了位置 office

    创建位置会自动将您移到此位置的配置文件范围内。

  3. 为该位置设置适当的属性。

    有关位置属性的信息,请参见表 2-2

  4. 显示配置文件配置。

    例如,以下输出显示位置 office 的属性:

    netcfg:loc:office> list
    LOC:office
        activation-mode              conditional-any
        conditions                   "ncu ip:wpi0 is active"
        enabled                      false
        nameservices                 dns
        nameservices-config-file     "/etc/nsswitch.dns"
        dns-nameservice-configsrc    dhcp
        ipfilter-config-file         "/export/home/test/wifi.ipf.conf"
  5. 验证配置文件配置是正确的。

    以下示例中,验证了位置 office 的配置:

    netcfg:loc:office> verify
    All properties verified

    verify 子命令会验证您的配置并通知是否缺少任何必需值。可以在创建或修改配置文件时显式使用 verify 子命令验证更改。

  6. 当您完成验证后,将位置配置文件提交到持久性存储。
    netcfg:loc:office> commit
    Committed changes

    commit 子命令会隐式验证更改。

    也可以使用 end 子命令结束会话,这样也会保存配置文件配置。

    netcfg:loc:office> end
    Committed changes

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


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

    cancel 子命令结束当前的配置文件配置而不将当前更改提交到持久性存储,然后将交互式会话上移一级,移到紧邻的较高范围内。


  7. 退出交互式会话。
    netcfg> exit
    $

示例 2-3 以交互方式创建位置配置文件

在以下示例中,创建了名为 office 的位置。

$ netcfg
netcfg> create loc office
Created loc 'office'.  Walking properties ...
activation-mode (manual) [manual|conditional-any|conditional-all]> conditional-any
conditions> ncu ip:wpi0 is active
nameservices (dns) [dns|files|nis|ldap]> 
nameservices-config-file ("/etc/nsswitch.dns")> 
dns-nameservice-configsrc (dhcp) [manual|dhcp]> 
nfsv4-domain> 
ipfilter-config-file> /export/home/test/wifi.ipf.conf
ipfilter-v6-config-file> 
ipnat-config-file> 
ippool-config-file> 
ike-config-file> 
ipsecpolicy-config-file> 
netcfg:loc:office> list
LOC:office
    activation-mode              conditional-any
    conditions                   "ncu ip:wpi0 is active"
    enabled                      false
    nameservices                 dns
    nameservices-config-file     "/etc/nsswitch.dns"
    dns-nameservice-configsrc    dhcp
    ipfilter-config-file         "/export/home/test/wifi.ipf.conf"
netcfg:loc:office> verify
All properties verified
netcfg:loc:office> commit
Committed changes
netcfg:loc:office> end
netcfg> list
NCPs:
    DefaultFixed
    User
    Automatic
Locations:
    Automatic
    NoNet
    office
    DefaultFixed
WLANs:
    sunwifi
    ibahn
    gogoinflight
    admiralsclub
    hhonors
    sjcfreewifi
netcfg> exit
$

在此示例中,为 office 位置指定了以下属性:

创建 ENM 配置文件

通过 ENM 可以指定应用程序或脚本(例如 VPN 应用程序)应何时执行自己的网络配置,即 NCP 和位置配置文件中指定的配置以外的配置。有关 ENM 的更多信息,请参见ENM 说明


注 - 系统不会自动识别您可能要为其创建 ENM 的应用程序。只有先在系统中安装并配置这些应用程序后,才能使用 netcfg 命令为这些应用程序创建 ENM。


要创建 ENM,请键入以下命令:

$ netcfg
netcfg> create enm my_enm
Created enm 'my_enm'.  Walking properties ...

其中 enm 是ENM配置文件,my_enm 是对象名称。

创建 ENM 的过程会将您带到新创建的 ENM 的配置文件范围内,并自动开始遍历新创建的 ENM 中的属性。您可以从配置文件范围为 ENM 设置属性,指示何时启用 ENM、如何启用 ENM 以及其他条件(包括 ENM 的启动和停止方法)。

有关指定 ENM 属性的详细说明,请参见 netcfg(1M) 手册页。

下表描述了创建或修改 ENM 时可能指定的属性。

表 2-3 ENM 属性和说明

属性名
说明
可能值
activation-mode
用于确定 ENM 的激活的模式。
conditional-anyconditional-allmanual
conditions
如果激活模式是 conditional-anyconditional-all,则指定用于确定是否必须启用 ENM 的测试。
如果使用该属性,此值为采用表 1-1 中指定的格式的一个或多个字符串。
start
(可选的)要在激活时执行的脚本的绝对路径。
脚本的路径(如果使用此属性)
stop
(可选的)要在取消激活时执行的脚本的绝对路径。
脚本的路径(如果使用此属性)
fmri
(可选的)要在 ENM 激活时启用的故障管理资源标识符 (fault managed resource identifier, FMRI)。

注 - 必须指定 FMRI 或启动脚本。如果指定了 FMRI,startstop 属性将被忽略。


脚本的路径

如何以交互方式创建 ENM 配置文件

以下过程以 test-enm 为例介绍了如何创建 ENM 配置文件。

  1. 启动 netcfg 交互式会话。
    $ netcfg
    netcfg>
  2. 创建 ENM。
    netcfg> create enm test-enm
    Created enm 'test-enm'.  Walking properties ...
    activation-mode (manual) [manual|conditional-any|conditional-all]>
    fmri> svc:/application/test-enm:default
    start>
    stop>
    netcfg:enm:test-enm>

    创建 ENM 会自动将您移动到此 ENM 的配置文件范围内并遍历这些属性。然后,设置 fmri 属性。

    有关 ENM 属性的信息,请参见表 2-3

  3. 显示配置文件配置。
    netcfg:enm:test-enm> list
    ENM:test-enm
        activation-mode     manual
        enabled             false
        fmri                "svc:/application/test-enm:default"
    netcfg:enm:test-enm>
  4. 验证配置文件配置是正确的。
    netcfg:enm:test-enm> verify
    All properties verified

    verify 子命令会验证您的配置并通知是否缺少任何必需值。可以在创建或修改配置文件时显式使用 verify 子命令验证更改。

  5. 当您完成验证后,将 ENM 配置文件提交到持久性存储。
    netcfg:enm:test-enm> commit
    Committed changes

    commit 子命令会隐式验证更改,然后提交这些更改。

    也可以使用 end 子命令结束会话,这样也会保存配置文件配置。

    netcfg:enm:test-enm> end
    Committed changes

示例 2-4 以交互方式创建 ENM 配置文件

在以下示例中,在交互模式下创建了名为 test-enm 的 ENM。

$ netcfg
netcfg> create enm test-enm
Created enm 'testenm'.  Walking properties ...
activation-mode (manual) [manual|conditional-any|conditional-all]> 
fmri> svc:/application/test-app:default
start> 
stop> 
netcfg:enm:test-enm> list
ENM:test-enm
    activation-mode     manual
    enabled             false
    fmri                "svc:/application/test-enm:default"
netcfg:enm:test-enm> verify
All properties verified
netcfg:enm:test-enm> end
Committed changes
netcfg> list
NCPs:
    DefaultFixed
    User
    Automatic
Locations:
    Automatic
    NoNet
    test-loc
    DefaultFixed
ENMs:
    test-enm
WLANs:
    sunwifi
    ibahn
    gogoinflight
    admiralsclub
    hhonors
    sjcfreewifi
netcfg> exit
$

在此示例中,使用以下属性值创建了名为 test-enm 的 ENM:

创建已知 WLAN 配置文件

已知 WLAN 配置文件存储关于无线网络的信息,使 NCP 可以根据您的系统连接到的无线网络的配置信息自动配置无线接口。有关已知 WLAN 的更多信息,请参见已知 WLAN 的说明

要创建 WLAN 对象,请键入以下命令:

$ netcfg
netcfg> create wlan mywifi
Created wlan 'mywifi'.  Walking properties ...

其中 wlan 是 WLAN 对象,mywifi 是对象名称。

创建 WLAN 对象的过程会将您带到新创建的 WLAN 的配置文件范围内,并自动开始遍历新创建的 WLAN 中的属性。您可以从这里为 WLAN 设置那些定义其配置的属性。

下表描述了创建或修改 WLAN 时可能指定的属性。

表 2-4 已知 WLAN 属性和数据类型

已知 WLAN 属性
属性的数据类型
name
ESSID(无线网络名称)。
bssids
连接到指定 WLAN 时您的系统已连接到的 WLAN 的基站 ID。
priority
WLAN 连接首选项(优先选用与较低值对应的连接)。
keyslot
包含 WEP 密钥的插槽号 (1–4)。
keyname
使用 dladm create-secobj 命令创建的 WLAN 密钥的名称。

有关 dladm 命令的更多信息,请参见《在 Oracle Solaris 11.1 中使用固定网络配置连接系统》中的第 3  章 "使用数据链路"

security-mode
正在使用的加密密钥的类型。类型必须为 nonewepwpa

如何以交互方式创建已知 WLAN 配置文件

以下过程以 mywifi 为例介绍了如何创建已知 WLAN 配置文件。

  1. 启动 netcfg 交互式会话。
    $ netcfg
    netcfg>
  2. 创建 WLAN。
    netcfg> create wlan mywifi
    Created wlan 'mywifi'.  Walking properties ...
    priority (0)> 100
    bssids>
    keyname> mywifi-key
    keyslot>
    security-mode [none|wep|wpa]> wpa
    netcfg:wlan:mywifi>

    创建 WLAN 会自动将您移动到此 WLAN 的配置文件范围内并遍历这些属性。

    有关已知 WLAN 属性的信息,请参见表 2-4

  3. 显示配置文件配置。
    netcfg:wlan:mywifi> list known wlan:mywifi
        priority            100
        keyname             "mywifi-key"
        security-mode       wpa
    netcfg:wlan:mywifi>
  4. 验证配置文件配置是正确的。
    netcfg:wlan:mywifi> verify
    All properties verified

    verify 子命令会验证您的配置并通知是否缺少任何必需值。可以在创建或修改配置文件时显式使用 verify 子命令验证更改。

  5. 完成验证后,结束回话。
    netcfg:wlan:mywifi> end
    Committed changes

    end 子命令会结束回话并保存配置文件配置。

  6. 退出交互式会话。
    netcfg> exit

示例 2-5 以交互方式创建 WLAN 配置文件

在以下示例中,创建了名为 mywifi 的 WLAN 对象。

此示例假定在添加 WLAN mywifi 之前,创建了一个名为 mywifi-key 的安全对象,其中包含由该 WLAN 的 keyname 属性指定的密钥。

添加或删除其他 WLAN 时优先级数字可以随之更改。请注意不能对不同的两个 WLAN 指定相同的优先级数字。数字越小,指示优先级越高,对应的 WLAN 就会优先选用。在此示例中,为该 WLAN 指定优先级数字 100 以确保它的优先级低于其他任何已知 WLAN。

在过程结尾使用 list 子命令时,该新 WLAN 将添加到列表底部,指示它在所有现有的已知 WLAN 中优先级最低。如果为该 WLAN 指定了优先级数字零(0,这是缺省值),它就会显示在列表顶部,指示其优先级最高。随后,所有其他现有 WLAN 的优先级相应下调,在列表中显示在新添加的 WLAN 之后。

$ netcfg
netcfg> create wlan mywifi
Created wlan 'mywifi'.  Walking properties ...
priority (0)> 100
bssids> 
keyname> mywifi-key
keyslot> 
security-mode [none|wep|wpa]> wpa
netcfg:wlan:mywifi> list
known wlan:mywifi
    priority            100
    keyname             "mywifi-key"
    security-mode       wpa
netcfg:wlan:mywifi> verify
All properties verified
netcfg:wlan:mywifi> end
Committed changes
netcfg> list
NCPs:
    DefaultFixed
    User
    Automatic
Locations:
    Automatic
    NoNet
    test-loc
    DefaultFixed
ENMs:
    test-enm
WLANs:
    sunwifi
    ibahn
    gogoinflight
    admiralsclub
    hhonors
    sjcfreewifi
    mywifi
netcfg> exit
$