Creación de un gateway de VPN
Función
Esta API se utiliza para crear un gateway de VPN. Actualmente, solo se pueden crear los gateway de VPN de pago por uso.
URI
Parámetro |
Tipo |
Obligatorio |
Descripción |
---|---|---|---|
project_id |
String |
Sí |
Especifica un ID de proyecto. Puede obtener el ID del proyecto haciendo referencia a Obtención del ID del proyecto. |
Solicitud
- Parámetros de solicitud
Tabla 2 Parámetros de solicitud Parámetro
Tipo
Obligatorio
Descripción
vpn_gateway
Sí
Especifica el objeto de gateway de VPN.
Tabla 3 CreateVgwRequestBodyContent Parámetro
Tipo
Obligatorio
Descripción
name
String
No
- Especifica el nombre de un gateway de VPN.
- El valor es una cadena de 1 a 64 caracteres, que puede contener dígitos, letras, guiones bajos (_), y guiones (-).
- Si no se especifica este parámetro, se genera automáticamente un nombre con el formato vpngw-****, por ejemplo, vpngw-a45b.
network_type
String
No
- Especifica el tipo de red del gateway de VPN. Un gateway de VPN público (public) utiliza las EIP para conectarse a un gateway de cliente. Un gateway de VPN privado (private) utiliza direcciones IP privados en una VPC para conectarse a un gateway de cliente.
- El valor puede ser public o private.
- El valor predeterminado es public.
attachment_type
String
No
- Especifica el modo de asociación.
- El valor puede ser vpc or er.
- El valor predeterminado es vpc.
er_id
String
No
- Especifica el ID de la instancia de router de empresa a la que se conecta al gateway de VPN.
- El valor es un UUID que contiene 36 caracteres. Establezca este parámetro solo cuando attachment_type se establezca en er.
vpc_id
String
No
- Descripción de la función:
Cuando attachment_type se establece en vpc, vpc_id especifica el ID de la VPC de servicio asociada con el gateway de VPN.
Cuando attachment_type se establece en er, vpc_id especifica el ID de la VPC de acceso utilizada por el gateway de VPN. En este caso, se puede usar cualquier ID de VPC.
- El valor es un UUID que contiene 36 caracteres. Cuando attachment_type se establece en vpc, este parámetro es obligatorio. Cuando attachment_type se establece en er, este parámetro es opcional; si vpc_id y access_vpc_id se establecen, se utiliza el valor access_vpc_id.
Puede obtener el ID de VPC haciendo referencia a Consultar VPC.
local_subnets
Array of String
No
- Especifica una subred local. Esta subred es una subred del lado de la nube que necesita comunicarse con una subred de cliente local a través de una VPN.
Se puede especificar un máximo de 50 subredes locales para cada gateway de VPN. Por ejemplo, una subred local puede ser 192.168.52.0/24.
- Establezca este parámetro solo cuando attachment_type se establezca en vpc.
connect_subnet
String
No
- Especifica el ID de la subred VPC utilizada por el gateway de VPN.
- El valor es un UUID que contiene 36 caracteres. Cuando attachment_type se establece en vpc, este parámetro es obligatorio. Cuando attachment_type se establece en er, este parámetro es opcional; si ambos connect_subnet y access_subnet_id se establecen, se utiliza el valor access_subnet_id.
Cuando attachment_type se establece en er, la subred debe tener al menos dos direcciones IP inactivas.
Cuando attachment_type se establece en vpc, la subred debe tener al menos cuatro direcciones IP inactivas si los valores de access_subnet_id y connect_subnet son iguales o debe tener al menos dos direcciones IP inactivas si los valores de access_subnet_id y connect_subnet son diferentes.
bgp_asn
Long
No
- Especifica el número BGP de AS del gateway de VPN.
- El valor varía de 1 a 4294967295, excepto 100.
- El valor predeterminado es 64512.
flavor
String
No
availability_zone_ids
Array of String
No
- Especifica la AZ donde se va a desplegar el gateway de VPN. Si no se especifica este parámetro, se selecciona automáticamente una AZ para el gateway de VPN. Puede obtener la lista de AZ haciendo referencia a Consulta de las AZ de gateway de VPN.
- Si se devuelven dos o más AZ al consultar la lista de AZ de gateway de VPN, ingrese dos AZ. Si solo se devuelve una AZ, ingrese esta AZ. Si no se devuelve la AZ, no se puede crear el gateway de VPN.
enterprise_project_id
String
No
- Especifica un ID de proyecto de empresa.
- El valor es un UUID (36 caracteres) o 0.
- El valor predeterminado es 0, que indica que el recurso pertenece al proyecto de empresa predeterminado.
master_eip
No
- Especifica la EIP activa del gateway de VPN.
- Establezca este parámetro solo cuando network_type se establezca en public.
slave_eip
No
- Especifica la EIP en espera del gateway de VPN.
- Establezca este parámetro solo cuando network_type se establezca en public.
access_vpc_id
String
No
- Especifica el ID de la VPC de acceso utilizada por el gateway de VPN.
- El valor es un UUID que contiene 36 caracteres.
- De forma predeterminada, el valor es el mismo que el valor de vpc_id.
Puede obtener el ID de VPC haciendo referencia a Consultar VPC.
access_subnet_id
String
No
- Especifica el ID de la subred en la VPC de acceso utilizada por el gateway de VPN.
- El valor es un UUID que contiene 36 caracteres.
Cuando attachment_type se establece en er, la subred debe tener al menos dos direcciones IP inactivas.
Cuando attachment_type se establece en vpc, la subred debe tener al menos cuatro direcciones IP inactivas si los valores de access_subnet_id y connect_subnet son iguales o debe tener al menos dos direcciones IP inactivas si los valores de access_subnet_id y connect_subnet son diferentes.
- De forma predeterminada, el valor es el mismo que el valor de connect_subnet.
Tabla 4 CreateRequestEip Parámetro
Tipo
Obligatorio
Descripción
id
String
No
- Especifica un ID de EIP.
- El valor es un UUID que contiene 36 caracteres.
- Establezca este parámetro solo cuando se utilice una EIP existente. El valor no puede ser el ID de una EIP que utilice ancho de banda compartido o el ID de una EIP congelada.
Puede obtener el ID de EIP haciendo referencia a Consultar EIP.
type
String
No
- Especifica el tipo de la EIP.
- El valor es una cadena de 0 a 36 caracteres.
Para el rango de valores, consulte el campo de type en la Tabla 4 en Asignar una EIP. Se prefiere el valor 5_bgp si se admite.
- Establezca este parámetro solo cuando se utilice una nueva EIP.
Para obtener más restricciones, consulte el campo de type en la Tabla 4 en Asignar una EIP.
charge_mode
String
No
bandwidth_size
Integer
No
- Especifica el ancho de banda (Mbit/s) de una EIP. El ancho de banda máximo de EIP varía según las regiones y depende del servicio de EIP. Puede enviar un ticket de servicio para aumentar el ancho de banda máximo de EIP en su cuenta.
- El valor puede ser 5, 10, 20, 50, 100, 200, 300, 500 o 1000.
- Establezca este parámetro solo cuando se utilice una nueva EIP.
Cuando flavor se establece en V300, el valor no puede ser mayor que 300. Cuando flavor se establece en V1G, el valor no puede ser mayor que 1000.
bandwidth_name
String
No
- Especifica el nombre de ancho de banda de una EIP.
- El valor es una string de 1 a 64 caracteres, que puede contener dígitos, letras, guiones bajos (_), guiones (-) y puntos (.).
- Establezca este parámetro solo cuando se utilice una nueva EIP.
- Cuando se utiliza una nueva EIP y este parámetro no se establece, se genera automáticamente un nombre de ancho de banda de EIP en el formato de vpngw-bandwidth-****, por ejemplo, vpngw-bandwidth-e1fa.
- Ejemplo de las solicitudes
1. Cree un gateway de VPN que utilice las EIP existentes y esté asociado a una VPC.
POST https://{Endpoint}/v5/{project_id}/vpn-gateways { "vpn_gateway": { "vpc_id": "cb4a631d-****-****-****-ca3fa348c36c", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "connect_subnet": "f5741286-****-****-****-2c82bd9ee114", "master_eip": { "id": "cff40e5e-****-****-****-7366077bf097" }, "slave_eip": { "id": "d290f1ee-****-****-****-d701748f0851" } } }
2. Cree un gateway VPN que utilice las nuevas EIP y esté asociado a un router empresarial.POST https://{Endpoint}/v5/{project_id}/vpn-gateways { "vpn_gateway": { "name": "vpngw-1234", "attachment_type": "er", "er_id": "cb4a631d-****-****-****-ca3fa348c36c", "vpc_id": "584a238f-****-****-****-edca746f6277", "connect_subnet": "f5741286-****-****-****-2c82bd9ee114", "bgp_asn": 65533, "flavor": "V1G", "availability_zone_ids": [ "cn-south-1f", "cn-south-1e" ], "master_eip": { "type": "5_bgp", "charge_mode": "bandwidth", "bandwidth_size": 1000, "bandwidth_name": "vpngw-bandwidth-1391" }, "slave_eip": { "type": "5_bgp", "charge_mode": "bandwidth", "bandwidth_size": 1000, "bandwidth_name": "vpngw-bandwidth-1392" } } }
3. Cree un gateway de VPN privado asociado a una VPC.
POST https://{Endpoint}/v5/{project_id}/vpn-gateways { "vpn_gateway": { "vpc_id": "cb4a631d-****-****-****-ca3fa348c36c", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "connect_subnet": "f5741286-****-****-****-2c82bd9ee114", "network_type": "private" } }
Respuesta
- Parámetros de respuesta
Código de estado devuelto 201: operación exitosa
Tabla 5 Parámetros en el cuerpo de respuesta Parámetro
Tipo
Descripción
vpn_gateway
Especifica el objeto de gateway de VPN.
request_id
String
Especifica un ID de solicitud.
Tabla 6 ResponseVpnGateway Parámetro
Tipo
Descripción
id
String
- Especifica un ID de gateway de VPN.
- El valor es un UUID que contiene 36 caracteres.
name
String
- Especifica un nombre de gateway de VPN. Si no se especifica ningún nombre de gateway de VPN, el sistema genera uno automáticamente.
- El valor es una cadena de 1 a 64 caracteres, que puede contener dígitos, letras, guiones bajos (_), y guiones (-).
network_type
String
- Especifica el tipo de red del gateway de VPN.
- El valor puede ser public o private.
- El valor predeterminado es public.
attachment_type
String
- Especifica el modo de asociación.
- El valor puede ser vpc or er.
er_id
String
Especifica el ID de la instancia de router de empresa a la que se conecta al gateway de VPN. Este parámetro solo está disponible cuando attachment_type está establecido en er.
vpc_id
String
Cuando attachment_type se establece en vpc, vpc_id especifica el ID de la VPC de servicio asociada con el gateway de VPN.
Cuando attachment_type se establece en er, vpc_id especifica el ID de la VPC de acceso utilizada por el gateway de VPN.
local_subnets
Array of String
Especifica una subred local. Esta subred es una subred del lado de la nube que necesita comunicarse con una red local a través de una VPN. Por ejemplo, una subred local puede ser 192.168.52.0/24. Este parámetro solo está disponible cuando attachment_type está establecido en vpc.
connect_subnet
String
Especifica el ID de la subred VPC utilizada por el gateway de VPN.
bgp_asn
Long
Especifica el número BGP de AS del gateway de VPN.
flavor
String
connection_number
Integer
Especifica el número máximo de conexiones VPN admitidas para el gateway de VPN
used_connection_number
Integer
Especifica el número de conexiones VPN que han utilizado el gateway de VPN.
used_connection_group
Integer
Especifica el número de grupos de conexión VPN que ha utilizado el gateway de VPN. Un grupo de conexiones consta de dos conexiones entre un gateway de cliente y un gateway de VPN. Por defecto, se incluyen 10 grupos de conexiones VPN gratuitos en la compra de un gateway de VPN.
enterprise_project_id
String
- Especifica un ID de proyecto de empresa.
- El valor es un UUID (36 caracteres) o 0.
access_vpc_id
String
- Especifica el ID de la VPC de acceso utilizada por el gateway de VPN.
- El valor es un UUID que contiene 36 caracteres.
access_subnet_id
String
- Especifica el ID de la subred en la VPC de acceso utilizada por el gateway de VPN.
- El valor es un UUID que contiene 36 caracteres.
- Ejemplo de las respuestas
1. Respuesta a la solicitud de creación de una gateway de VPN que utiliza las EIP existentes y está asociada a una VPC
{ "vpn_gateway": { "id": "134f9fb1-****-****-****-2040a5c13325", "name": "vpngw-9f24", "network_type": "public", "attachment_type": "vpc", "vpc_id": "0cf79a3f-****-****-****-d7ace626b0fa", "local_subnets": ["192.168.0.0/24"], "connect_subnet": "f5741286-****-****-****-2c82bd9ee114", "bgp_asn": 64512, "flavor": "V300", "connection_number": 200, "used_connection_number": 0, "used_connection_group": 0, "enterprise_project_id": "0", "access_vpc_id": "0cf79a3f-****-****-****-d7ace626b0fa", "access_subnet_id": "f5741286-****-****-****-2c82bd9ee114" }, "request_id": "7b37532a-d6e4-46b9-98dc-9169ec2ca58f" }
2. Respuesta a la solicitud de creación de un gateway de VPN que utiliza las nuevas EIP y está asociada con un router empresarial{ "vpn_gateway": { "id": "80ac167b-****-****-****-a9a2a23223b8", "name": "vpngw-1234", "network_type": "public", "attachment_type": "er", "er_id": "cb4a631d-****-****-****-ca3fa348c36c", "bgp_asn": 65533, "flavor": "V1G", "connection_number": 200, "used_connection_number": 0, "used_connection_group": 0, "enterprise_project_id": "0", "access_vpc_id": "0cf79a3f-****-****-****-d7ace626b0fa", "access_subnet_id": "f5741286-****-****-****-2c82bd9ee114" }, "request_id": "cd71cade-bfbd-410b-b672-4bfe46cfc311" }
3. Respuesta a la solicitud de creación de un gateway de VPN privado asociado a una VPC
{ "vpn_gateway": { "id": "80ac167b-****-****-****-a9a2a23223b8", "name": "vpngw-1234", "network_type": "private" "attachment_type": "vpc", "vpc_id": "cb4a631d-****-****-****-ca3fa348c36c", "local_subnets": ["192.168.0.0/24", "192.168.1.0/24"], "connect_subnet": "f5741286-****-****-****-2c82bd9ee114", "bgp_asn": 65533, "flavor": "V1G", "connection_number": 200, "used_connection_number": 0, "used_connection_group": 0, "enterprise_project_id": "0", "access_vpc_id": "cb4a631d-****-****-****-ca3fa348c36c", "access_subnet_id": "f5741286-****-****-****-2c82bd9ee114" }, "request_id": "cd71cade-bfbd-410b-b672-4bfe46cfc311" }
Códigos de estado
Para obtener más información, véase Códigos de estado.