子网
列举子网
功能介绍
列出租户有权访问的子网。
URI
GET /v2.0/subnets
请求消息
无
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
subnets | array | 子网对象的列表。 |
id | string | 子网ID。 |
tenant_id | string | 项目ID。 |
project_id | string | 项目ID。 |
name | string | 资源的人类可读名称。 |
enable_dhcp | boolean | 子网是否开启或关闭dhcp功能。 |
network_id | string | 子网所属的网络ID。 |
dns_nameservers | array | 子网关联的dns服务器列表。 |
allocation_pools | array | 该子网的起始IP地址和结束IP地址分配池。 |
host_routes | array | 子网的其他路由。带有目的地和下一跳参数的字典列表。 |
ip_version | integer | IP协议版本。取值为4 或 6。 |
gateway_ip | string | 子网网关IP地址。如果该值为null,则表示该子网没有关联网关。 |
cidr | string | 子网的CIDR。 |
created_at | string | 创建资源的时间(UTC ISO8601格式)。 |
description | string | 人类可读的资源描述。 |
ipv6_address_mode | string | IPv6地址分配用于指定IP地址分配的方式。取值为dhcpv6-stateful或null。 |
ipv6_ra_mode | string | IPv6路由器指定网络服务是否应该为一个子网发送ICMPv6报文。取值为dhcpv6-stateful或null。 |
revision_number | integer | 资源的修订号。 |
service_types | array | 子网关联的业务类型。 |
subnetpool_id | string | 子网关联的子网池ID。 |
updated_at | string | 更新资源的时间(UTC ISO8601格式)。 |
请求示例
GET http://{endpoint}/v2.0/subnets
正常响应示例
{
"subnets":[
{
"service_types":[
],
"description":"",
"enable_dhcp":true,
"network_id":"553f02e3-b0d0-4f9a-a818-42e0c82448ba",
"tenant_id":"5608307e73d845918339684a78503e78",
"created_at":"2021-02-19T03:54:41Z",
"dns_nameservers":[
],
"updated_at":"2021-02-19T03:54:41Z",
"gateway_ip":"192.168.1.1",
"ipv6_ra_mode":null,
"allocation_pools":[
{
"start":"192.168.1.2",
"end":"192.168.1.254"
}
],
"host_routes":[
],
"revision_number":2,
"ip_version":4,
"ipv6_address_mode":null,
"cidr":"192.168.1.0/24",
"project_id":"5608307e73d845918339684a78503e78",
"id":"0ce8208f-8c50-4a10-92e6-894edc025e2a",
"subnetpool_id":null,
"name":"my_subnet_2"
},
{
"service_types":[
],
"description":"",
"enable_dhcp":true,
"network_id":"132fbb7d-a615-48c3-aa3f-7fc82970e2fb",
"tenant_id":"fe0215103828465d925e0a4c2c81bff1",
"created_at":"2021-02-19T10:34:42Z",
"dns_nameservers":[
],
"updated_at":"2021-02-19T10:34:43Z",
"gateway_ip":"10.100.0.225",
"ipv6_ra_mode":null,
"allocation_pools":[
{
"start":"10.100.0.226",
"end":"10.100.0.238"
}
],
"host_routes":[
],
"revision_number":2,
"ip_version":4,
"ipv6_address_mode":null,
"cidr":"10.100.0.224/28",
"project_id":"fe0215103828465d925e0a4c2c81bff1",
"id":"0fd87cad-88ac-442c-af65-882a38b41c15",
"subnetpool_id":null,
"name":"my_subnet"
}
]
}
正常响应代码
200
错误码
401
创建子网
功能介绍
在网络中创建子网。
URI
POST /v2.0/subnets
请求消息
参数 | 参数类型 | 是否必选 | Description |
---|---|---|---|
subnet | object | 是 | 一个子网对象。 |
tenant_id | string | 否 | 资源所属项目的ID。只有管理员和具有advsvc角色的用户可以指定他们自己以外的项目ID。不能通过授权策略更改此值。 |
name | string | 否 | 资源的人类可读名称。默认是一个空字符串。 |
enable_dhcp | boolean | 否 | 子网是否开启或关闭dhcp功能。默认是true。 |
network_id | string | 是 | 子网所属的网络ID。 |
allocation_pools | array | 否 | 该子网的起始IP地址和结束IP地址池。如果不配置“allocation_pools”参数,将自动把CIDR中的所有IP地址分配到IP地址池,默认不包括子网网关预留地址。 |
host_routes | array | 否 | 子网的其他路由。带有目的地和下一跳参数的字典列表。默认值为空列表。 |
ip_version | integer | 是 | IP协议版本。取值为4或 6。 |
gateway_ip | string | 否 | 子网网关IP地址。如果该值为null,则表示该子网没有关联网关。如果不指定gateway_ip,则会默认从CIDR中为子网分配网关地址。 |
cidr | string | 是 | 子网的CIDR。 |
description | string | 否 | 人类可读的资源描述。默认是一个空字符串。 |
ipv6_address_mode | string | 否 | IPv6地址分配用于指定IP地址分配的方式。取值为dhcpv6-stateful或null。 |
ipv6_ra_mode | string | 否 | IPv6路由器指定网络服务是否应该为一个子网发送ICMPv6报文。取值为dhcpv6-stateful或null。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
subnet | object | 一个子网对象。 |
id | string | 子网ID。 |
tenant_id | string | 项目ID。 |
project_id | string | 项目ID。 |
name | string | 资源的人类可读名称。 |
enable_dhcp | boolean | 子网是否开启或关闭dhcp功能。 |
network_id | string | 子网所属的网络ID。 |
dns_nameservers | array | 子网关联的dns服务器列表。 |
allocation_pools | array | 该子网的起始IP地址和结束IP地址池。 |
host_routes | array | 子网的其他路由。带有目的地和下一跳参数的字典列表。 |
ip_version | integer | IP协议版本。取值为4 或 6。 |
gateway_ip | string | 子网网关IP地址。如果该值为null,则表示该子网没有关联网关。 |
cidr | string | 子网的CIDR。 |
created_at | string | 创建资源的时间(UTC ISO8601格式)。 |
description | string | 人类可读的资源描述。 |
ipv6_address_mode | string | IPv6地址分配方式用于指定IP地址的分配方式。取值为dhcpv6-stateful或null。 |
ipv6_ra_mode | string | IPv6路由器指定网络服务是否应该为一个子网发送ICMPv6报文。取值为dhcpv6-stateful或null。 |
revision_number | integer | 资源的修订号。 |
service_types | array | 子网关联的业务类型。 |
subnetpool_id | string | 子网关联的子网池ID。 |
updated_at | string | 更新资源的时间(UTC ISO8601格式)。 |
请求示例
POST http://{endpoint}/v2.0/subnets
{
"subnet": {
"network_id": "605a9cd6-678f-44ed-9adc-5ad5eeeb9806",
"ip_version": 4,
"cidr": "192.168.4.0/24"
}
}
正常响应示例
{
"subnet":{
"service_types":[
],
"description":"",
"enable_dhcp":true,
"network_id":"605a9cd6-678f-44ed-9adc-5ad5eeeb9806",
"tenant_id":"870c5414baee43a4ba7adfb253e46018",
"created_at":"2021-02-24T02:24:55Z",
"dns_nameservers":[
],
"updated_at":"2021-02-24T02:24:55Z",
"gateway_ip":"192.168.4.1",
"ipv6_ra_mode":null,
"allocation_pools":[
{
"start":"192.168.4.2",
"end":"192.168.4.254"
}
],
"host_routes":[
],
"revision_number":2,
"ip_version":4,
"ipv6_address_mode":null,
"cidr":"192.168.4.0/24",
"project_id":"43d9b6c8ee91457cb2e9bb86f701b3ef",
"id":"8adac510-3352-43c2-bdca-dd017bf092ae",
"subnetpool_id":null,
"name":"my_subnet"
}
}
正常响应代码
201
错误码
400,401,403,404,409
显示子网详情
功能介绍
显示子网的详细信息。
URI
GET /v2.0/subnets/{subnet_id}
参数 | 参数类型 | 是否必选 | Description |
---|---|---|---|
subnet_id | string | 是 |
请求消息
无
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
subnet | object | 一个子网对象。 |
id | string | 子网ID。 |
tenant_id | string | 项目ID。 |
project_id | string | 项目ID。 |
created_at | string | 创建资源的时间(UTC ISO8601格式)。 |
name | string | 资源的人类可读名称。 |
enable_dhcp | boolean | 子网是否开启或关闭dhcp功能。 |
network_id | string | 子网所属的网络ID。 |
dns_nameservers | array | 子网关联的dns服务器列表。 |
allocation_pools | array | 该子网的起始IP地址和结束IP地址池。 |
host_roues | array | 子网的其他路由。带有目的地和下一跳参数的字典列表。 |
ip_version | integer | IP协议版本。取值为4 或6。 |
gateway_ip | string | 子网网关IP地址。如果该值为null,则表示该子网没有关联网关。 |
cidr | string | 子网的CIDR。 |
updated_at | string | 更新资源的时间(UTC ISO8601格式)。 |
description | string | 人类可读的资源描述。 |
ipv6_address_mode | string | IPv6地址分配用于指定IP地址分配的方式。取值为dhcpv6-stateful或null。 |
ipv6_ra_mode | string | IPv6路由器指定网络服务是否应该为一个子网发送ICMPv6报文。取值为dhcpv6-stateful或null。 |
revision_number | integer | 资源的修订号。 |
service_types | array | 子网关联的业务类型。 |
subnetpool_id | string | 子网关联的子网池ID。 |
请求示例
GET http://{endpoint}/v2.0/subnets/008d3711-7978-439f-a340-707cb091aa85
正常响应示例
{
"subnet":{
"service_types":[
],
"description":"",
"enable_dhcp":true,
"network_id":"6c7ee1a2-25ad-4b83-98e6-f9412f679576",
"tenant_id":"870c5414baee43a4ba7adfb253e46018",
"created_at":"2021-02-24T02:34:49Z",
"dns_nameservers":[
],
"updated_at":"2021-02-24T02:34:49Z",
"gateway_ip":"192.168.1.1",
"ipv6_ra_mode":null,
"allocation_pools":[
{
"start":"192.168.1.2",
"end":"192.168.1.254"
}
],
"host_routes":[
],
"revision_number":2,
"ip_version":4,
"ipv6_address_mode":null,
"cidr":"192.168.1.0/24",
"project_id":"870c5414baee43a4ba7adfb253e46018",
"id":"008d3711-7978-439f-a340-707cb091aa85",
"subnetpool_id":null,
"name":"my_subnet"
}
}
正常响应代码
200
错误码
400,401
更新子网
功能介绍
更新一个子网。某些属性,如IP版本(ip_version)和CIDR(cidr)无法更新。尝试更新这些属性会导致“400错误请求”错误。
URI
PUT /v2.0/subnets/{subnet_id}
参数 | 参数类型 | 是否必选 | Description |
---|---|---|---|
subnet_id | string | 否 | 子网ID。 |
请求消息
参数 | 参数类型 | 是否必选 | Description |
---|---|---|---|
name | string | 否 | 资源的人类可读名称。 |
enable_dhcp | boolean | 否 | 子网是否开启或关闭dhcp功能。默认是true。 |
dns_nameservers | array | 否 | 子网关联的dns服务器列表。默认为空列表。 |
allocation_pools | array | 否 | 该子网的起始IP地址和结束IP地址池。如果不配置“allocation_pools”参数,将自动把CIDR中的所有IP地址分配到IP地址池,默认不包括子网网关预留地址。 |
host_routes | array | 否 | 子网的其他路由。带有目的地和下一跳参数的字典列表。默认值为空列表。 |
gateway_ip | string | 否 | 子网网关IP地址。如果该值为null,则表示该子网没有关联网关。如果不指定gateway_ip,则默认从CIDR中为子网分配网关地址。 |
响应消息
参数 | 参数类型 | 描述 |
---|---|---|
subnet | object | 一个子网对象。 |
id | string | 子网ID。 |
tenant_id | string | 项目ID。 |
project_id | string | 项目ID。 |
name | string | 资源的人类可读名称。 |
enable_dhcp | boolean | 子网是否开启或关闭dhcp功能。 |
network_id | string | 子网所属的网络ID。 |
dns_nameservers | array | 子网关联的dns服务器列表。 |
allocation_pools | array | 该子网的起始IP地址和结束IP地址分配池。 |
host_routes | array | 子网的其他路由。带有目的地和下一跳参数的字典列表。 |
ip_version | integer | IP协议版本。取值为4或 6。 |
gateway_ip | string | 子网网关IP地址。如果该值为null,则表示该子网没有关联网关。 |
cidr | string | 子网的CIDR。 |
created_at | string | 创建资源的时间(UTC ISO8601格式)。 |
description | string | 人类可读的资源描述。 |
ipv6_address_mode | string | IPv6地址分配用于指定IP地址分配的方式。取值为dhcpv6-stateful或null。 |
ipv6_ra_mode | string | IPv6路由器指定网络服务是否应该为一个子网发送ICMPv6报文。取值为dhcpv6-stateful或null。 |
revision_number | integer | 资源的修订号。 |
service_types | array | 子网关联的业务类型。 |
subnetpool_id | string | 子网关联的子网池ID。 |
updated_at | string | 更新资源的时间(UTC ISO8601格式)。 |
请求示例
PUT http://{endpoint}/v2.0/subnets/008d3711-7978-439f-a340-707cb091aa85
{
"subnet": {
"name": "my_subnet"
}
}
正常响应示例
{
"subnet": {
"service_types": [],
"description": "",
"enable_dhcp": true,
"network_id": "6c7ee1a2-25ad-4b83-98e6-f9412f679576",
"tenant_id": "870c5414baee43a4ba7adfb253e46018",
"created_at": "2021-02-24T02:34:49Z",
"dns_nameservers": [],
"updated_at": "2021-02-24T02:59:21Z",
"gateway_ip": "192.168.1.1",
"ipv6_ra_mode": null,
"allocation_pools": [{
"start": "192.168.1.2",
"end": "192.168.1.254"
}],
"host_routes": [],
"revision_number": 3,
"ip_version": 4,
"ipv6_address_mode": null,
"cidr": "192.168.1.0/24",
"project_id": "870c5414baee43a4ba7adfb253e46018",
"id": "008d3711-7978-439f-a340-707cb091aa85",
"subnetpool_id": null,
"name": "my_subnet"
}
}
正常响应代码
200
错误码
400,401,403,404,412
删除子网
功能介绍
删除一个子网。如果子网IP仍然处于被分配状态,则操作失败。
URI
DELETE /v2.0/subnets/{subnet_id}
参数 | 参数类型 | 是否必选 | Description |
---|---|---|---|
subnet_id | string | 否 | 子网ID。 |
请求消息
无
响应消息
无
请求示例
DELETE http://{endpoint}/v2.0/subnets/008d3711-7978-439f-a340-707cb091aa85
正常响应示例
无
正常响应代码
204
错误码
401,404,412