2.4. 使用 Stateful DHCPv6 创建 IPv6 子网
在 OpenShift 上的 Red Hat OpenStack Services (RHOSO)环境中,您可以在 Red Hat OpenStack (RHOSP)项目网络中创建 IPv6 子网。
先决条件
-
管理员已为您创建一个项目,并为您提供了一个
clouds.yaml文件来访问云。 python-openstackclient软件包驻留在您的工作站上。$ dnf list installed python-openstackclient
流程
确认为您的云设置了系统
OS_CLOUD变量:$ echo $OS_CLOUD my_cloud如果需要,重置变量:
$ export OS_CLOUD=my_other_cloud作为替代方案,您可以在每次运行
openstack命令时添加--os-cloud <cloud_name> 选项指定云名称。获取您要创建 IPv6 子网的项目 ID。
保留此 ID,因为稍后需要它:
$ openstack project list输出示例
+----------------------------------+----------+ | ID | Name | +----------------------------------+----------+ | 25837c567ed5458fbb441d39862e1399 | QA | | f59f631a77264a8eb0defc898cb836af | admin | | 4e2e1951e70643b5af7ed52f3ff36539 | demo | | 8561dff8310e4cd8be4b6fd03dc8acf5 | services | +----------------------------------+----------+获取要托管 IPv6 子网的网络的名称。
保留此名称,因为稍后您将需要它:
$ openstack network list -c Name -c Subnets --max-width=72输出示例
+-------------+--------------------------------------------------------+ | Name | Subnets | +-------------+--------------------------------------------------------+ | private | 47d34cf0-0dd2-49bd-a985-67311d80c5c4, | | | 82014d36-9e60-43eb-92fc-74674573f4e8, | | | d7535565-113f-4192-baa6-da21f301f141 | | private2 | 7ee56cef-83c0-40d1-b4e7-5287dae1c23c | | public | 6745edd4-d15f-4971-89bf-70307b0ad2f1, | | | cc3f81bb-4d55-4ead-aad4-5362a7ca5b04 | | lb-mgmt-net | 5ca08724-568c-4030-93eb-f2e286570a25 | +-------------+--------------------------------------------------------+使用项目 ID 和网络名称,创建一个 IPv6 子网:
示例
$ openstack subnet create --ip-version 6 --ipv6-address-mode \ dhcpv6-stateful --project 25837c567ed5458fbb441d39862e1399 \ --network private2 --subnet-range fdf8:f53b:82e4::53/125 \ subnet_name输出示例
+-------------------+--------------------------------------------------------------+ | Field | Value | +-------------------+--------------------------------------------------------------+ | allocation_pools | {"start": "fdf8:f53b:82e4::52", "end": "fdf8:f53b:82e4::56"} | | cidr | fdf8:f53b:82e4::53/125 | | dns_nameservers | | | enable_dhcp | True | | gateway_ip | fdf8:f53b:82e4::51 | | host_routes | | | id | cdfc3398-997b-46eb-9db1-ebbd88f7de05 | | ip_version | 6 | | ipv6_address_mode | dhcpv6-stateful | | ipv6_ra_mode | | | name | | | network_id | 6aff6826-4278-4a35-b74d-b0ca0cbba340 | | tenant_id | 25837c567ed5458fbb441d39862e1399 | +-------------------+--------------------------------------------------------------+
验证
通过查看网络列表来验证此配置。
$ openstack network list -c Name -c Subnets --max-width=72输出示例
请注意,
private2的条目现在反映了新创建的 IPv6 子网:---------------------------------------------------------------------+ | Name | Subnets | ---------------------------------------------------------------------+ | private | 47d34cf0-0dd2-49bd-a985-67311d80c5c4, | | | 82014d36-9e60-43eb-92fc-74674573f4e8, | | | d7535565-113f-4192-baa6-da21f301f141 | | private2 | 7ee56cef-83c0-40d1-b4e7-5287dae1c23c, | | | cdfc3398-997b-46eb-9db1-ebbd88f7de05 | | public | 6745edd4-d15f-4971-89bf-70307b0ad2f1, | | | cc3f81bb-4d55-4ead-aad4-5362a7ca5b04 | | lb-mgmt-net | 5ca08724-568c-4030-93eb-f2e286570a25 | ---------------------------------------------------------------------+创建实例,并确认实例在添加到
private2子网时与 DHCP IPv6 地址关联:$ openstack server list -c Name -c Status -c Networks输出示例
+---------+--------+-----------------------------+ | Name | Status | Networks | +---------+--------+-----------------------------+ | server1 | ACTIVE | private2=fdf8:f53b:82e4::52 | +---------+--------+-----------------------------+