Ejemplo 3: Creación de una conexión VPN
Escenario
Esta sección describe cómo crear una conexión VPN invocando a las API.
Prerrequisitos
- Ha creado un gateway de VPN. Para obtener más información, véase Creación de un gateway de VPN.
- Ha creado un gateway de cliente. Para obtener más información, véase Creación de un gateway de cliente.
- Ha obtenido un token de usuario si necesita usar la autenticación de token. Además, debe agregar X-Auth-Token al encabezado de solicitud cuando invoque a una API. Para obtener más información sobre la autenticación de tokens, consulte la Autenticación.
El token obtenido a través de IAM es válido por solo 24 horas. Cuando utilice un token para la autenticación, guarde en caché para evitar invocaciones frecuentes.
Preparación de datos
Parámetro |
Descripción |
Valor de ejemplo |
---|---|---|
vgw_id |
Especifica un ID de gateway de VPN. |
b32d91a4-****-****-****-e907174eb11d |
vgw_ip |
Especifica un ID de EIP del gateway de VPN. |
0c464dad-****-****-****-c22bb0eb0bde |
cgw_id |
Especifica un ID de gateway de cliente. |
5247ae10-****-****-****-dd36659a7f5d |
peer_subnets |
Especifica una subred de cliente. |
192.168.44.0/24 |
psk |
Especifica una clave previamente compartida. |
abcd**** |
Procedimiento
- Cree una conexión VPN en modo de enrutamiento estático para un gateway de VPN asociado a una VPC.
- Envía POST https://{punto de conexión}/v5/{project_id}/vpn-connection.
- Agregue X-Auth-Token al encabezado de solicitud.
- Especifique los siguientes parámetros en el cuerpo de la solicitud:
{ "vpn_connection": { "vgw_id": "b32d91a4-****-****-****-e907174eb11d", "vgw_ip": "0c464dad-****-****-****-c22bb0eb0bde", "cgw_id": "5247ae10-****-****-****-dd36659a7f5d", "peer_subnets": [ "192.168.44.0/24" ], "psk": "abcd****" } }
- Compruebe la respuesta.
- La solicitud se realiza correctamente si se muestra la siguiente respuesta. En la respuesta, id indica un ID de conexión VPN.
{ "vpn_connection": { "id": "98c5af8a-****-****-****-ae2280a6f4c3", "name": "vpn-1655", "vgw_id": "b32d91a4-****-****-****-e907174eb11d", "vgw_ip": "0c464dad-****-****-****-c22bb0eb0bde", "style": "STATIC", "cgw_id": "5247ae10-****-****-****-dd36659a7f5d", "peer_subnets": ["192.168.44.0/24"], "tunnel_local_address": "169.254.56.225/30", "tunnel_peer_address": "169.254.56.226/30", "enable_nqa": false, "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group14", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.134", "peer_id_type": "ip", "peer_id": "88.***.***.164", "dpd": { "timeout": 15, "interval": 30, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group14", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2022-11-26T13:41:34.626Z", "updated_at": "2022-11-26T13:41:34.626Z", "enterprise_project_id": "0", }, "request_id": "f74da97d-aa27-4f62-a87c-a33b5706964b" }
- La solicitud se realiza correctamente si se muestra la siguiente respuesta. En la respuesta, id indica un ID de conexión VPN.
- Consultar detalles sobre la conexión VPN.
- Envía GET https://{punto de conexión}/v5/{project_id}/vpn-connection/{vpn_connection_id}.
- Agregue X-Auth-Token al encabezado de solicitud.
- Compruebe la respuesta.
- La solicitud se realiza correctamente si se muestra la siguiente respuesta. En la respuesta, id indica un ID de conexión VPN.
{ "vpn_connection": { "id": "98c5af8a-****-****-****-ae2280a6f4c3", "name": "vpn-1655", "status": "DOWN", "vgw_id": "b32d91a4-****-****-****-e907174eb11d", "vgw_ip": "0c464dad-****-****-****-c22bb0eb0bde", "style": "STATIC", "cgw_id": "5247ae10-****-****-****-dd36659a7f5d", "peer_subnets": ["192.168.44.0/24"], "tunnel_local_address": "169.254.56.225/30", "tunnel_peer_address": "169.254.56.226/30", "enable_nqa": false, "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group14", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.134", "peer_id_type": "ip", "peer_id": "88.***.***.164", "dpd": { "timeout": 15, "interval": 30, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group14", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2022-11-26T13:41:34.626Z", "updated_at": "2022-11-26T13:41:34.626Z", "enterprise_project_id": "0", }, "request_id": "104c5608-b68b-462c-af17-ead2fb5ccee4" }
- La solicitud se realiza correctamente si se muestra la siguiente respuesta. En la respuesta, id indica un ID de conexión VPN.