Creating a Subnet
Function
This API is used to create a subnet.
URI
POST /v2.0/subnets
Request Message
|
Parameter |
Type |
Mandatory |
Description |
|---|---|---|---|
|
subnet |
Object |
Yes |
Specifies the subnet list. For details, see Table 2. |
|
Attribute |
Mandatory |
Type |
Description |
|---|---|---|---|
|
name |
No |
String |
Specifies the subnet name. |
|
ip_version |
No |
Integer |
Specifies the IP address version. Only IPv4 address is supported. |
|
ipv6_address_mode |
No |
String |
Specifies the IPv6 addressing mode. |
|
ipv6_ra_mode |
No |
String |
Specifies the IPv6 route broadcast mode. |
|
network_id |
Yes |
String |
Specifies the ID of the network to which the subnet belongs. |
|
cidr |
Yes |
String |
Specifies the CIDR format. Only the addresses in the 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16 network segments are supported. In addition, the subnet mask cannot be greater than 28. |
|
gateway_ip |
No |
String |
The gateway IP address cannot conflict with IP addresses configured for allocation_pools. This attribute cannot be modified. |
|
allocation_pools |
No |
Array of allocation_pool objects |
Specifies the available IP address pool. For details, see the allocation_pool objects. Example: [ { "start": "10.0.0.2", "end": "10.0.0.251"} ] The last three and the first IP addresses in each subnet are the ones reserved by the system. For example, in subnet 192.168.1.0/24, IP addresses 192.168.1.0, 192.168.1.253, 192.168.1.254, and 192.168.1.255 are reserved by the system. By default, the IP addresses reserved by the system are not in the IP address pool specified by allocation_pool. When updating an IP address pool, the allocation_pool value can contain neither gateway nor broadcast IP addresses. |
|
dns_nameservers |
No |
Array of strings |
Specifies the DNS server address. Instructions: Example: "dns_nameservers": ["8.xx.xx.8","8.xx.xx.4"] A maximum of five DNS server addresses are supported. For instructions about how to obtain a private DNS server address, see What Are the Private DNS Server Addresses Provided by the DNS Service? |
|
host_routes |
No |
Array of host_route objects |
Specifies the static VM routes. For details, see Table 4. Static routes are not supported, and entered information will be ignored. |
|
enable_dhcp |
No |
Boolean |
Specifies whether to enable the DHCP function. Value false indicates that the DHCP function is not enabled. The value can only be true. |
Response Message
|
Parameter |
Type |
Description |
|---|---|---|
|
subnet |
Object |
Specifies the subnet list. For details, see Table 6. |
|
Attribute |
Type |
Description |
|---|---|---|
|
id |
String |
Specifies the subnet ID. This parameter is not mandatory when you query subnets. |
|
name |
String |
Specifies the subnet name. |
|
ip_version |
Integer |
Specifies the IP address version. Only IPv4 address is supported. |
|
ipv6_address_mode |
String |
Specifies the IPv6 addressing mode. |
|
ipv6_ra_mode |
String |
Specifies the IPv6 route broadcast mode. |
|
network_id |
String |
Specifies the ID of the network to which the subnet belongs. |
|
cidr |
String |
Specifies the CIDR format. Only the addresses in the 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16 network segments are supported. In addition, the subnet mask cannot be greater than 28. |
|
gateway_ip |
String |
The gateway IP address cannot conflict with IP addresses configured for allocation_pools. This attribute cannot be modified. |
|
allocation_pools |
Array of allocation_pool objects |
Specifies the available IP address pool. For details, see the allocation_pool objects. Example: [ { "start": "10.0.0.2", "end": "10.0.0.251"} ] The last three and the first IP addresses in each subnet are the ones reserved by the system. For example, in subnet 192.168.1.0/24, IP addresses 192.168.1.0, 192.168.1.253, 192.168.1.254, and 192.168.1.255 are reserved by the system. By default, the IP addresses reserved by the system are not in the IP address pool specified by allocation_pool. When updating an IP address pool, the allocation_pool value can contain neither gateway nor broadcast IP addresses. |
|
dns_nameservers |
Array of strings |
Specifies the DNS server address. Example: "dns_nameservers": ["8.xx.xx.8","8.xx.xx.4"] |
|
host_routes |
Array of host_route objects |
Specifies the static VM routes. For details, see Table 8. Static routes are not supported, and entered information will be ignored. |
|
tenant_id |
String |
Specifies the project ID. |
|
enable_dhcp |
Boolean |
Specifies whether to enable the DHCP function. Value false indicates that the DHCP function is not enabled. The value can only be true. |
|
project_id |
String |
Specifies the project ID. For details about how to obtain a project ID, see Obtaining a Project ID. |
|
created_at |
String |
Specifies the time (UTC) when the subnet is created. Format: yyyy-MM-ddTHH:mm:ss |
|
updated_at |
String |
Specifies the time (UTC) when the subnet is updated. Format: yyyy-MM-ddTHH:mm:ss |
Example:
POST https://{Endpoint}/v2.0/subnets
{
"subnet": {
"name": "subnet-test",
"network_id": "0133cd73-34d4-4d4c-bf1f-e65b24603206",
"cidr": "172.16.2.0/24",
"enable_dhcp": true
}
}
Example response
{
"subnet": {
"name": "subnet-test",
"cidr": "172.16.2.0/24",
"id": "98bac90c-0ba7-4a63-8995-097da9bead1c",
"enable_dhcp": true,
"network_id": "0133cd73-34d4-4d4c-bf1f-e65b24603206",
"tenant_id": "bbfe8c41dd034a07bebd592bf03b4b0c",
"project_id": "bbfe8c41dd034a07bebd592bf03b4b0c",
"dns_nameservers": [],
"allocation_pools": [
{
"start": "172.16.2.2",
"end": "172.16.2.251"
}
],
"host_routes": [],
"ip_version": 4,
"gateway_ip": "172.16.2.1",
"created_at": "2018-09-20T02:02:16",
"updated_at": "2018-09-20T02:02:16"
}
}
Status Code
See Status Codes.
Error Code
See Error Codes.
Last Article: Querying a Subnet
Next Article: Updating a Subnet
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.