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

退出打印视图

更新时间: 2014 年 7 月
 
 

管理数据链路属性

    使用 dladm 命令定制通用数据链路属性可以提供以下优点:

  • dladm 命令是在配置网络驱动程序属性时唯一需要的命令接口。此命令取代了以前通过使用 ndd 命令并修改 driver.conf 文件来设置驱动程序属性的做法。

  • 不论设置什么属性,都请使用以下统一语法:

    dladm subcommand properties datalink

  • dladm 命令对驱动程序的公共属性和专用属性均适用。

  • 对特定驱动程序使用 dladm 命令不会中断相似类型的其他 NIC 的网络连接。因此,您可以动态地配置数据链路属性。

  • 数据链路配置值存储在 dladm 系统信息库中,在系统重新引导后仍会保留。

显示有关数据链路的常规信息

不带任何选项使用时,dladm 命令将显示有关系统的数据链路的常规信息,包括种类、状态和底层物理链路。

# dladm
LINK        CLASS     MTU     STATE     OVER
net0        phys      1500    unknown   --
net1        phys      1500    up        --
net2        phys      1500    unknown   --
net3        phys      1500    unknown   --
net4        phys      1500    up        --
aggr0       aggr      1500    up        net1,net4

数据链路可以是物理链路以外的其他种类,例如链路聚合、虚拟 LAN (virtual LAN, VLAN) 和虚拟 NIC (virtual NIC, VNIC)。这些其他数据链路也包含在 dladm 命令显示的缺省信息中。例如,在以上输出中,物理链路 net1 和 net4 上配置了链路聚合 (aggr0)。

有关链路聚合和 VLAN 的信息,请参见在 Oracle Solaris 11.2 中管理网络数据链路。有关 VNIC 的信息,请参见在 Oracle Solaris 11.2 中管理网络虚拟化和网络资源。

显示系统的数据链路

可以使用 dladm show-link 命令同时显示系统上的物理数据链路和虚拟数据链路。系统包含的数据链路与已安装的 NIC 一样多。您可以将各个选项与此命令一起使用来定制所显示的信息。

不带其他选项或参数使用时,dladm show-link 命令显示以下信息:

# dladm show-link
LINK                CLASS     MTU    STATE    OVER
net1                phys      1500   down     --
net3                phys      1500   unknown  --
net0                phys      1500   up       --
net2                phys      1500   unknown  --
net11               phys      1500   up       --
net5                phys      1500   up       --
net6                phys      1500   up       --

在以上输出中,STATE 列显示了虚拟数据链路的当前状态。此状态可能为 up、down 或 unknown。对于虚拟数据链路,当一个 NIC 拆分为多个 VNIC 时,将在内部隐式创建虚拟交换机。创建的此虚拟交换机使得 VNIC 和主数据链路只要位于相同的 VLAN 上就能够彼此通信,即使物理数据链路没有连接到外部网络也是如此。这种关系形成了数据链路的虚拟状态。

使用 –P 选项可以显示有关数据链路的持久性配置信息。基于该命令提供的信息,您可以进一步配置网络。例如,您可以确定系统上 NIC 的数量,然后可以选择要使用的数据链路,在该数据链路上,您可以配置 IP 接口。键入命令时,显示的信息类似于以下示例:

# dladm show-link -P
LINK        CLASS     OVER
net0        phys      --
net1        phys      --
net2        phys      --

以上示例显示了系统具有三个与对应的物理 NIC 直接相关联的数据链路。不存在任何特殊数据链路,如在 phys 类下的数据链路上配置的聚合或虚拟 NIC。

显示数据链路的物理属性

使用 dladm show-phys 命令可获取与物理 NIC(与系统数据链路相关联)相关的系统数据链路的信息。不带任何选项使用时,该命令将显示类似于以下示例的信息:

# dladm show-phys
LINK        MEDIA          STATE     SPEED     DUPLEX     DEVICE
net0        Ethernet       up        100Mb     full       e1000g0
net1        Ethernet       down      0Mb       --         nge0
net2        Ethernet       up        100Mb     full       bge0
net3        InfiniBand     --        0Mb       --         ibd0

