跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 管理:网络接口和网络虚拟化 Oracle Solaris 11 Information Library (简体中文) |
本节包含用于配置 Oracle Solaris 中网络虚拟化的生成块的任务。基本组件包括以下各项:
虚拟网络接口卡 (VNIC)
Etherstub
VNIC 是在数据链路上创建的伪接口。VNIC 有自动生成的 MAC 地址。根据使用的网络接口,您可以为 VNIC 显式指定不同于缺省地址的 MAC 地址,如 dladm(1M) 手册页中所述。您可以根据需要在数据链路上创建任意数量的 VNIC。
Etherstub 是由系统管理员管理的伪以太网 NIC。您可以在 etherstub 上(而不是在物理链路上)创建 VNIC。Etherstub 上的 VNIC 独立于系统中的物理 NIC。使用 etherstub,您可以构建同时与系统中的其他虚拟网络和外部网络隔离的专用虚拟网络。例如,您要创建一个仅供公司开发人员(而不是整个网络)访问的网络环境。Etherstub 可用于创建这样的环境。
Etherstub 和 VNIC 仅是 Oracle Solaris 的虚拟化功能的一部分。您通常将这些组件与 Oracle Solaris 容器或区域结合使用。通过指定 VNIC 或 etherstub 供区域使用,您可以在单个系统内创建一个网络。
此过程说明如何创建虚拟网络接口卡 (VNIC)。
有关更多信息,请参见《Oracle Solaris 管理:安全服务》中的"如何获取管理权限"。
# dladm show-phys
此命令显示系统上的物理 NIC 及其相应的数据链路名称。除非您为数据链路创建定制名称,否则数据链路的名称与网络接口设备的名称相同。例如,设备 e1000g0 使用数据链路名称 e1000g0,直到您将链路名称替换为另一个名称。有关定制数据链路名称的更多信息,请参见网络设备和数据链路名称。
# dladm show-link
此命令将列出数据链路及其当前状态。确保数据链路的 STATE 字段指示数据链路为 up(活动)。您只能在其状态为 up(活动)的数据链路上配置 VNIC。
# ipadm show-addr
此命令列出您的系统上配置的接口,包括其对应的 IP 地址。
# dladm create-vnic -l link vnic
link 是在其上配置 VNIC 的数据链路的名称。
vnic 是您也可以使用定制名称作为标签的 VNIC。
# ipadm create-ip vnic
如果您指定一个静态 IP 地址,请使用以下语法:
# ipadm create-addr -T static -a address addrobj
其中 addrobj 使用命名格式 interface/user-defined-string,例如 e1000g0/v4globalz。有关使用此命令时的其他选项,请参阅ipadm(1M) 手册页。
# ipadm show-addr
# dladm show-vnic
示例 19-1 创建虚拟网络接口
本示例包含用于创建 VNIC 的命令。您必须以超级用户或等效角色登录到系统,才能运行这些命令。
# dladm show-phys LINK MEDIA STATE SPEED DUPLEX DEVICE net0 Ethernet up 1000 full e1000g0 net1 Ethernet unknown 0 half e1000g1 # dladm show-link LINK CLASS MTU STATE BRIDGE OVER net0 phys 1500 up -- -- net1 phys 1500 unknown -- -- # ipadm show-if IFNAME CLASS STATE ACTIVE OVER lo0 loopback ok yes -- net0 ip ok yes -- # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/? static ok 127.0.0.1/8 net0/v4addr static ok 192.168.3.70/24 # dladm create-vnic -l net0 vnic0 # dladm create-vnic -l net0 vnic1 # dladm show-vnic LINK OVER SPEED MACADDRESS MACADDRTYPE vnic0 net0 1000 Mbps 2:8:20:c2:39:38 random vnic1 net0 1000 Mbps 2:8:20:5f:84:ff random # # ipadm create-ip vnic0 # ipadm create-ip vnic1 # ipadm create-addr -T static -a 192.168.3.80/24 vnic0/v4address # ipadm create-addr -T static -a 192.168.3.85/24 vnic1/v4address # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/? static ok 127.0.0.1/8 net0/v4addr static ok 192.168.3.70/24 vnic0/v4address static ok 192.168.3.80/24 vnic1/v4address static ok 192.168.3.85/24
该系统的 /etc/hosts 文件将包含类似于以下内容的信息:
# cat /etc/hosts # ::1 localhost 127.0.0.1 localhost 192.168.3.70 loghost #For e1000g0 192.168.3.80 vnic1 192.168.3.85 vnic2
您使用 etherstub 将虚拟网络与虚拟网络的其余部分以及系统连接到的外部网络隔离开来。您不能单独使用 etherstub。相反,应将 etherstub 与 VNIC 结合使用来创建专有或隔离的虚拟网络。您可以根据需要创建任意数量的 etherstub。您还可以根据需要在每个 etherstub 上创建任意数量的 VNIC。
有关更多信息,请参见《Oracle Solaris 管理:安全服务》中的"如何获取管理权限"。
# dladm create-etherstub etherstub
# dladm create-vnic -l etherstub vnic
注 - 要隔离您在 etherstub 上为其配置 VNIC 的网络,确保使用不能由外部网络的缺省路由器转发的专用 IP 地址。例如,假定物理接口有一个地址 192.168.3.0/24,它指示系统在 192.168.3.x 网络上。因此,您指定缺省路由器所不知道的另一个地址,例如 192.168.0.x。
# dladm show-vnic
此命令列出系统中的所有 VNIC 和在其上创建 VNIC 的数据链路或 etherstub。
# dladm show-link
示例 19-2 创建 Etherstub
以下示例说明如何创建 etherstub,然后在该 etherstub 上配置 VNIC。本示例在前面示例的基础上添加了在 etherstub 上配置的第三个 VNIC。
您必须以超级用户或等效角色登录到系统,才能运行接下来的命令。
# dladm create-etherstub stub0 # dladm show-vnic LINK OVER SPEED MACADDRESS MACADDRTYPE vnic1 net9 1000 Mbps 2:8:20:c2:39:38 random vnic2 net0 1000 Mbps 2:8:20:5f:84:ff random # # dladm create-vnic -l stub0 vnic3 # ipadm create-vnic vnic3 # ipadm create-addr -T static -a 192.168.0.10/24 vnic3/privaddr # # dladm show-vnic LINK OVER SPEED MACADDRESS MACADDRTYPE vnic1 net0 1000 Mbps 2:8:20:c2:39:38 random vnic2 net0 1000 Mbps 2:8:20:5f:84:ff random vnic3 stub0 1000 Mbps 2:8:20:54:f4:74 random # # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/? static ok 127.0.0.1/8 net0/v4addr static ok 192.168.3.70/24 vnic1/v4address static ok 192.168.3.80/24 vnic2/v4address static ok 192.168.3.85/24 vnic3/privaddr static ok 192.168.0.10/24
该系统的 /etc/hosts 文件将包含类似于以下内容的信息:
# cat /etc/hosts # ::1 localhost 127.0.0.1 localhost 192.168.3.70 loghost #For e1000g0 192.168.3.80 vnic1 192.168.3.85 vnic2 192.168.0.10 vnic3