Creación de una subred
Función
Esta API se utiliza para crear una subred.
URI
POST /v1/{project_id}/subnets
Nombre |
Obligatorio |
Descripción |
---|---|---|
project_id |
Sí |
Especifica el ID del proyecto. Para obtener más información sobre cómo obtener un ID de proyecto, consulte Obtención de un ID de proyecto. |
Mensaje de solicitud
- Parámetro de solicitud
Tabla 2 Parámetro de solicitud Nombre
Obligatorio
Tipo
Descripción
subnet
Sí
subnet object
Especifica los objetos de subnet.
Tabla 3 Objetos de subnet Nombre
Obligatorio
Tipo
Descripción
name
Sí
String
- Especifica el nombre de la subred.
- El valor puede contener de 1 a 64 caracteres, incluidos letras, dígitos, guiones bajos (_), guiones (-) y puntos (.).
description
No
String
- Proporciona la información adicional sobre la subred.
- El valor no puede contener más de 255 caracteres y no puede contener los corchetes angulares (< o >).
cidr
Sí
String
- Especifica el bloque CIDR de subred.
- El valor debe estar dentro del bloque CIDR de VPC.
- El valor debe estar en formato CIDR. La máscara de subred no puede ser mayor que 28.
gateway_ip
Sí
String
- Especifica el gateway de la subred.
- El valor debe ser una dirección IP en la subred.
- El valor debe ser una dirección IP válida.
ipv6_enable
No
Boolean
- Especifica si IPv6 está habilitado. Si IPv6 está habilitado, puede utilizar bloques CIDR de IPv6.
- El valor puede ser true (habilitado) o false (deshabilitado).
- Si este parámetro se deja en blanco, el sistema lo establece automáticamente en false de forma predeterminada.
dhcp_enable
No
Boolean
- Especifica si DHCP está habilitado para la subred.
- El valor puede ser true (habilitado) o false (deshabilitado).
- Si este parámetro se deja en blanco, se utiliza el valor predeterminado true. El valor predeterminado es un día. Si este parámetro se establece en false, los ECS recién creados no pueden obtener direcciones IP y los nombres de usuario y contraseñas no se pueden inyectar mediante Cloud-init.
primary_dns
No
String
- Especifica la dirección IP del servidor DNS 1 en la subred.
- El valor debe ser una dirección IP.Si no se especifica el valor, el valor predeterminado se dejará en blanco.
Para obtener instrucciones acerca de cómo obtener una dirección de servidor DNS privado, vea ¿Cuáles son las direcciones de servidor DNS privado proporcionadas por el servicio DNS?
Para obtener instrucciones acerca de cómo utilizar la dirección del servidor DNS, consulte la sección Consulta de servidores de nombres.
secondary_dns
No
String
- Especifica la dirección IP del servidor DNS 2 en la subred.
- El valor debe ser una dirección IP.Si no se especifica el valor, el valor predeterminado se dejará en blanco.
Para obtener instrucciones acerca de cómo obtener una dirección de servidor DNS privado, vea ¿Cuáles son las direcciones de servidor DNS privado proporcionadas por el servicio DNS?
Para obtener instrucciones acerca de cómo utilizar la dirección del servidor DNS, consulte la sección Consulta de servidores de nombres.
dnsList
No
Array of strings
- Especifica la lista de direcciones de servidor DNS de una subred. Este campo es obligatorio si necesita utilizar más de dos servidores DNS.
- Este valor de parámetro es el superconjunto de la dirección 1 del servidor DNS y la dirección 2 del servidor DNS.IPv6 addresses are not supported. Si no se especifica el valor, el valor predeterminado se dejará en blanco.
Para obtener instrucciones acerca de cómo obtener una dirección de servidor DNS privado, vea ¿Cuáles son las direcciones de servidor DNS privado proporcionadas por el servicio DNS?
Para obtener instrucciones acerca de cómo utilizar la dirección del servidor DNS, consulte la sección Consulta de servidores de nombres.
availability_zone
No
String
- Especifica la AZ al que pertenece la subred, que se puede obtener del punto de conexión. Para más detalles, véase Puntos de conexión.
- El valor debe ser una AZ existente en el sistema. Si no se especifica el valor, el valor predeterminado se dejará en blanco.
vpc_id
Sí
String
Especifica el ID de la VPC a la que pertenece la subred.
extra_dhcp_opts
No
Array of extra_dhcp_opt objects
Especifica la dirección del servidor NTP o el tiempo de concesión DHCP configurado para la subred. Para obtener más información, véase Tabla 4.
- Ejemplo de la solicitud
POST https://{Endpoint}/v1/{project_id}/subnets { "subnet": { "name": "subnet", "description": "", "cidr": "192.168.20.0/24", "gateway_ip": "192.168.20.1", "ipv6_enable": true, "dhcp_enable": true, "primary_dns": "114.xx.xx.114", "secondary_dns": "114.xx.xx.115", "dnsList": [ "114.xx.xx.114", "114.xx.xx.115" ], "availability_zone": "aa-bb-cc",//For example, the AZ is aa-bb-cc. "vpc_id": "3ec3b33f-ac1c-4630-ad1c-7dba1ed79d85", { "opt_value": "10.100.0.33,10.100.0.34", "opt_name": "ntp" } ] } }
Mensaje de la respuesta
- Parámetro de respuesta
Tabla 5 Parámetro de respuesta Nombre
Tipo
Descripción
subnet
subnet object
Especifica los objetos de subnet.
Tabla 6 Objetos de subnet Nombre
Tipo
Descripción
id
String
Especifica el identificador de recurso en forma de UUID.
name
String
- Especifica el nombre de la subred.
- El valor puede contener de 1 a 64 caracteres, incluidos letras, dígitos, guiones bajos (_), guiones (-) y puntos (.).
description
String
- Proporciona la información adicional sobre la subred.
- El valor no puede contener más de 255 caracteres y no puede contener los corchetes angulares (< o >).
cidr
String
- Especifica el bloque CIDR de subred.
- El valor debe estar dentro del bloque CIDR de VPC.
- El valor debe estar en formato CIDR. La máscara de subred no puede ser mayor que 28.
gateway_ip
String
- Especifica el gateway de la subred.
- El valor debe ser una dirección IP en la subred.
- El valor debe ser una dirección IP válida.
ipv6_enable
Boolean
Especifica si se puede crear una subred IPv6.
cidr_v6
String
Especifica el bloque CIDR de subred IPv6. Si la subred es una subred IPv4, este parámetro no se devuelve.
gateway_ip_v6
String
Especifica el gateway de subred IPv6. Si la subred es una subred IPv4, este parámetro no se devuelve.
dhcp_enable
Boolean
Especifica si la función DHCP está habilitada para la subred.
primary_dns
String
- Especifica la dirección IP del servidor DNS 1 en la subred.
- El valor debe ser una dirección IP.Si no se especifica el valor, el valor predeterminado se dejará en blanco.
secondary_dns
String
- Especifica la dirección IP del servidor DNS 2 en la subred.
- El valor debe ser una dirección IP.Si no se especifica el valor, el valor predeterminado se dejará en blanco.
dnsList
Array of strings
- Especifica la lista de direcciones de servidor DNS de una subred. Este campo es obligatorio si necesita utilizar más de dos servidores DNS.
- Este valor de parámetro es el superconjunto de la dirección 1 del servidor DNS y la dirección 2 del servidor DNS.IPv6 addresses are not supported. Si no se especifica el valor, el valor predeterminado se dejará en blanco.
availability_zone
String
- Especifica la AZ al que pertenece la subred, que se puede obtener del punto de conexión. Para más detalles, véase Puntos de conexión.
- El valor debe ser una AZ existente en el sistema. Si no se especifica el valor, el valor predeterminado se dejará en blanco.
vpc_id
String
Especifica el ID de la VPC a la que pertenece la subred.
status
String
- Especifica el estado de la subred.
- El valor puede ser ACTIVE, UNKNOWN o ERROR.
- ACTIVE: indica que la subred se ha asociado a una VPC.
- UNKNOWN: indica que la subred no se ha asociado con una VPC.
- ERROR indica que la subred es anormal.
- El sistema crea una subred y luego asocia la subred con una VPC en los subprocesos.
En el escenario simultáneo, si el bloque CIDR de la subred creada es el mismo que el de una subred existente, la subred creada no puede asociarse con una VPC después de la verificación del sistema subyacente. Como resultado, la creación de la subred falla.
En este escenario, el valor devuelto de status es de UNKNOWN.
neutron_network_id
String
Especifica el ID de la red correspondiente (API de OpenStack Neutron).
neutron_subnet_id
String
Especifica el ID de la subred correspondiente (API de OpenStack Neutron).
neutron_subnet_id_v6
String
Especifica el ID de la subred IPv6 (API de OpenStack Neutron). Si la subred es una subred IPv4, este parámetro no se devuelve.
extra_dhcp_opts
Array of extra_dhcp_opt objects
Especifica la dirección del servidor NTP o el tiempo de concesión DHCP configurado para la subred. Para obtener más información, véase Tabla 7.
scope
String
Especifica dónde se utiliza la subred.
Valores:
- center: La subred se utiliza en una AZ central.
- {azId}: La subred se utiliza en una AZ de borde.
tenant_id
String
Especifica el ID del proyecto de empresa.
created_at
String
- Especifica la hora (UTC) en la que se crea la subred.
- Formato: aaaa-MM-ddTHH:mm:ss
updated_at
String
- Especifica la hora (UTC) en la que se crea la subred.
- Formato: aaaa-MM-ddTHH:mm:ss
- Ejemplo de la respuesta
{ "subnet": { "id": "4779ab1c-7c1a-44b1-a02e-93dfc361b32d", "name": "subnet", "description": "", "cidr": "192.168.20.0/24", "dnsList": [ "114.xx.xx.114", "114.xx.xx.115" ], "status": "UNKNOWN", "vpc_id": "3ec3b33f-ac1c-4630-ad1c-7dba1ed79d85", "gateway_ip": "192.168.20.1", "ipv6_enable": true, "cidr_v6": "2001:db8:a583::/64", "gateway_ip_v6": "2001:db8:a583::1", "dhcp_enable": true, "primary_dns": "114.xx.xx.114", "secondary_dns": "114.xx.xx.115", "availability_zone": "aa-bb-cc",//For example, the AZ is aa-bb-cc. "neutron_network_id": "4779ab1c-7c1a-44b1-a02e-93dfc361b32d", "neutron_subnet_id": "213cb9d-3122-2ac1-1a29-91ffc1231a12", "neutron_subnet_id_v6": "e0fa7de1-a6e2-44c9-b052-b9d8cebe93c4", "extra_dhcp_opts": [ { "opt_value": "10.100.0.33,10.100.0.34", "opt_name": "ntp" } ], "tenant_id": "087679f0aa80d32a2f4ec0172f5e902b", "created_at": "2022-12-15T02:42:07", "updated_at": "2022-12-15T02:42:07" } }
Código de estado
Véase Códigos de estado.
Código de error
Véase Códigos de error.