• 沒有找到結果。

8.1 API v2.0

8.1.1 NAT 网关

8.1.1.5 删除 NAT 网关

}

● 响应样例

{ "nat_gateway": {

"router_id": "d84f345c-80a1-4fa2-a39c-d0d397c3f09a", "status": "ACTIVE",

"description": "new description", "admin_state_up": true,

"tenant_id": "27e25061336f4af590faeabeb7fcd9a3", "created_at": "2017-11-18 07:34:32.203044", "spec": "1",

"internal_network_id": "89d66639-aacb-4929-969d-07080b0f9fd9", "id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8",

"name": "new_name"

} }

状态码

请参考状态码。

8.1.1.5 删除 NAT 网关 功能介绍

删除NAT网关。

URI

DELETE /v2.0/nat_gateways/{nat_gateway_id}

8-16 参数说明

参数 是否

必选

参数类 型

描述

nat_gateway_id 是 String 所属NAT网关的id。

请求消息

响应消息

示例

● 请求样例

DELETE https://{Endpoint}/v2.0/nat_gateways/a78fb3eb-1654-4710-8742-3fc49d5f04f8

● 响应样例

无(STATUS CODE 204)

状态码

请参考状态码。

8.1.2 SNAT 规则

8.1.2.1 创建 SNAT 规则

功能介绍

创建SNAT规则。

说明

创建规则时,要求网关状态status = "ACTIVE",要求网关管理员状态admin_state_up = True。

URI

POST /v2.0/snat_rules

请求消息

8-17 请求参数

参数 是否

必选

参数类型 描述

snat_rule 是 Object snat_rule对象。详见表8-18。

8-18 snat_rule 字段说明

参数 是否

必选

参数类 型

描述

nat_gateway_id 是 String 所属NAT网关的id。

network_id 否 String 规则使用的网络id。与cidr参数二选一。

cidr 否 String cidr,可以是网段或者主机格式,与 network_id参数二选一。

Source_type=0时,cidr必须是vpc 子网网段 的子集(不能相等);

Source_type=1时,cidr必须指定专线侧网 段。

source_type 否 Integer 0:VPC侧,可以指定network_id 或者cidr 1:专线侧,只能指定cidr

不输入默认为0(VPC)

floating_ip_id 是 String 功能说明:弹性公网IP的id,多个弹性公网IP 使用逗号分隔。

取值范围:最大长度4096字节。

约束:弹性公网IP的id个数不能超过20个。

获取弹性公网IP的id的方法请参考查询弹性公 网IP列表。

响应消息

响应参数如表8-19所示。

8-19 响应参数

参数 参数类型 描述

snat_rule Object snat_rule对象。详见表8-20。

8-20 snat_rule 字段说明

参数 参数类型 描述

id String SNAT规则的id。

tenant_id String 项目的ID。

nat_gateway_i

d String 所属NAT网关的id。

network_id String 规则使用的网络id。

cidr String cidr,vpc子网网段的子集或专线侧网段。

source_type Integer 0:VPC侧,可以指定network_id 或者cidr 1:专线侧,只能指定cidr

不输入默认为0(VPC)

floating_ip_id String(4096) ● 功能说明:弹性公网IP的id,多个弹性公网 IP使用逗号分隔。

● 取值范围:最大长度4096字节。

floating_ip_ad

dress String(1024) ● 功能说明:弹性公网IP,多个弹性公网IP使 用逗号分隔。

● 取值范围:最大长度1024字节。

status String ● 功能说明:SNAT规则的状态。

● 取值范围:资源状态说明。

admin_state_

up Boolean ● 解冻/冻结状态。

● 取值范围:

– “true”:解冻 – “false”:冻结

created_at String SNAT规则的创建时间戳,遵循UTC时间,保留 小数点后6位,格式是yyyy-mm-dd hh:mm:ss

示例

● 请求样例

a. VPC 侧指定network_id

POST https://{Endpoint}/v2.0/snat_rules { "snat_rule": {

"nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "network_id": "eaad9cd6-2372-4be1-9535-9bd37210ae7b", "source_type":0,

"floating_ip_id": "bdc10a4c-d81a-41ec-adf7-de857f7c812a"

} }

b. VPC侧指定CIDR

"snat_rule": {

"nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "cidr": "192.168.1.10/32",

"source_type":0,

"floating_ip_id": "bdc10a4c-d81a-41ec-adf7-de857f7c812a"

} }

c. 专线侧 指定CIDR

POST https://{Endpoint}/v2.0/snat_rules { "snat_rule": {

"nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "cidr": "172.30.0.0/24",

