Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2023-08-04 GMT+08:00

Exemplo 3: criação de uma conexão de VPN

Cenário

Esta seção descreve como criar uma conexão de VPN chamando APIs.

Pré-requisitos

  • Você obteve um token de usuário se precisar usar a autenticação de token. Além disso, você precisa adicionar X-Auth-Token ao cabeçalho da solicitação ao chamar uma API. Para obter detalhes sobre autenticação de token, consulte Autenticação.

O token obtido pelo IAM é válido por apenas 24 horas. Ao usar um token para autenticação, armazene-o em cache para evitar chamadas frequentes.

Preparação de dados

Tabela 1 Parâmetros principais na solicitação para criar uma conexão de VPN

Parâmetro

Descrição

Exemplo de valor

vgw_id

Especifica um ID de gateway de VPN.

b32d91a4-****-****-****-e907174eb11d

vgw_ip

Especifica um ID do EIP do gateway de VPN.

0c464dad-****-****-****-c22bb0eb0bde

cgw_id

Especifica um ID de gateway de cliente.

5247ae10-****-****-****-dd36659a7f5d

peer_subnets

Especifica uma sub-rede de cliente.

192.168.44.0/24

psk

Especifica uma chave pré-compartilhada.

abcd****

Procedimento

  1. Crie uma conexão de VPN no modo de roteamento estático para um gateway de VPN associado a uma VPC.
    1. Envie POST https://{endpoint}/v5/{project_id}/vpn-connection.
    2. Adicione X-Auth-Token ao cabeçalho da solicitação.
    3. Especifique os seguintes parâmetros no corpo da solicitação:
      {
          "vpn_connection": {
              "vgw_id": "b32d91a4-****-****-****-e907174eb11d",
              "vgw_ip": "0c464dad-****-****-****-c22bb0eb0bde",
              "cgw_id": "5247ae10-****-****-****-dd36659a7f5d",
              "peer_subnets": [
                  "192.168.44.0/24"
              ],
              "psk": "abcd****"
          }
      }
    4. Verifique a resposta.
      • A solicitação será bem-sucedida se a seguinte resposta for exibida. Na resposta, id indica um ID de uma conexão de 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"
        }
  2. Consulte detalhes sobre a conexão de VPN.
    1. Envie GET https://{endpoint}/v5/{project_id}/vpn-connection/{vpn_connection_id}.
    2. Adicione X-Auth-Token ao cabeçalho da solicitação.
    3. Verifique a resposta.
      • A solicitação será bem-sucedida se a seguinte resposta for exibida. Na resposta, id indica um ID de uma conexão de 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"
        }