Crear y usar rangos internos

En este documento, se describe cómo crear, usar y borrar rangos internos.

Los rangos internos te ayudan a administrar un espacio de direcciones IP unificado en las redes de nube privada virtual (VPC), ya que te permiten asignar bloques de direcciones IP internas y especificar cómo se pueden usar esos bloques.

Antes de comenzar

Roles obligatorios

Para obtener los permisos que necesitas para trabajar con rangos internos, pídele a tu administrador que te otorgue el rol de IAM Administrador de red de Compute (roles/compute.networkAdmin) en tu proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

Crea rangos internos

Cuando creas un rango interno, debes especificar al menos dos valores: las direcciones IP que se asignarán y la red a la que se asignarán. Puedes crear un rango interno con un rango de CIDR preciso o hacer que Google Cloud elija el rango de forma automática.

Crea un rango interno para un bloque CIDR específico

Console

  1. En la consola de Google Cloud, ve a la página Rangos internos.

    Ir a Rangos internos

  2. Haz clic en Reservar rango interno.

  3. Escribe un Nombre.

  4. Ingresa una Descripción (opcional).

  5. En la sección Método de reserva, selecciona Permitirme especificar.

  6. En el campo Rango de IP, ingresa el rango de direcciones IP del rango interno en notación CIDR.

  7. Selecciona una Red.

  8. Selecciona un tipo de Intercambio de tráfico.

  9. Selecciona un tipo de Uso.

  10. Haz clic en Reservar.

gcloud

Usa el comando internal-ranges create

gcloud network-connectivity internal-ranges create RANGE_NAME \
    --ip-cidr-range=CIDR_RANGE \
    --network=NETWORK_NAME \
    --description="DESCRIPTION" \
    --peering=PEERING_TYPE \
    --usage=USAGE_TYPE

Reemplaza lo siguiente:

  • RANGE_NAME: el nombre del rango interno nuevo.
  • CIDR_RANGE: el rango de CIDR que se asignará al rango interno nuevo.
  • NETWORK_NAME: el nombre de la red en la que se creará el rango interno.
  • DESCRIPTION: una descripción opcional del rango interno.
  • PEERING_TYPE el tipo de intercambio de tráfico del rango interno. Las opciones son FOR_SELF, FOR_PEER y NOT_SHARED. FOR_SELF es la configuración predeterminada.
  • USAGE_TYPE: el tipo de uso del rango interno. Las opciones son FOR_VPC y EXTERNAL_TO_VPC. FOR_VPC es la configuración predeterminada.

API

