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 de gateway de NAT en True. Cada vez se usa 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 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 de 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 Direct Connect. Este parámetro y port_id son alternativos. |
internal_service_port |
No |
Integer |
Especifica el puerto utilizado por los ECS o BMS para proporcionar servicios para 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 servicios externos. |
protocol |
No |
String |
Especifica el tipo de protocolo. Actualmente, TCP, UDP y ANY son compatibles. El número de protocolo de TCP, UDP y ANY son 6, 17 y 0, respectivamente. |
description |
No |
String |
Proporciona información complementaria sobre la regla de la DNAT. Puede introducir hasta 255 caracteres. |
internal_service_port_range |
No |
String |
Especifica el intervalo de puertos utilizado por los ECS o BMS para proporcionar servicios para sistemas externos.
|
external_service_port_range |
No |
String |
Especifica el intervalo de puertos utilizado por la dirección IP flotante para proporcionar servicios externos.
|
Respuesta
Tabla 4 enumera los parámetros de respuesta.
Parámetro |
Tipo |
Descripción |
---|---|---|
dnat_rule |
Object |
Especifica el objeto de regla DNAT. |
Parámetro |
Tipo |
Descripción |
---|---|---|
id |
String |
Especifica el ID de 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 de 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 Direct Connect. |
internal_service_port |
Integer |
Especifica el puerto utilizado por los ECS o BMS para proporcionar servicios para 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 servicios externos. |
protocol |
String |
Specifies the protocol type. Actualmente, TCP, UDP y ANY son compatibles. El número de protocolo de TCP, UDP y ANY son 6, 17 y 0, respectivamente. |
description |
String |
Proporciona información complementaria sobre la regla de la 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 para proporcionar servicios para sistemas externos.
|
external_service_port_range |
String |
Especifica el intervalo de puertos utilizado por la dirección IP flotante para proporcionar 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