除了其他详细信息,以上输出还显示了与具有通用链路名称的数据链路相关联的物理 NIC。例如,net0 是 NIC e1000g0 的数据链路名称。要显示有关已为数据链路设置的标志的信息,请使用 –P 选项。例如,标记有 r 的数据链路意味着其底层 NIC 已被移除。

在以上输出中,STATE 列显示了物理数据链路的当前状态。此状态可能为 up、down 或 unknown。物理链路状态表示物理设备是否连接到外部网络(如果插入了电缆,并且电缆另一端的端口的状态为 up,则表明已连接到外部网络)。

–L 选项是您可以使用的另一个很有用的选项。此选项显示每个数据链路的物理位置。位置确定数据链路的实例编号,例如 net0、net1 等。

# dladm show-phys -L
LINK     DEVICE     LOCATION
net0     bge0       MB
net2     ibp0       MB/RISER0/PCIE0/PORT1
net3     ibp1       MB/RISER0/PCIE0/PORT2
net4     eoib2      MB/RISER0/PCIE0/PORT1/cloud-nm2gw-2/1A-ETH-2

使用 –m 选项可显示系统中物理链路的 MAC 地址:

# dladm show-phys -m
LINK                SLOT     ADDRESS            INUSE CLIENT
net0                primary  0:11:22:a9:ee:66   yes   net0

此命令类似于使用 ifconfig 命令。

显示系统中所有链路(包括物理的和非物理的)的 MAC 地址,如下所示:

# dladm show-linkprop -p mac-address
LINK     PROPERTY        PERM VALUE        EFFECTIVE    DEFAULT   POSSIBLE
net0     mac-address     rw   0:11:22:a9:ee:66 0:11:22:a9:ee:66 0:11:22:a9:ee:66
--

删除数据链路

可以使用 dladm delete-phys 命令从系统中删除数据链路。

删除数据链路与移除物理 NIC 没有紧密联系。例如,如果从系统中移除了物理 NIC,则与该 NIC 关联的数据链路配置仍保留,因为软件层不再绑定到硬件层,如从 Oracle Solaris 10 转换至 Oracle Solaris 11.2 中的 将 Oracle Solaris 10 网络协议栈与 Oracle Solaris 11 网络协议栈进行比较中所述。因此,您仍然可以通过将该数据链路的名称指定给其他 NIC 的关联链路来在其他底层物理 NIC 中使用该数据链路配置。

如果您要分离 NIC 而不更换它,且不再需要其数据链路配置,则可以如下所示删除该数据链路:

# dladm delete-phys datalink

提示  -  要确认数据链路的 NIC 是否已移除,请使用 dladm show-phys –P 命令。此输出提供了一个 FLAGS 列,在此列中,r 标志指明与物理链路相关联的物理设备是否已移除。

重命名数据链路

可以使用 dladm rename-link 命令重命名数据链路。在 Oracle Solaris 系统上,OS 会自动向所有数据链路提供通用名称。有关通用数据链路名称的更多信息,请参见关于数据链路配置。

缺省情况下,这些通用名称使用命名格式 netn,例如 net0、net1、net2 等。由于 OS 管理着这些名称,因此您无法通过执行常规的管理任务来重命名数据链路。有关更改链路名称所需的过程,请参见如何将 IP 配置从一个网络设备移动到另一个设备。

获取数据链路的运行时统计信息

可以使用 dlstat 命令获取所有类型的数据链路的运行时数据链路统计信息。仅使用命令本身不使用其他选项时,dlstat 显示系统上所有数据链路的相关统计信息,如以下输出中所示:

% dlstat
           LINK    IPKTS   RBYTES    OPKTS   OBYTES
           net0   58.00K    9.52M    5.61K    1.91M

有关使用 dlstat 命令的更多信息,请参见在 Oracle Solaris 11.2 中管理网络虚拟化和网络资源 中的 第 8 章, 监视网络通信流量和资源使用情况。另请参见 dlstat(1M) 手册页。