Realiza una solicitud POST al método internalRanges.create.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
{
  "ipCidrRange": "CIDR_RANGE",
  "network": "NETWORK_NAME",
  "description": "DESCRIPTION",
  "peering": "PEERING_TYPE",
  "usage": "USAGE_TYPE"
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto superior para el rango interno.
  • RANGE_NAME: el nombre del rango interno.
  • CIDR_RANGE: el rango de CIDR que se asignará al rango interno.
  • NETWORK_NAME: el nombre de la red en la que se creará el rango interno.
  • DESCRIPTION: una descripción opcional del nuevo rango interno.
  • PEERING_TYPE el tipo de intercambio de tráfico del rango interno. Las opciones son FOR_SELF, FOR_PEER y NOT_SHARED. FOR_SELF es la configuración predeterminada.
  • USAGE_TYPE: el tipo de uso del rango interno. Las opciones son FOR_VPC y EXTERNAL_TO_VPC. FOR_VPC es la configuración predeterminada.

Crea un rango interno con un bloque CIDR asignado automáticamente

Cuando creas un rango interno con un bloque CIDR asignado de forma automática, especificas una longitud de prefijo y uno o más rangos CIDR de destino. Google Cloud considera cualquier asignación de direcciones IP existentes y asigna un bloque libre de direcciones IP del tamaño elegido desde los rangos de CIDR de destino.

Console

  1. En la consola de Google Cloud, ve a la página Rangos internos.

    Ir a Rangos internos

  2. Haz clic en Reservar rango interno.

  3. Escribe un Nombre.

  4. Ingresa una Descripción (opcional).

  5. En la sección Método de reserva, selecciona Automático.

  6. Selecciona una Longitud de prefijo.

  7. En el campo Rango de direcciones IP de destino 1, ingresa un rango de direcciones IP desde el que se asignarán las direcciones IP. Para especificar varios rangos de direcciones IP, haz clic en Agregar un rango de direcciones IP de destino y, luego, ingresa cada rango.

  8. Selecciona una Red.

  9. Selecciona un tipo de Intercambio de tráfico.

  10. Selecciona un tipo de Uso.

  11. Haz clic en Reservar.

gcloud

Usa el comando internal-ranges create.

gcloud network-connectivity internal-ranges create RANGE_NAME \
    --network=NETWORK_NAME \
    --prefix-length=PREFIX_LENGTH \
    --target-cidr-range=TARGET_CIDR_RANGE \
    --peering=PEERING_TYPE \
    --usage=USAGE_TYPE \
    --description="DESCRIPTION"

Reemplaza lo siguiente:

  • RANGE_NAME: el nombre del rango interno.
  • NETWORK_NAME: el nombre de la red en la que se creará el rango interno.
  • PREFIX_LENGTH: la longitud del prefijo de las direcciones IP asignadas.
  • TARGET_CIDR_RANGE: el rango CIDR de destino desde el que se asigna un bloque de direcciones IP. Puedes ingresar varios rangos de CIDR en una lista separada por comas. El valor predeterminado es 10.0.0.0/8 para las redes de VPC de modo personalizado o 10.128.0.0/9 para las redes de VPC de modo automático.
  • PEERING_TYPE el tipo de intercambio de tráfico del rango interno. Las opciones son FOR_SELF, FOR_PEER y NOT_SHARED. FOR_SELF es la configuración predeterminada.
  • USAGE_TYPE: el tipo de uso del rango interno. Las opciones son FOR_VPC y EXTERNAL_TO_VPC. FOR_VPC es la configuración predeterminada.
  • DESCRIPTION: una descripción opcional del nuevo rango interno.

API

Realiza una solicitud POST al método internalRanges.create.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
{
  "prefixLength": PREFIX_LENGTH,
  "targetCidrRange": "TARGET_RANGE",
  "network": "NETWORK_NAME",
  "description": "DESCRIPTION",
  "peering": "PEERING_TYPE",
  "usage": "USAGE_TYPE"
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto superior para el rango interno.
  • RANGE_NAME: el nombre del rango interno.
  • PREFIX_LENGTH: la longitud del prefijo CIDR para el bloque de direcciones IP del rango.
  • TARGET_RANGE: el rango CIDR de destino desde el que se asigna un bloque de direcciones IP. Puedes especificar varios rangos de CIDR en un array de JSON. El valor predeterminado es 10.0.0.0/8 para las redes de VPC de modo personalizado o 10.128.0.0/9 para las redes de VPC de modo automático.
  • NETWORK_NAME: el nombre de la red en la que se creará el rango interno.
  • DESCRIPTION: una descripción opcional del nuevo rango interno.
  • PEERING_TYPE el tipo de intercambio de tráfico del rango interno. Las opciones son FOR_SELF, FOR_PEER y NOT_SHARED. FOR_SELF es la configuración predeterminada.
  • USAGE_TYPE: el tipo de uso del rango interno. Las opciones son FOR_VPC y EXTERNAL_TO_VPC. FOR_VPC es la configuración predeterminada.

Reserva rangos internos

Crear rangos internos con el tipo de uso y el tipo de intercambio de tráfico configurados de forma correcta permite que Google Cloud ayude a garantizar que las direcciones IP asignadas se usen según lo previsto. Los rangos internos están reservados para su uso según la configuración que elijas para los tipos de uso y de intercambio de tráfico.

Reserva un rango interno para una red local

Puedes crear un rango interno reservado solo para uso local. Cuando reservas un rango para uso local, Google Cloud no te permite crear subredes o rutas en la red de VPC superior si el recurso nuevo entra en conflicto con el rango reservado.

Console

  1. En la consola de Google Cloud, ve a la página Rangos internos.

    Ir a Rangos internos

  2. Haz clic en Reservar rango interno.

  3. Escribe un Nombre.

  4. Ingresa una Descripción (opcional).

  5. En la sección Método de reserva, selecciona Permitirme especificar.

  6. En el campo Rango de IP, ingresa el rango de direcciones IP del rango interno en notación CIDR.

  7. Selecciona una Red.

  8. Haz clic en Intercambio de tráfico y, luego, selecciona No compartido.

  9. Haz clic en Uso y, luego, selecciona Externa a VPC.

  10. Haz clic en Reservar.

gcloud

Usa el comando internal-ranges create.

gcloud network-connectivity internal-ranges create RANGE_NAME \
    --ip-cidr-range=CIDR_RANGE \
    --network=NETWORK_NAME \
    --description="reserved for on-premises" \
    --usage=EXTERNAL_TO_VPC \
    --peering=NOT_SHARED

Reemplaza lo siguiente:

  • RANGE_NAME: el nombre del rango interno que se reservará para el uso local.
  • CIDR_RANGE: el rango de CIDR que se asignará al uso local.
  • NETWORK_NAME: el nombre de la red en la que se creará el rango interno.

API

Realiza una solicitud POST al método internalRanges.create.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
{
  "ipCidrRange": "CIDR_RANGE",
  "network": "NETWORK_NAME",
  "description": "reserved for on-premises use",
  "usage": "EXTERNAL_TO_VPC",
  "peering": "NOT_SHARED"
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto superior para el rango interno.
  • RANGE_NAME: el nombre del rango interno nuevo.
  • CIDR_RANGE: la longitud del prefijo CIDR para el bloque de direcciones IP del rango.
  • NETWORK_NAME: el nombre de la red en la que se creará el rango interno.

Reserva un rango interno para las redes de intercambio de tráfico

Puedes crear un rango interno reservado para las redes de VPC de intercambio de tráfico. Cuando reservas un rango para redes de VPC de intercambio de tráfico, ningún recurso en la red de VPC superior del rango puede usarlo. Solo las redes de VPC de intercambio de tráfico y de intercambio de tráfico pueden usar el rango.

Console

  1. En la consola de Google Cloud, ve a la página Rangos internos.

    Ir a Rangos internos

  2. Haz clic en Reservar rango interno.

  3. Escribe un Nombre.

  4. Ingresa una Descripción (opcional).

  5. En la sección Método de reserva, selecciona Permitirme especificar.

  6. En el campo Rango de IP, ingresa el rango de direcciones IP del rango interno en notación CIDR.

  7. Selecciona una Red.

  8. Haz clic en Intercambio de tráfico y, luego, selecciona Para el intercambio de tráfico.

  9. Haz clic en Uso y, luego, selecciona Para VPC.

  10. Haz clic en Reservar.

gcloud

Usa el comando internal-ranges create

gcloud network-connectivity internal-ranges create RANGE_NAME \
    --target-cidr-range=TARGET_CIDR_RANGE \
    --prefix-length=PREFIX_LENGTH \
    --network=NETWORK_NAME \
    --peering=FOR_PEER \
    --usage=FOR_VPC

Reemplaza lo siguiente:

  • RANGE_NAME: el nombre del rango interno que se reservará solo para redes de intercambio de tráfico.
  • TARGET_CIDR_RANGE: el rango CIDR de destino desde el que se asigna un bloque de direcciones IP. Puedes especificar varios rangos de CIDR en una lista separada por comas. El valor predeterminado es 10.0.0.0/8 para las redes de VPC de modo personalizado o 10.128.0.0/9 para las redes de VPC de modo automático.
  • PREFIX_LENGTH: la longitud del prefijo de las direcciones IP asignadas.
  • NETWORK_NAME: el nombre de la red en la que se creará el rango interno.

API

Realiza una solicitud POST al método internalRanges.create.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
{
  "prefixLength": PREFIX_LENGTH,
  "targetCidrRange": "TARGET_CIDR_RANGE",
  "network": "NETWORK_NAME",
  "peering": "FOR_PEER",
  "usage": "FOR_VPC"
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto superior para el rango interno.
  • RANGE_NAME: el nombre del rango interno.
  • PREFIX_LENGTH: la longitud del prefijo CIDR para el bloque de direcciones IP del rango.
  • TARGET_CIDR_RANGE: el rango CIDR desde el que se asigna un bloque de direcciones IP. Puedes especificar varios rangos de CIDR en un array de JSON. El valor predeterminado es 10.0.0.0/8 para las redes de VPC de modo personalizado o 10.128.0.0/9 para las redes de VPC de modo automático.
  • NETWORK_NAME: el nombre de la red en la que se creará el rango interno.

Reserva un rango interno para una red de VPC local

Puedes crear un rango interno que esté reservado solo para una red de VPC local. Las redes de VPC de intercambio de tráfico no anuncian el rango reservado, y las redes de VPC de intercambio de tráfico no pueden usar el rango interno de una manera que sea visible para la red de VPC superior.

Console

  1. En la consola de Google Cloud, ve a la página Rangos internos.

    Ir a Rangos internos

  2. Haz clic en Reservar rango interno.

  3. Escribe un Nombre.

  4. Ingresa una Descripción (opcional).

  5. En la sección Método de reserva, selecciona Permitirme especificar.

  6. En el campo Rango de IP, ingresa el rango de direcciones IP del rango interno en notación CIDR.

  7. Selecciona una Red.

  8. Haz clic en Intercambio de tráfico y, luego, selecciona No compartido.

  9. Haz clic en Uso y, luego, selecciona Para VPC.

  10. Haz clic en Reservar.

gcloud

Usa el comando internal-ranges create.

gcloud network-connectivity internal-ranges create RANGE_NAME \
    --ip-cidr-range=CIDR_RANGE \
    --network=NETWORK_NAME \
    --peering=NOT_SHARED \
    --usage=FOR_VPC

Reemplaza lo siguiente:

  • RANGE_NAME: el nombre del rango interno que se reservará para usarse en una red de VPC local.
  • CIDR_RANGE: la longitud del prefijo CIDR para el bloque de direcciones IP del rango.
  • NETWORK_NAME: el nombre de la red en la que se creará el rango interno.

API

Realiza una solicitud POST al método internalRanges.create.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=RANGE_NAME
{
  "ipCidrRange": "CIDR_RANGE",
  "network": "NETWORK_NAME",
  "peering": "NOT_SHARED",
  "usage": "FOR_VPC"
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto superior para el rango interno.
  • RANGE_NAME: el nombre del rango interno nuevo.
  • CIDR_RANGE: la longitud del prefijo CIDR para el bloque de direcciones IP del rango.
  • NETWORK_NAME: el nombre de la red en la que se creará el rango interno.

Crea subredes con rangos internos

Puedes crear una subred y usar un rango interno para especificar el rango de direcciones IP internas de la subred. La subred se puede asociar con un rango interno completo o solo una parte del rango. Los rangos secundarios para las subredes también se pueden asociar con rangos internos.

Para crear una subred asociada a un rango interno, usa Google Cloud CLI o envía una solicitud a la API.

Crea una subred que use un rango interno completo

Para crear una subred que use un rango interno completo para su rango de direcciones IP internas, sigue estos pasos.

gcloud

  1. Crea un rango interno en la red en la que deseas crear una subred nueva. Establece el tipo de uso en este rango interno en FOR_VPC y establece el tipo de intercambio de tráfico en FOR_SELF.
  2. Usa el comando subnets create.

    gcloud beta compute networks subnets create SUBNET_NAME \
        --reserved-internal-range=networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME \
        --network=NETWORK_NAME \
        --region=REGION
    

    Reemplaza lo siguiente:

    • SUBNET_NAME: el nombre de la subred.
    • PROJECT_ID: el ID del proyecto en el que se creará la subred.
    • RANGE_NAME: el nombre del rango interno que se asociará a la subred.
    • NETWORK_NAME: el nombre de la red en la que se creará la subred.
    • REGION: la región en la que se crearán la subred.

API

  1. Crea un rango interno en la red en la que deseas crear una subred nueva. Establece el tipo de uso en este rango interno en FOR_VPC y establece el tipo de intercambio de tráfico en FOR_SELF.
  2. Realiza una solicitud POST al método subnetworks.insert.

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/subnetworks
    {
      "name" : "SUBNET_NAME",
      "reservedInternalRange" : "networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME",
      "network" : "NETWORK"
    }
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID del proyecto superior de la subred nueva.
    • REGION: la región en la que se crearán la subred.
    • SUBNET_NAME: es el nombre de la subred nueva.
    • PROJECT_ID: el ID del proyecto en el que se creará una subred.
    • RANGE_NAME: el nombre del rango interno que se usará para la subred nueva.
    • NETWORK: el nombre de la red en la que se creará la subred.

Crea una subred que use parte de un rango interno

Para crear una subred que use parte de un rango interno para su rango de direcciones IP internas, sigue estos pasos.

gcloud

  1. Crea un rango interno en la red en la que deseas crear una subred nueva. Establece el tipo de uso en este rango interno en FOR_VPC y establece el tipo de intercambio de tráfico en FOR_SELF.
  2. Usa el comando subnets create.

    gcloud beta compute networks subnets create SUBNET_NAME \
        --reserved-internal-range=networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME \
        --range=IP_RANGE \
        --network=NETWORK_NAME \
        --region=REGION
    

    Reemplaza lo siguiente:

    • SUBNET_NAME: el nombre de la subred.
    • PROJECT_ID: el ID del proyecto en el que se creará la subred.
    • RANGE_NAME: el nombre del rango interno que se asociará a la subred nueva.
    • IP_RANGE: un rango de CIDR que es un subconjunto del rango interno.
    • NETWORK_NAME: el nombre de la red en la que se creará la subred.
    • REGION: la región en la que se crearán la subred.

Por ejemplo, los siguientes dos comandos crean una subred asociada con solo la parte 10.9.1.0/24 de un rango interno que reserva el bloque CIDR 10.9.0.0/16.

gcloud network-connectivity internal-ranges create reserved-range-one \
    --ip-cidr-range=10.9.0.0/16 \
    --network=vpc-one
gcloud beta compute networks subnets create subnet-one \
    --reserved-internal-range=networkconnectivity.googleapis.com/projects/project-one/locations/global/internalRanges/reserved-range-one \
    --range=10.9.1.0/24 \
    --network=vpc-one \
    --region=us-central1

API

  1. Crea un rango interno en la red en la que deseas crear una subred nueva. Establece el tipo de uso en este rango interno en FOR_VPC y establece el tipo de intercambio de tráfico en FOR_SELF.
  2. Realiza una solicitud POST al método subnetworks.insert.

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/subnetworks
    {
      "name" : "SUBNET_NAME",
      "reservedInternalRange" : "networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME",
      "range" : "IP_RANGE",
      "network" : "NETWORK"
    }
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID del proyecto superior de la subred nueva.
    • REGION: la región en la que se crearán la subred.
    • SUBNET_NAME: el nombre de la subred.
    • PROJECT_ID: el ID del proyecto en el que se creará la subred.
    • RANGE_NAME: el nombre del rango interno que se asociará a la subred nueva.
    • IP_RANGE: un rango de CIDR que es un subconjunto del rango interno elegido.
    • NETWORK: el nombre de la red en la que se creará la subred.

Por ejemplo, las siguientes dos solicitudes crean una subred asociada solo con la parte 10.9.1.0/24 de un rango interno que contiene el bloque CIDR 10.9.0.0/16.

POST https://networkconnectivity.googleapis.com/v1/projects/sample-project/locations/global/internalRanges?internalRangeId=reserved-for-subnet
{
  "targetCidrRange": "10.9.0.0/16",
  "network": "network-b"
}
POST https://compute.googleapis.com/compute/beta/projects/11223344/regions/us-central1/subnetworks
{
  "name" : "subnet-with-partial-range",
  "reservedInternalRange" : "networkconnectivity.googleapis.com/projects/project-one/locations/global/internalRanges/reserved-for-subnet",
  "range" : "10.9.1.0/24",
  "network" : "network-b"
}

Crea clústeres de GKE con rangos internos

Puedes usar rangos internos a fin de asignar direcciones IP para los clústeres nativos de la VPC de Google Kubernetes Engine (GKE).

Para crear un clúster nativo de la VPC con rangos internos, usa Google Cloud CLI o envía una solicitud a la API.

gcloud

  1. Crea los siguientes rangos internos con el comando internal-ranges create.

    gcloud network-connectivity internal-ranges create gke-nodes-1 \
        --prefix-length=NODE_PREFIX_LENGTH \
        --network=NETWORK
    
    gcloud network-connectivity internal-ranges create gke-pods-1 \
        --prefix-length=POD_PREFIX_LENGTH \
        --network=NETWORK
    
    gcloud network-connectivity internal-ranges create gke-services-1 \
        --prefix-length=SERVICE_PREFIX_LENGTH \
        --network=NETWORK
    

    Reemplaza lo siguiente:

    • NODE_PREFIX_LENGTH: la longitud del prefijo del rango interno asociado con los nodos de GKE.
    • POD_PREFIX_LENGTH: la longitud del prefijo del rango interno asociado con los pods de GKE.
    • SERVICE_PREFIX_LENGTH: la longitud del prefijo del rango interno asociado con los servicios de GKE.
    • NETWORK: el nombre de la red
  2. Crea una subred con los rangos internos que creaste en el paso anterior mediante el comando subnets create.

    gcloud beta compute networks subnets create gke-subnet-1 \
        --network=NETWORK \
        --region=REGION \
        --reserved-internal-range="//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-nodes-1" \
        --secondary-range-with-reserved-internal-range="pods=//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-pods-1,services=//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-services-1"
    

    Reemplaza lo siguiente:

    • NETWORK: el nombre de la red
    • REGION: la región de la subred.
    • PROJECT_ID: el ID del proyecto.
  3. Crea el clúster nativo de la VPC mediante el comando clusters create.

    gcloud container clusters create CLUSTER_NAME \
        --network=NETWORK \
        --subnetwork=gke-subnet-1 \
        --zone=ZONE \
        --cluster-secondary-range-name=pods \
        --services-secondary-range-name=services \
        --enable-ip-alias
    

API

  1. Crea los siguientes rangos internos a través de solicitudes POST al método internalRanges.create.

    POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=gke-nodes-1
    {
      "network": "NETWORK",
      "prefixLength": NODE_PREFIX_LENGTH,
      "peering": "FOR_SELF",
      "usage": "FOR_VPC"
    }
    
    POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=gke-pods-1
    {
      "network": "NETWORK",
      "prefixLength": POD_PREFIX_LENGTH,
      "peering": "FOR_SELF",
      "usage": "FOR_VPC"
    }
    
    POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?internalRangeId=gke-services-1
    {
      "network": "NETWORK",
      "prefixLength": SERVICE_PREFIX_LENGTH,
      "peering": "FOR_SELF",
      "usage": "FOR_VPC"
    }
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID del proyecto.
    • NETWORK: el nombre de la red
    • NODE_PREFIX_LENGTH: la longitud del prefijo del rango interno asociado con los nodos de GKE.
    • POD_PREFIX_LENGTH: la longitud del prefijo del rango interno asociado con los pods de GKE.
    • SERVICE_PREFIX_LENGTH: la longitud del prefijo del rango interno asociado con los servicios de GKE.
  2. Crea una subred con los rangos internos que creaste en el paso anterior mediante una solicitud POST al método subnetworks.insert.

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/subnetworks
    {
      "name": "gke-subnet-1",
      "network": "https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/global/networks/NETWORK",
      "privateIpGoogleAccess": false,
      "reservedInternalRange": "//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-nodes-1",
      "secondaryIpRanges": [
        {
          "rangeName": "pods",
          "reservedInternalRange": "//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-pods-1"
        },
        {
          "rangeName": "services",
          "reservedInternalRange": "//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/internalRanges/gke-services-1"
        }
      ]
    }
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID del proyecto.
    • REGION: la región de la subred.
    • NETWORK: la red de la subred.
  3. Crea el clúster nativo de la VPC mediante una solicitud POST al método clusters.create.

    POST https://container.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/clusters
    {
      "cluster": {
        "ipAllocationPolicy": {
          "clusterSecondaryRangeName": "pods",
          "createSubnetwork": false,
          "servicesSecondaryRangeName": "services",
          "useIpAliases": true
        },
        "name": "CLUSTER_NAME",
        "network": "NETWORK",
        "nodePools": [
          {
            "config": {
              "oauthScopes": [
                "https://www.googleapis.com/auth/devstorage.read_only",
                "https://www.googleapis.com/auth/logging.write",
                "https://www.googleapis.com/auth/monitoring",
                "https://www.googleapis.com/auth/service.management.readonly",
                "https://www.googleapis.com/auth/servicecontrol",
                "https://www.googleapis.com/auth/trace.append"
              ]
            },
            "initialNodeCount": 3,
            "management": {
              "autoRepair": true,
              "autoUpgrade": true
            },
            "name": "default-pool",
            "upgradeSettings": {
              "maxSurge": 1
            }
          }
        ],
        "subnetwork": "gke-subnet-1"
      },
      "parent": "projects/PROJECT_ID/locations/ZONE"
    }
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID del proyecto.
    • ZONE: la zona del clúster.
    • CLUSTER_NAME el nombre del clúster nuevo.
    • NETWORK: la red del clúster.

Enumera rangos internos

Puedes enumerar los rangos internos para ver todos los rangos internos en tu proyecto actual o en una red de VPC específica. Para enumerar proyectos en una red de VPC, usa Google Cloud CLI o envía una solicitud a la API.

Console

gcloud

  • Para ver todos los rangos internos en tu proyecto actual, usa el comando internal-ranges list.

    gcloud network-connectivity internal-ranges list
    
  • Para ver todos los rangos internos en una red de VPC, usa el comando internal-ranges list y agrega un filtro.

    gcloud network-connectivity internal-ranges list \
        --filter=network:NETWORK_NAME \
        --project=PROJECT_ID
    

    Reemplaza lo siguiente:

    • NETWORK_NAME: el nombre de la red de VPC en la que se enumerarán los rangos internos.
    • PROJECT_ID: el ID del proyecto que contiene la red de VPC.

API

  • Para ver todos los rangos internos de un proyecto, realiza una solicitud GET al método internalRanges.list.

    GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges
    

    Reemplaza PROJECT_ID por el ID del proyecto en el que deseas ver los rangos internos.

  • Para ver todos los rangos internos en una red de VPC, realiza una solicitud GET al método internalRanges.list y, luego, incluye un filtro.

    GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges?filter=network=\"https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME\"
    

    Reemplaza NETWORK_NAME por el nombre de la red de VPC en la que se enumerarán los rangos internos.

Describe un rango interno

Puedes describir un rango interno para obtener detalles sobre el rango elegido, incluidas las subredes asociadas con el rango interno.

Console

  1. En la consola de Google Cloud, ve a la página Rangos internos.

    Ir a Rangos internos

  2. Haz clic en el Nombre del rango interno que deseas describir.

gcloud

Usa el comando internal-ranges describe.

gcloud network-connectivity internal-ranges describe RANGE_NAME

Reemplaza RANGE_NAME por el nombre del rango interno que deseas describir.

API

Realiza una solicitud GET al método internalRanges.get.

GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto superior para el rango interno.
  • RANGE_NAME: el nombre del rango interno que se describirá.

Expande un rango interno

Puedes expandir el rango de direcciones IP que se asigna a un recurso de rango interno, pero no es posible limitar el rango. El rango actualizado debe contener el rango anterior. Si deseas limitar el rango asignado o modificar otro elemento, borra el rango interno y crea uno nuevo.

Expande el rango de IP de CIDR de un rango interno

Para expandir un rango interno mediante la actualización de su rango de IP de CIDR, sigue estos pasos.

Console

  1. En la consola de Google Cloud, ve a la página Rangos internos.

    Ir a Rangos internos

  2. Haz clic en el Nombre del rango interno que deseas actualizar.

  3. Haz clic en Expandir rango.

  4. Haz clic en Rango de IP.

  5. Ingresa un Rango de IP nuevo, que debe contener el rango anterior.

  6. Haz clic en Expandir.

gcloud

Usa el comando internal-ranges update

gcloud network-connectivity internal-ranges update RANGE_NAME \
    --ip-cidr-range=CIDR_RANGE

Reemplaza lo siguiente:

  • RANGE_NAME: el nombre del rango interno.
  • CIDR_RANGE: el rango de CIDR actualizado, que debe contener el rango anterior.

API

Realiza una solicitud PATCH al método internalRanges.patch.

PATCH https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME?updateMask=ipCidrRange
{
  "ipCidrRange": "CIDR_RANGE"
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto superior para el rango interno.
  • RANGE_NAME: el nombre del rango interno.
  • CIDR_RANGE: el rango de CIDR actualizado, que debe contener el rango anterior.

Expande un rango interno mediante la disminución de la longitud de su prefijo

Para expandir un rango interno mediante la disminución de la longitud de su prefijo, sigue estos pasos.

Console

  1. En la consola de Google Cloud, ve a la página Rangos internos.

    Ir a Rangos internos

  2. Haz clic en el Nombre del rango interno que deseas actualizar.

  3. Haz clic en Expandir rango.

  4. Haz clic en Longitud de prefijo.

  5. En la lista Longitud del prefijo, selecciona una longitud de prefijo que sea menor que la longitud del prefijo existente.

  6. Haz clic en Expandir.

gcloud

Usa el comando internal-ranges update

gcloud network-connectivity internal-ranges update RANGE_NAME \
    --prefix-length=PREFIX_LENGTH

Reemplaza lo siguiente:

  • RANGE_NAME: el nombre del rango interno.
  • PREFIX_LENGTH: Lla longitud del prefijo actualizado, que debe ser menor que la longitud del prefijo anterior.

API

Realiza una solicitud PATCH al método internalRanges.patch.

PATCH https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME?updateMask=prefixLength
{
  "prefixLength": PREFIX_LENGTH
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto superior para el rango interno.
  • RANGE_NAME: el nombre del rango interno.
  • PREFIX_LENGTH: Lla longitud del prefijo actualizado, que debe ser menor que la longitud del prefijo anterior.

Borra un rango interno

Puedes borrar un rango interno si no está asociado a un recurso de Google Cloud, como una subred. Para borrar un rango interno asociado con un recurso de Google Cloud, primero borra el recurso asociado.

Console

  1. En la consola de Google Cloud, ve a la página Rangos internos.

    Ir a Rangos internos

  2. Haz clic en el Nombre del rango interno que deseas borrar.

  3. Haz clic en Borrar.

  4. Para confirmar la acción, haz clic en Borrar.

gcloud

Usa el comando internal-ranges delete.

gcloud network-connectivity internal-ranges delete RANGE_TO_DELETE

Reemplaza RANGE_TO_DELETE por el nombre del rango interno que deseas borrar.

API

Realiza una solicitud DELETE al método internalRanges.delete.

DELETE https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/internalRanges/RANGE_NAME

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto superior para el rango interno.
  • RANGE_NAME: el nombre del rango interno.