系统管理指南:Oracle Solaris Containers-资源管理和 Oracle Solaris Zones

共享 IP 非全局区域中的联网

在安装了区域的 Solaris 系统上,区域可通过网络相互通信。所有区域都有单独的绑定或连接,并且所有区域都可运行自己的服务器守护进程。这些守护进程可以侦听相同的端口号而不会引起冲突。IP 栈通过分析传入连接的 IP 地址来解决冲突。IP 地址标识区域。

共享 IP 区域分区

在支持区域的系统中,IP 栈对区域之间的网络通信流量执行隔离。接收 IP 通信流量的应用程序只能接收发送到同一区域的通信流量。

系统上的每个逻辑接口都属于特定的区域,缺省情况下属于全局区域。借助 zonecfg 实用程序指定给区域的逻辑网络接口用于在网络上进行通信。每个流和连接都属于打开它的进程所在的区域。

上层流和逻辑接口之间的绑定会受到限制。流只能与同一区域中的逻辑接口建立绑定。同样,来自逻辑接口的包只能传递到此逻辑接口所在区域中的上层流。

每个区域都有自己的一组绑定。每个区域都可以运行侦听同一端口号的相同应用程序,而且绑定不会失败,因为地址已处于使用状态。每个区域都可以运行自己版本的以下服务:

除全局区域之外的区域拥有受限的网络访问权限。标准 TCP 和 UDP 套接字接口均可用,但是 SOCK_RAW 套接字接口被限制为网际控制报文协议 (Internet Control Message Protocol, ICMP)。ICMP 是检测和报告网络错误状态或使用 ping 命令时所必需的。

共享 IP 网络接口

每个需要网络连接的非全局区域都有一个或多个专用 IP 地址。这些地址与可以使用 ifconfig 命令放入区域中的逻辑网络接口关联。引导区域时,将在其中自动设置并放置通过 zonecfg 配置的区域网络接口。运行区域时,可使用 ifconfig 命令添加或删除逻辑接口。只有全局管理员才能修改接口配置和网络路由。

在非全局区域内,只有此区域的接口才能通过 ifconfig 进行查看。

有关更多信息,请参见 ifconfig(1M)if_tcp(7P) 手册页。

同一计算机上共享 IP 区域之间的 IP 通信

在同一计算机上的两个区域之间,仅当转发表中的目标和区域具有“匹配的路由”时,才允许传送包。

匹配信息按如下方式执行:

共享 IP 区域中的 Solaris IP 过滤器

Solaris IP 过滤器可提供有状态包过滤和网络地址转换 (network address translation, NAT) 功能。有状态包过滤器可以监视活动连接的状态,并使用获得的信息确定允许哪些网络包通过防火墙。Solaris IP 过滤器还包括无状态包过滤以及创建和管理地址池的功能。有关其他信息,请参见《系统管理指南:IP 服务》中的第 25  章 “Oracle Solaris : IP 过滤器(概述)”

在非全局区域中,可以通过打开回送过滤来启用 Solaris IP 过滤器,如《系统管理指南:IP 服务》中的第 26  章 “yaraOracle Solaris : IP 过滤器(任务)”所述。

Solaris IP 过滤器是从开放源代码的 IP 过滤器软件衍生而来的。

共享 IP 区域中的 IP 网络多路径

IP 网络多路径 (IP network multipathing, IPMP) 为在同一 IP 链路上具有多个接口的系统提供物理接口故障检测和透明网络访问故障转移功能。IPMP 还为具有多个接口的系统提供了包负荷分配。

所有网络配置均在全局区域中完成。可以在全局区域中配置 IPMP,然后将功能扩展到非全局区域。当配置非全局区域时,将此区域的地址放入 IPMP 组中即可实现功能扩展。此后,如果全局区域中有一个接口出现故障,则非全局区域地址将迁移到其他网络接口卡。共享 IP 区域可拥有多个 IP 地址,它可以是多个 IPMP 组的组成部分,而且多个共享的 IP 区域可使用指定的同一 IPMP 组。

在给定的非全局区域中,只有与此区域关联的接口才能通过 ifconfig 命令进行查看。

请参见如何将 IP 网络多路径功能扩展到共享 IP 非全局区域。区域配置过程在如何配置区域中介绍。有关 IPMP 功能、组件和用法的信息,请参见《系统管理指南:IP 服务》中的第 30  章 “IPMP 介绍(概述)”