"source_type":1,

"floating_ip_id": "bdc10a4c-d81a-41ec-adf7-de857f7c812a"

} }

● 响应样例

a. VPC 侧指定network_id的响应

{ "snat_rule": {

"floating_ip_id": "bdc10a4c-d81a-41ec-adf7-de857f7c812a", "status": "PENDING_CREATE",

"nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "admin_state_up": true,

"network_id": "eaad9cd6-2372-4be1-9535-9bd37210ae7b", "cidr": null,

"source_type":0,

"tenant_id": "27e25061336f4af590faeabeb7fcd9a3", "created_at": "2017-11-18 07:54:21.665430", "id": "5b95c675-69c2-4656-ba06-58ff72e1d338", "floating_ip_address": "5.21.11.226"

} }

b. VPC 侧指定CIDR的响应

{ "snat_rule": {

"floating_ip_id": "bdc10a4c-d81a-41ec-adf7-de857f7c812a", "status": "PENDING_CREATE",

"nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "admin_state_up": true,

"cidr": "192.168.1.10/32", "source_type":0,

"tenant_id": "27e25061336f4af590faeabeb7fcd9a3", "created_at": "2017-11-18 07:54:21.665430", "id": "5b95c675-69c2-4656-ba06-58ff72e1d338", "floating_ip_address": "5.21.11.226"

} }

c. 专线侧指定CIDR的响应

{ "snat_rule": {

"floating_ip_id": "bdc10a4c-d81a-41ec-adf7-de857f7c812a", "status": "PENDING_CREATE",

"nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "admin_state_up": true,

"cidr": "172.30.0.0/24", "source_type":1,

"tenant_id": "27e25061336f4af590faeabeb7fcd9a3", "created_at": "2017-11-18 07:54:21.665430", "id": "5b95c675-69c2-4656-ba06-58ff72e1d338", "floating_ip_address": "5.21.11.226"

} }

状态码

请参考状态码。

8.1.2.2 查询 SNAT 规则列表 功能介绍

查询SNAT规则列表。

URI

GET /v2.0/snat_rules 说明

可以在URI后面用‘?’和‘&’添加不同的查询条件组合。支持参数说明中所有非必选参数过 滤,请参考请求样例。

8-21 参数说明

参数 是否必

参数类型 描述

id 否 String SNAT规则的id。

limit 否 Integer 每页返回的个数。

tenant_id 否 String 项目的ID。

nat_gateway_i

d 否 String 所属NAT网关的id。

network_id 否 String 规则使用的网络id。

cidr 否 String cidr,vpc子网网段的子集或专线侧网 段。

source_type 否 Integer 0:VPC侧,可以指定network_id或者 cidr

1:专线侧,只能指定cidr 不输入默认为0(VPC)

floating_ip_id 否 String(4096

) 功能说明:弹性公网IP的id。

floating_ip_add

ress 否 String(1024

) 功能说明:弹性公网IP。

status 否 String ● 功能说明:SNAT规则的状态。

● 取值范围:资源状态说明。

参数 是否必 选

参数类型 描述

admin_state_u

p 否 Boolean ● 解冻/冻结状态。

● 取值范围:

– “true”:解冻 – “false”:冻结

created_at 否 String SNAT规则的创建时间戳,遵循UTC时 间,保留小数点后6位,格式是yyyy-mm-dd hh:mm:ss

请求消息

响应消息

响应参数如表8-22所示。

8-22 响应参数

参数 参数类型 描述

snat_rules List(snat_rule) snat_rule对象列表。详见表8-23。

8-23 snat_rule 字段说明

参数 参数类型 描述

id String SNAT规则的id。

tenant_id String 项目的ID。

nat_gateway_i

d String 所属NAT网关的id。

network_id String 规则使用的网络id。

cidr String cidr,vpc子网网段的子集或专线侧网段。

source_type Integer 0:VPC侧,可以指定network_id或者cidr 1:专线侧,只能指定cidr

不输入默认为0(VPC)

参数 参数类型 描述

floating_ip_id String(4096) ● 功能说明:弹性公网IP的id,多个弹性 公网IP使用逗号分隔。

● 取值范围:最大长度4096字节。

● 约束:弹性公网IP的id个数不能超过20 个

floating_ip_ad

dress String(1024) ● 功能说明:弹性公网IP,多个弹性公网 IP使用逗号分隔。

● 取值范围:最大长度1024字节。

status String ● 功能说明:SNAT规则的状态。

● 取值范围:资源状态说明。

created_at String SNAT规则的创建时间戳,遵循UTC时 间,保留小数点后6位,格式是yyyy-mm-dd hh:mm:ss

