Actualización de una regla de DNAT
Función
Esta API se utiliza para actualizar una regla de DNAT.

Puede actualizar la regla sólo cuando status de la regla de DNAT se establece en ACTIVE y admin_state_up del administrador del gateway de NAT en True. Cada vez se utiliza port_id o private_ip. Si crea una regla que se aplica a todos los tipos de puertos, establezca internal_service_port en 0, external_service_port en 0, y protocol en ANY.
Los campos, incluidos port_id, private_ip, internal_service_port, external_service_port, floating_ip_id, protocol, internal_service_port_range, y external_service_port_range deben actualizarse juntos.
URI
PUT /v2/{project_id}/dnat_rules/{dnat_rule_id}
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
project_id |
Sí |
String |
Especifica el ID del proyecto. |
dnat_rule_id |
Sí |
String |
Especifica el ID de la regla de DNAT. |
Solicitud
Tabla 3 describe los parámetros de solicitud.
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
dnat_rule |
Sí |
Object |
Especifica el objeto de la regla de DNAT. Para obtener más información, véase Tabla 3. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
nat_gateway_id |
Sí |
String |
Especifica el ID del gateway de NAT. |
port_id |
No |
String |
Especifica el ID del puerto de un ECS o de un BMS. Este parámetro y private_ip son alternativos. |
private_ip |
No |
String |
Especifica la dirección IP privada de un usuario, por ejemplo, la dirección IP de una VPC para la conexión de Direct Connect. Este parámetro y port_id son alternativos. |
internal_service_port |
No |
Integer |
Especifica el puerto utilizado por los ECS o BMS a proporcionar servicios para los sistemas externos. |
floating_ip_id |
No |
String |
Especifica el ID de la EIP. Para obtener más información sobre cómo obtener el ID de EIP, consulte Consulta de EIP. |
external_service_port |
No |
Integer |
Especifica el puerto para proporcionar los servicios externos. |
protocol |
No |
String |
Especifica el tipo de protocolo. Se admiten TCP, UDP y ANY. El número de protocolo de TCP, UDP y ANY son 6, 17 y 0, respectivamente. |
description |
No |
String |
Proporciona la información complementaria sobre la regla de DNAT. Puede introducir hasta 255 caracteres. |
internal_service_port_range |
No |
String |
Especifica el intervalo de puertos utilizado por los ECS o BMS a proporcionar servicios para los sistemas externos.
|
external_service_port_range |
No |
String |
Especifica el intervalo de puertos utilizado por la dirección IP flotante a proporcionar los servicios externos.
|
Respuesta
Tabla 4 enumera los parámetros de respuesta.
Parámetro |
Tipo |
Descripción |
---|---|---|
dnat_rule |
Object |
Especifica el objeto de la regla de DNAT. |
Parámetro |
Tipo |
Descripción |
---|---|---|
id |
String |
Especifica el ID de la regla de DNAT. |
tenant_id |
String |
Especifica el ID del proyecto. |
nat_gateway_id |
String |
Especifica el ID del gateway de NAT. |
port_id |
String |
Especifica el ID del puerto de un ECS o de un BMS. |
private_ip |
String |
Especifica la dirección IP privada de un usuario, por ejemplo, la dirección IP de una VPC para la conexión de Direct Connect. |
internal_service_port |
Integer |
Especifica el puerto utilizado por los ECS o BMS a proporcionar servicios para los sistemas externos. |
floating_ip_id |
String |
Especifica el ID de la EIP. |
floating_ip_address |
String |
Especifica la EIP. |
external_service_port |
Integer |
Especifica el puerto para proporcionar los servicios externos. |
protocol |
String |
Especifica el tipo de protocolo. Se admiten TCP, UDP y ANY. El número de protocolo de TCP, UDP y ANY son 6, 17 y 0, respectivamente. |
description |
String |
Proporciona la información complementaria sobre la regla de DNAT. Puede introducir hasta 255 caracteres. |
status |
String |
|
admin_state_up |
Boolean |
|
created_at |
String |
|
internal_service_port_range |
String |
Especifica el intervalo de puertos utilizado por los ECS o BMS a proporcionar servicios para los sistemas externos.
|
external_service_port_range |
String |
Especifica el intervalo de puertos utilizado por la dirección IP flotante a proporcionar los servicios externos.
|
Ejemplos
- Ejemplo de la solicitud
- Actualizar una regla para aplicarla a un puerto específico.
PUT https://{Endpoint}/v2/d199ba7e0ba64899b2e81518104b1526/dnat_rules/79195d50-0271-41f1-bded-4c089b2502ff { "dnat_rule": { "nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "floating_ip_id": "cf99c679-9f41-4dac-8513-9c9228e713e1", "port_id": "9a469561-daac-4c94-88f5-39366e5ea193", "internal_service_port": 993, "protocol": "tcp", "external_service_port": 242, "description": "my dnat rule 01" } }
- Actualizar una regla para aplicarla a todos los puertos.
PUT https://{Endpoint}/v2/d199ba7e0ba64899b2e81518104b1526/dnat_rules/79195d50-0271-41f1-bded-4c089b2502ff { "dnat_rule": { "nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "floating_ip_id": "bf99c679-9f41-4dac-8513-9c9228e713e1", "private_ip": "192.168.1.100", "internal_service_port": 0, "protocol": "any", "external_service_port": 0, "description": "my dnat rule 01" } }
- Actualizar el rango de puertos de una regla.
PUT https://{Endpoint}/v2/d199ba7e0ba64899b2e81518104b1526/dnat_rules/79195d50-0271-41f1-bded-4c089b2502ff { "dnat_rule": { "nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "floating_ip_id": "bf99c679-9f41-4dac-8513-9c9228e713e1", "private_ip": "192.168.1.100", "internal_service_port": 0, "protocol": "tcp", "external_service_port": 0, "description": "my dnat rule 01" , "external_service_port_range":"100-200", "internal_service_port_range":"100-200" } }
- Actualizar la descripción de una regla.
PUT https://{Endpoint}/v2/d199ba7e0ba64899b2e81518104b1526/dnat_rules/79195d50-0271-41f1-bded-4c089b2502ff { "dnat_rule": { "nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "description": "my dnat rule 01" } }
- Actualizar una regla para aplicarla a un puerto específico.
- Ejemplo de la respuesta
- Respuesta a la actualización de una regla que se aplica a un puerto específico
{ "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": "abc", "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 01" } }
- Respuesta a la actualización de una regla que se aplica a todos los puertos
{ "dnat_rule": { "status": "ACTIVE", "nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "admin_state_up": true, "private_ip": "192.168.1.100", "internal_service_port": 0, "protocol": "any", "tenant_id": "abc", "floating_ip_id": "bf99c679-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.227", "external_service_port": 0, "description": "my dnat rule 01" } }
- Respuesta para actualizar el rango de puertos de una regla
{ "dnat_rule": { "status": "ACTIVE", "nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "admin_state_up": true, "private_ip": "192.168.1.100", "internal_service_port": 0, "protocol": "tcp", "tenant_id": "abc", "floating_ip_id": "bf99c679-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.227", "external_service_port": 0, "description": "my dnat rule 01", "internal_service_port_range": "100-200", "external_service_port_range": "100-200" } }
- Respuesta para actualizar la descripción de una regla
{ "dnat_rule": { "status": "ACTIVE", "nat_gateway_id": "a78fb3eb-1654-4710-8742-3fc49d5f04f8", "admin_state_up": true, "port_id": "9a469561-daac-4c94-88f5-39366e5ea193", "private_ip": "", "internal_service_port": 993, "protocol": "tcp", "tenant_id": "abc", "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 01" } }
- Respuesta a la actualización de una regla que se aplica a un puerto específico