• 沒有找到結果。

4.2 DNAT 规则

4.2.4 更新 DNAT 规则

响应示例

状态码

状态码 描述

204 删除DNAT规则成功。

错误码

请参见错误码。

4.2.4 更新 DNAT 规则

功能介绍

接口约束

● 更新操作时,要求DNAT规则状态status = ACTIVE,要求网关管理员状态 admin_state_up = True。

● port_id和private_ip不能同时生效。

● 对于all port类型的规则,要求internal_service_port = 0,external_service_port

= 0,protocol = ANY。

● 更新操作涉及以下字段更新时,要求这些字段必须一起更新。包括:port_id、

private_ip、internal_service_port、external_service_port、floating_ip_id、

protocol、internal_service_port_range、external_service_port_range。

调试

您可以在API Explorer中调试该接口。

URI

PUT /v2/{project_id}/dnat_rules/{dnat_rule_id}

4-37 路径参数

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

project_id 是 String 项目的ID。

最小长度:1 最大长度:36

获取方法详见获取项目ID。

dnat_rule_id 是 String DNAT规则的ID。

长度:36

请求参数

4-38 请求 Header 参数

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

X-Auth-Token 是 String 用户Token。用户Token也就是 调用获取用户Token获取请求认 证接口的响应值,该接口是唯一 不需要认证的接口。请求响应成 功后在响应消息头中包含的“X-Subject-Token”的值即为Token 值。

最小长度:1 最大长度:10240

4-39 请求 Body 参数

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

dnat_rule 否 UpdateNatG atewayDnatR uleOption object

更新DNAT规则的请求体。

4-40 UpdateNatGatewayDnatRuleOption

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

nat_gateway_i

d 是 String NAT网关的id。

description 否 String DNAT规则的描述,长度限制为 255。

最大长度:255

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

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

protocol 否 String 协议类型,目前支持TCP/tcp、

UDP/udp、ANY/any。对应协 议号6、17、0。

最小长度:1 最大长度:3 枚举值:

● TCP

● UDP

● ANY

floating_ip_id 否 String 弹性公网IP的id。

internal_servic

e_port 否 Integer 虚拟机或者裸机对外提供服务的

协议端口号。取值范围:

0~65535。

最小值:0 最大值:65535 最小长度:1 最大长度:5

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

ce_port 否 Integer Floatingip对外提供服务的端口 号。取值范围:0~65535。

最小值:0 最大值:65535 最小长度:1 最大长度:10 internal_servic

e_port_range 否 String 虚拟机或者裸机对外提供服务的 协议端口号范围。功能说明:该 端口范围与external

_service_port_range按顺序实现 1:1映射。取值范围:

1~65535。约束:只能以’-’

字符连接端口范围。

external_servi

ce_port_range 否 String Floatingip对外提供服务的端口 号范围。功能说明:该端口范围 与internal _service_port_range 按顺序实现1:1映射。取值范 围:1~65535。约束:只能 以’-’字符连接端口范围。

响应参数

状态码: 200

4-41 响应 Body 参数

参数 参数类型 描述

dnat_rule NatGateway DnatRuleRes ponseBody object

DNAT规则的响应体。

4-42 NatGatewayDnatRuleResponseBody

参数 参数类型 描述

id String DNAT规则的ID。

长度:36 tenant_id String 项目的ID。

description String DNAT规则的描述。长度限制为255。

最大长度:255

参数 参数类型 描述

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

长度:36

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

与port_id参数二选一。

internal_servic

e_port Integer 虚拟机或者裸机对外提供服务的协议端口号。取 值范围:0~65535。

最小值:0 最大值:65535 最小长度:1 最大长度:5 nat_gateway_i

d String 公网NAT网关实例的ID。

最小长度:1 最大长度:36 floating_ip_id String 弹性公网IP的id。

最小长度:1 最大长度:36 floating_ip_ad

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

external_servi

ce_port Integer Floatingip对外提供服务的端口号。取值范围:

0~65535。

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

枚举值:

● ACTIVE

● PENDING_CREATE

● PENDING_UPDATE

● PENDING_DELETE

● EIP_FREEZED

● INACTIVE admin_state_

up Boolean 解冻/冻结状态。取值范围:

● "true": 解冻

● "false": 冻结 internal_servic

e_port_range String 虚拟机或者裸机对外提供服务的协议端口号范 围。功能说明:该端口范围与external

_service_port_range按顺序实现1:1映射。取值范 围:1~65535。约束:只能以’-’字符连接端口 范围。

参数 参数类型 描述 external_servi

ce_port_range String Floatingip对外提供服务的端口号范围。功能说 明:该端口范围与internal _service_port_range 按顺序实现1:1映射。取值范围:1~65535。约 束:只能以’-’字符连接端口范围

protocol String 协议类型,目前支持TCP/tcp、UDP/udp、ANY/

any。对应协议号6、17、0。

最小长度:1 最大长度:3 枚举值:

● tcp

● udp

● any

created_at String DNAT规则的创建时间,遵循UTC时间,格式是 yyyy-mm-ddThh:mm:ssZ。

最小长度:1 最大长度:36

请求示例

PUT https://{Endpoint}/v2/d199ba7e0ba64899b2e81518104b1526/dnat_rules/79195d50-0271-41f1-bded-4c089b2502ff

{ "dnat_rule" : {

"description" : "my dnat-rules"

}}

响应示例

状态码: 200

更新DNAT规则成功。

{ "dnat_rule" : { "status" : "ACTIVE",

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

"port_id" : "9a469561-daac-4c94-88f5-39366e5ea193", "internal_service_port" : 993,

"protocol" : "tcp",

"tenant_id" : "d199ba7e0ba64899b2e81518104b1526", "floating_ip_id" : "cf99c679-9f41-4dac-8513-9c9228e713e1", "created_at" : "2017-11-15 15:44:42.595173",

"id" : "79195d50-0271-41f1-bded-4c089b2502ff", "floating_ip_address" : "5.21.11.226",

"external_service_port" : 242, "description" : "my dnat rule"

}}

状态码

状态码 描述

200 更新DNAT规则成功。

错误码

请参见错误码。