示例

● 请求样例

GET https://{Endpoint}/v2.0/snat_rules?limit=10

● 响应样例

{ "snat_rules": [ {

"floating_ip_id": "bf99c679-9f41-4dac-8513-9c9228e713e1", "status": "ACTIVE",

"nat_gateway_id": "cda3a125-2406-456c-a11f-598e10578541", "admin_state_up": true,

"network_id": "9a469561-daac-4c94-88f5-39366e5ea193", "cidr": "null",

"source_type":0, "tenant_id": "abc",

"created_at": "2017-11-15 15:44:42.595173", "id": "79195d50-0271-41f1-bded-4c089b2502ff", "floating_ip_address": "5.21.11.242"

}, {

"floating_ip_id": "6e496fba-abe9-4f5e-9406-2ad8c809ac8c", "status": "ACTIVE",

"nat_gateway_id": "e824f1b4-4290-4ebc-8322-cfff370dbd1e", "admin_state_up": true,

"network_id": "97e89905-f9c8-4ae3-9856-392b0b2fbe7f", "cidr": "null",

"source_type":0, "tenant_id": "abc",

"created_at": "2017-11-17 07:43:44.830845",

} ] }

状态码

请参考状态码。

8.1.2.3 查询指定的 SNAT 规则详情

功能介绍

查询指定的SNAT规则详情。

URI

GET /v2.0/snat_rules/{snat_rule_id}

8-24 参数说明

参数 是否必选 参数类型 描述

snat_rule_id 是 String 所属SNAT规则的id。

请求消息

响应消息

响应参数如表8-25所示。

8-25 响应参数

参数 参数类型 描述

snat_rule Object snat_rule对象。详见表8-26。

8-26 snat_rule 字段说明

参数 参数类型 描述

id String SNAT规则的id。

tenant_id String 项目的ID。

nat_gateway_i

d String 所属NAT网关的id。

network_id String 规则使用的网络id。

参数 参数类型 描述

cidr String cidr,vpc子网网段的子集或专线侧网段。

source_type Integer 0:VPC侧,可以指定network_id或者cidr 1:专线侧,只能指定cidr

不输入默认为0(VPC)

floating_ip_id String(4096) ● 功能说明:弹性公网IP的id,多个弹性 公网IP使用逗号分隔。

● 取值范围:最大长度4096字节。

● 约束:弹性公网IP的id个数不能超过20 个

floating_ip_ad

dress String(1024) ● 功能说明:弹性公网IP,多个弹性公网 IP使用逗号分隔。

● 取值范围:最大长度1024字节。

status String ● 功能说明:SNAT规则的状态

● 取值范围:资源状态说明。

admin_state_u

p Boolean ● 解冻/冻结状态。

● 取值范围:

– “true”:解冻 – “false”:冻结

created_at String SNAT规则的创建时间戳,遵循UTC时 间,保留小数点后6位,格式是yyyy-mm-dd hh:mm:ss

示例

● 请求样例

GET https://{Endpoint}/v2.0/snat_rules/5b95c675-69c2-4656-ba06-58ff72e1d338

● 响应样例

{ "snat_rule": {

"floating_ip_id": "bdc10a4c-d81a-41ec-adf7-de857f7c812a", "status": "ACTIVE",

"nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "admin_state_up": true,

"network_id": "eaad9cd6-2372-4be1-9535-9bd37210ae7b", "cidr": "null",

"source_type":0,

"tenant_id": "27e25061336f4af590faeabeb7fcd9a3", "created_at": "2017-11-18 07:54:21.665430", "id": "5b95c675-69c2-4656-ba06-58ff72e1d338", "floating_ip_address": "5.21.11.226"

} }

状态码

请参考状态码。

8.1.2.4 删除 SNAT 规则

功能介绍

删除SNAT规则。

URI

DELETE /v2.0/snat_rules/{snat_rule_id}

8-27 参数说明

参数 是否必选 参数类型 描述

snat_rule_id 是 String 所属SNAT规则的id。

请求消息

响应消息

示例

● 请求样例

DELETE https://{Endpoint}/v2.0/snat_rules/a78fb3eb-1654-4710-8742-3fc49d5f04f8

● 响应样例

无(STATUS CODE 204)

状态码

请参考状态码。

8.1.3 DNAT 规则

8.1.3.1 创建 DNAT 规则 功能介绍

创建DNAT规则

说明

创建规则时,要求网关状态status = "ACTIVE",要求网关管理员状态admin_state_up = True。

port_id和private_ip不能同时生效。对于all port类型的规则,要求internal_service_port = 0,

