要在 OpenStack 中创建网络并添加多个 VLAN,可以按照以下步骤操作:
- 创建物理网络(Physical Network)和提供者(Provider):
$ openstack network provider create --network-type vlan --physical-network physnet1
其中,physnet1
是物理网络的名称。
- 创建子网和网络:
$ openstack subnet create --subnet-range <SUBNET_CIDR> --network <NETWORK_NAME> --gateway <GATEWAY_IP_ADDRESS> --allocation-pool start=<START_IP>,end=<END_IP> --dns-nameserver <DNS_SERVER_IP_ADDRESS> <SUBNET_NAME>
$ openstack network create --provider-network-type vlan --provider-physical-network physnet1 --provider-segmentation-id <VLAN_ID_1> --vlan-transparent <NETWORK_NAME>
其中,<SUBNET_CIDR>
、<GATEWAY_IP_ADDRESS>
、<START_IP>
、<END_IP>
、<DNS_SERVER_IP_ADDRESS>
分别是子网 CIDR、网关 IP 地址、IP 地址池起始地址和结束地址以及 DNS 服务器 IP 地址。 <SUBNET_NAME>
和 <NETWORK_NAME>
分别是子网名称和网络名称。 <VLAN_ID_1>
是第一个 VLAN 的 ID。
- 将其他 VLAN 添加到同一网络中:
$ openstack network segment range create <SEGMENT_RANGE_NAME_1> --network-type vlan --physical-network physnet1 \
--minimum <VLAN_ID_2> \
--maximum <VLAN_ID_N>
$ neutron net-update <NETWORK_NAME> add-segment segmentation_id=<VLAN_ID_2>
$ neutron net-update <NETWORK_NAME> add-segment segmentation_id=<VLAN_ID_N>
其中,<SEGMENT_RANGE_NAME_1>
是段范围名称,<VLAN_ID_2>
和 <VLAN_ID_N>
分别是要添加的其他 VLAN 的 ID。
- 重新启动网络服务:
$ sudo service openvswitch-switch restart
$ sudo service neutron-server restart
这些命令将会在 OpenStack 中创建一个新的网络,并添加多个 VLAN。请注意,这些命令需要以管理员身份运行。