external_service_port = 0,protocol = ANY.

URI

POST /v2.0/dnat_rules

请求消息

请求参数如表8-28所示。

8-28 请求参数

参数 是否必

参数类型 描述

dnat_rule 是 Object dnat_rule对象。详见表8-29。

8-29 dnat_rule 字段说明

参数 是否必

选 参数类型 描述

nat_gateway_i

d 是 String 所属NAT网关的id。

port_id 否 String 虚拟机或者裸机的Port ID,与private_ip 参数二选一。

获取虚拟机Port ID的方法请参考查询云 服务器网卡信息,获取裸机Port ID的方 法请参考查询裸金属服务器IP地址。

private_ip 否 String 用户私有IP地址,例如专线连接的私有 云地址,与port_id参数二选一。

internal_servic

e_port 是 Integer 虚拟机或者裸机对外提供服务的协议端 口号。

取值范围:0~65535。

floating_ip_id 是 String 弹性公网IP的id。获取弹性公网IP的id的 方法请参考查询弹性公网IP列表。

external_servic

e_port 是 Integer Floatingip对外提供服务的端口号。

取值范围:0~65535。

protocol 是 String 协议类型,目前支持TCP/UDP/ANY 对应协议号6/17/0

参数 是否必 选

参数类型 描述

internal_servic

e_port_range 否 String 虚拟机或者裸机对外提供服务的协议端 口号范围。

● 功能说明:该端口范围与external _service_port_range按顺序实现1:1映 射。

● 取值范围:1~65535。

● 约束:只能以’-’字符连接端口范 围。

external_servic

e_port_range 否 String Floatingip对外提供服务的端口号范围。

● 功能说明:该端口范围与internal _service_port_range按顺序实现1:1映 射。

● 取值范围:1~65535。

● 约束:只能以’-’字符连接端口范 围。

响应消息

响应参数如表8-30所示。

8-30 响应参数

参数 参数类型 描述

dnat_rule Object dnat_rule对象。详见表8-31。

8-31 dnat_rule 字段说明

参数 参数类型 描述

id String DNAT规则的id。

tenant_id String 项目的ID。

nat_gateway_id String 所属NAT网关的id。

port_id String 虚拟机或者裸机的Port ID,在VPC场景 时使用此参数,与private_ip参数二选 一。

private_ip String 用户私有IP地址,例如专线连接的私有 云地址,

在专线场景时使用此参数,与port_id 参数二选一。

参数 参数类型 描述 internal_service_p

ort Integer 虚拟机或者裸机对外提供服务的协议端

口号。

floating_ip_id String 弹性公网IP的id。

floating_ip_addre

ss String 弹性公网IP的IP地址。

external_service_

port Integer Floatingip对外提供服务的端口号。

protocol String 协议类型,目前支持TCP/UDP/ANY 对应协议号6/17/0

status String ● 功能说明:DNAT规则的状态。

● 取值范围:资源状态说明。

admin_state_up Boolean ● 解冻/冻结状态。

● 取值范围:

– “true”:解冻 – “false”:冻结

created_at String DNAT规则的创建时间戳,遵循UTC时 间,保留小数点后6位,格式是yyyy-mm-dd hh:mm:ss

internal_service_p

ort_range String 虚拟机或者裸机对外提供服务的协议端

口号范围。

● 功能说明:该端口范围与external _service_port_range按顺序实现1:1 映射。

● 取值范围:1~65535。

● 约束:只能以’-’字符连接端口范 围。

external_service_

port_range String Floatingip对外提供服务的端口号范 围。

● 功能说明:该端口范围与internal _service_port_range按顺序实现1:1 映射。

● 取值范围:1~65535。

● 约束:只能以’-’字符连接端口范 围。

示例

● 请求样例

a. 创建指定端口的规则

POST https://{Endpoint}/v2.0/dnat_rules { "dnat_rule": {

"floating_ip_id": "bf99c679-9f41-4dac-8513-9c9228e713e1", "nat_gateway_id": "cda3a125-2406-456c-a11f-598e10578541", "port_id": "9a469561-daac-4c94-88f5-39366e5ea193", "internal_service_port": 993,

POST https://{Endpoint}/v2.0/dnat_rules { "dnat_rule": {

"floating_ip_id": "Cf99c679-9f41-4dac-8513-9c9228e713e1", "nat_gateway_id": "Dda3a125-2406-456c-a11f-598e10578541",

"floating_ip_id": "Cf99c679-9f41-4dac-8513-9c9228e713e1", "nat_gateway_id": "Dda3a125-2406-456c-a11f-598e10578541",