Anuncia subredes de VPC específicas

Puedes crear rutas personalizadas anunciadas para limitar las subredes en la red de nube privada virtual (VPC) que anuncia el Cloud Router. Las subredes que anuncias son las únicas visibles para los clientes locales. Cloud Router no anuncia subredes nuevas de manera dinámica, a menos que configures Cloud Router para anunciar todas las subredes. Si eliges anunciar solo subredes específicas y deseas anunciar subredes nuevas, debes agregarlas como rutas anunciadas personalizadas.

En las sesiones de BGP habilitadas para IPv6, puedes configurar rutas anunciadas personalizadas para rangos de subredes IPv6 internas (ULA) y externas (GUA). Para obtener información sobre los tipos de subredes IPv6, consulta Rangos de subredes IPv6.

Para especificar rutas anunciadas personalizadas cuando creas un Cloud Router o configuras una sesión de BGP, consulta Crea Cloud Routers o Establece sesiones de BGP.

Antes de comenzar

gcloud

Si deseas usar los ejemplos de línea de comandos de esta guía, haz lo siguiente:

  1. Instala Google Cloud CLI o actualízala a la última versión.
  2. Configura una región y una zona predeterminadas.

API

Si deseas usar los ejemplos de API de esta guía, configura el acceso a la API.

Especifica rutas anunciadas personalizadas en un Cloud Router

Para especificar rutas anunciadas personalizadas en un Cloud Router existente, sigue estos pasos.

Console

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

    Ir a Cloud Routers

  2. Selecciona el Cloud Router que quieres actualizar.

  3. En la página de detalles del router, haz clic en Editar.

  4. En la sección Rutas anunciadas, en Rutas, selecciona Crear rutas personalizadas.

  5. Desmarca la casilla de verificación Anunciar todas las subredes visibles para Cloud Router si está seleccionada.

  6. Selecciona Agregar ruta personalizada para agregar una ruta anunciada personalizada.

  7. Configura la ruta anunciada personalizada:

    • Fuente: Selecciona una lista de subredes predefinida. Cloud Router hace una lista de todas las subredes disponibles para él, dependiendo del modo de enrutamiento dinámico de la red de VPC.
    • Rango de direcciones IP: puedes modificar el rango de IP de la subred anunciada. Por ejemplo, puedes especificar un rango más acotado para que el Cloud Router anuncie parte de la subred. Puedes especificar rangos IP personalizados de IPv4 e IPv6. Sin embargo, los rangos personalizados IPv6 solo se anuncian en las sesiones de BGP en las que IPv6 está habilitado.

      Si proporcionas un prefijo de dirección IP sin una máscara de subred, interpretarse como una máscara de subred /32 para IPv4 y /128 para IPv6 Para obtener información sobre la cantidad máxima de rutas aprendidas personalizadas que puedes tener, consulta Límites.

    • Descripción: Agrega una descripción que te ayude a identificar el propósito de esta ruta anunciada personalizada y, luego, haz clic en Listo.

  8. Cuando termines de agregar las rutas anunciadas personalizadas, haz clic en Guardar.

gcloud

Antes de comenzar, registra los rangos de IP de las subredes que vas a anunciar.

Ejecuta el comando update. Para especificar los rangos de IP de la subred que deseas anunciar, usa la marca --set-advertisement-ranges. Para agregar rangos de IP a los anuncios existentes, usa la marca --add-advertisement-ranges.

  1. Usa la marca --set-advertisement-ranges. se reemplazan todas las rutas anunciadas personalizadas existentes:

    gcloud compute routers update ROUTER_NAME \
       --advertisement-mode custom \
       --set-advertisement-ranges=ADVERTISED_IP_RANGES
    

    Reemplaza lo siguiente:

    • ROUTER_NAME es el nombre del Cloud Router

    • ADVERTISED_IP_RANGES es el contenido del nuevo array de rangos de direcciones IP. Puedes especificar rangos IP personalizados de IPv4 e IPv6. Sin embargo, los rangos personalizados IPv6 solo se anuncian en las sesiones de BGP en las que IPv6 está habilitado.

      Si proporcionas un prefijo de dirección IP sin una máscara de subred, se interpreta como una máscara de subred /32 para IPv4 y un /128 para IPv6. Para obtener información sobre la cantidad máxima de rutas aprendidas personalizadas que puedes tener, consulta Límites.

    En el siguiente ejemplo, se actualiza el Cloud Router my-router para anunciar las subredes 192.0.2.0/24 y 198.51.100.0/24. Se reemplazan las rutas anunciadas personalizadas existentes:

    gcloud compute routers update my-router \
       --advertisement-mode=custom \
       --set-advertisement-ranges='192.0.2.0/24,198.51.100.0/24'
    

    En el siguiente ejemplo, se actualiza el Cloud Router my-router para anunciar las subredes IPv4 192.0.2.0/24 y 198.51.100.0/24, más la subred IPv6 2001:db8:abcd:12::/64:

    gcloud compute routers update my-router \
       --advertisement-mode=custom \
       --set-advertisement-ranges='192.0.2.0/24,198.51.100.0/24,2001:db8:abcd:12::/64'
    

    Cloud Router anuncia rangos IPv6 solo en las sesiones de BGP que están habilitadas para IPv6.

  2. En el siguiente ejemplo, se usa la marca --add-advertisement-ranges para agregar rangos de IP a un anuncio existente:

    gcloud compute routers update my-router \
       --add-advertisement-ranges='203.0.113.0/24'
    

    En el siguiente ejemplo, se agrega el rango 2001:db8:abcd:12::/64 IPv6 personalizado a los anuncios de Cloud Router:

    gcloud compute routers update my-router \
       --add-advertisement-ranges='2001:db8:abcd:12::/64'
    

    Cloud Router anuncia rangos de IPv6 solo en sesiones de BGP que están habilitadas para IPv6.

Si el grupo de anuncios de tu Cloud Router incluye todas las subredes, quítalo para evitar que Cloud Router anuncie subredes adicionales. Los grupos de anuncios son rangos de IP definidos por Google que Cloud Router anuncia de manera dinámica. Para obtener una lista de todos los grupos de anuncios, consulta la marca set-advertisement-groups en la documentación del SDK de Google.

  1. En el siguiente ejemplo, se usa el comando describe para verificar las rutas anunciadas de Cloud Router:

    gcloud compute routers describe my-router
    
  2. Si el resultado contiene el campo advertisedGroups con el valor all_subnets, quítalo. En el siguiente ejemplo, se usa el comando update con la marca --remove-advertisement-groups:

    gcloud compute routers update my-router \
       --remove-advertisement-groups all_subnets
    

API

Usa el método routers.patch para actualizar el campo bgp.advertisedIpRanges[]. Es posible que también debas actualizar el campo bgp.advertisedGroups[] si actualmente tiene un valor de ALL_SUBNETS.

Los campos bgp.advertisedGroups[] y bgp.advertisedIpRanges[] aceptan arreglos de grupos anunciados y rangos de direcciones IP anunciadas. Cuando aplicas PATCH estos campos, reemplazarás los arreglos existentes por los nuevos en la solicitud.

  1. Envía una solicitud GET para obtener los arreglos actuales de los grupos anunciados y los rangos de IP anunciados en el router. Para obtener más información, consulta Ve el estado y las rutas de Cloud Router.

  2. Envía una solicitud PATCH con arreglos nuevos de grupos anunciados y rangos de direcciones IP anunciadas:

    • Agrega cualquier rango de direcciones IP de subred que quieras en el router al campo bgp.advertisedIpRanges[].
    • Si el campo advertisedGroups[] especifica el valor ALL_SUBNETS, quítalo mediante el envío de un array vacío como se muestra en el siguiente ejemplo. Esto evita que Cloud Router anuncie subredes adicionales.
    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
      "bgp": {
        "advertisedGroups": [],
        "advertisedIpRanges": [
        ADVERTISED_IP_RANGES
       ]
     }
    }
    

    Reemplaza lo siguiente:

    • PROJECT_ID es el proyecto que contiene el Cloud Router
    • REGION es la región en la que se encuentra el Cloud Router
    • ROUTER_NAME es el nombre del Cloud Router
    • ADVERTISED_IP_RANGES es el contenido del nuevo array de rangos de direcciones IP. Puedes especificar rangos de direcciones IP personalizados IPv6, además de rangos de direcciones IPv4. Sin embargo, los rangos de IPv6 se anuncian solo si habilitas el intercambio de IPv6 para esta sesión de BGP.

    Si proporcionas un prefijo de dirección IP sin una máscara de subred, interpretarse como una máscara de subred /32 para IPv4 y /128 para IPv6 Para obtener información sobre la cantidad máxima de rutas aprendidas personalizadas que puedes tener, consulta Límites.

    En el siguiente ejemplo, se incluyen dos rangos de direcciones IPv4 de subred y un rango de direcciones IPv6:

        {
          "range": "192.0.2.0/24",
          "description": "First example range"
        },
        {
          "range": "198.51.100.0/24",
          "description": "Second example range"
        },
        {
          "range": "2001:db8:abcd:12::/64",
          "description: "Third example range"
        }
    

Especifica rutas anunciadas personalizadas para una sesión de BGP

A fin de especificar rutas anunciadas personalizadas para una sesión de BGP existente, sigue estos pasos.

Console

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

    Ir a Cloud Routers

  2. Selecciona el Cloud Router que contiene la sesión de BGP que quieres actualizar.

  3. En la página Detalles del router, selecciona la sesión de BGP que quieres actualizar.

  4. En la página de detalles de la sesión de BGP, haz clic en Editar.

  5. En Rutas, selecciona Crear rutas personalizadas.

  6. Desmarca la casilla de verificación Anunciar todas las subredes visibles para Cloud Router si está seleccionada.

  7. Selecciona Agregar ruta personalizada para agregar una ruta anunciada.

  8. Configura la ruta anunciada personalizada:

    • Fuente: Selecciona una lista de subredes predefinida. Cloud Router hace una lista de todas las subredes disponibles para él, dependiendo del modo de enrutamiento dinámico de la red de VPC.

    • Rango de direcciones IP: puedes modificar el rango de IP de la subred anunciada. Por ejemplo, puedes especificar un rango más acotado para que el Cloud Router anuncie parte de la subred. Puedes especificar rangos de direcciones IP personalizados IPv6, además de rangos de direcciones IPv4. Sin embargo, los rangos de IPv6 se anuncian solo si habilitas el intercambio de IPv6 para esta sesión de BGP.

      Si proporcionas un prefijo de dirección IP sin una máscara de subred, interpretarse como una máscara de subred /32 para IPv4 y /128 para IPv6. Para obtener información sobre la cantidad máxima de rutas aprendidas personalizadas que puedes tener, consulta Límites.

    • Descripción: Agrega una descripción que te ayude a identificar el propósito de esta ruta anunciada personalizada y, luego, haz clic en Listo.

  9. Cuando termines de agregar las rutas personalizadas, haz clic en Guardar.

gcloud

Antes de comenzar, registra los rangos de IP de las subredes que vas a anunciar.

Ejecuta el comando update-bgp-peer. Para especificar los rangos de IP de la subred que deseas anunciar, usa la marca --set-advertisement-ranges. Para agregar rangos de IP a los anuncios existentes, usa la marca --add-advertisement-ranges.

  1. Usa la marca --set-advertisement-ranges. Se reemplazará cualquier anuncio personalizado existente:

    gcloud compute routers update-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME \
       --advertisement-mode=custom \
       --set-advertisement-ranges=ADVERTISED_IP_RANGES
    

    Reemplaza lo siguiente:

    • ROUTER_NAME es el nombre del Cloud Router
    • PEER_NAME es el nombre de tu par de BGP
    • De forma opcional, agrega la marca --enable-ipv6 si agregas rangos de IPv6 personalizados.
    • ADVERTISED_IP_RANGES es el contenido del nuevo array de rangos de direcciones IP. Puedes especificar rangos IP personalizados de IPv4 e IPv6. Sin embargo, los rangos personalizados IPv6 solo se anuncian en las sesiones de BGP en las que IPv6 está habilitado.

      Si proporcionas un prefijo de dirección IP sin una máscara de subred, interpretarse como una máscara de subred /32 para IPv4 y /128 para IPv6 Para obtener información sobre la cantidad máxima de rutas aprendidas personalizadas que puedes tener, consulta Límites.

    En el siguiente ejemplo, se actualiza la sesión de BGP my-bgp-session en el Cloud Router my-router para anunciar las subredes 192.0.2.0/24, 198.51.100.0/24 y 2001:db8:abcd:12::/64. Las rutas anunciadas personalizadas existentes se reemplazan:

    gcloud compute routers update-bgp-peer my-router \
       --peer-name my-bgp-session \
       --enable-ipv6 \
       --advertisement-mode=custom \
       --set-advertisement-ranges='192.0.2.0/24,198.51.100.0/24,2001:db8:abcd:12::/64'
    
  2. En el siguiente ejemplo, se usa la marca --add-advertisement-ranges para agregar rangos de IP a un anuncio existente:

    gcloud compute routers update-bgp-peer my-router \
       --peer-name my-bgp-session \
       --add-advertisement-ranges='203.0.113.0/24'
    

    En el siguiente ejemplo, se agrega la dirección IPv6 personalizada 2001:db8:abcd:12::/64 a las rutas anunciadas de Cloud Router:

    gcloud compute routers update-bgp-peer my-router \
        --peer-name my-bgp-session \
        --enable-ipv6 \
        --add-advertisement-ranges='2001:db8:abcd:12::/64'
    

Si el grupo de anuncios de tu sesión de BGP incluye todas las subredes, quítalo para evitar que Cloud Router anuncie subredes adicionales. Los grupos de anuncios son rangos de IP definidos por Google que Cloud Router anuncia de manera dinámica. Para obtener una lista de todos los grupos de anuncios, consulta la marca set-advertisement-groups en la documentación del SDK de Google.

  1. En el siguiente ejemplo, se usa el comando describe para verificar las rutas anunciadas de Cloud Router:

    gcloud compute routers describe my-router
    
  2. Si la sesión de BGP relacionada contiene el campo advertisedGroups con el valor all_subnets, quítalo. En el siguiente ejemplo, se usa el comando update con la marca --remove-advertisement-groups:

    gcloud compute routers update-bgp-peer my-router \
       --peer-name my-bgp-session \
       --remove-advertisement-groups=all_subnets
    

API

Usa el método routers.patch para actualizar el campo bgpPeers[].

El campo bgpPeers[] acepta un arreglo de pares de BGP. Cuando aplicas PATCH en este campo, reemplazarás el arreglo existente de pares de BGP por el arreglo nuevo incluido en tu solicitud.

  1. Envía una solicitud GET para obtener el arreglo actual de pares de BGP para el router. Para obtener más información, consulta Visualiza la configuración de las sesiones de BGP.

  2. Envía una solicitud PATCH con un array nuevo de pares BGP. Para cada par de BGP para el que quieres agregar rutas anunciadas personalizadas, haz lo siguiente:

    • Agrega cualquier anuncio de rango de direcciones IP de subred que quieras en el campo bgpPeers[].advertisedIpRanges[].

      Si proporcionas un prefijo de dirección IP sin una máscara de subred, interpretarse como una máscara de subred /32 para IPv4 y /128 para IPv6 Para obtener información sobre la cantidad máxima de rutas aprendidas personalizadas que puedes tener, consulta Límites.

    • Si el campo bgpPeers[].advertisedGroups[] especifica el valor ALL_SUBNETS, quítalo para evitar que la sesión de BGP anuncie subredes adicionales.

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
      "bgpPeers": [
        BGP_PEERS
      ]
    }
    

    Reemplaza lo siguiente:

    • PROJECT_ID es el proyecto que contiene el Cloud Router
    • REGION es la región en la que se encuentra el Cloud Router.
    • ROUTER_NAME es el nombre del Cloud Router
    • BGP_PEERS es el contenido del nuevo arreglo de pares de BGP.

    En el siguiente ejemplo, se incluyen dos pares de BGP con rutas anunciadas personalizadas:

        {
          "name": "peer-1",
          "interfaceName": "if-peer-1",
          "ipAddress": "169.254.10.1",
          "peerIpAddress": "169.254.10.2",
          "peerAsn": 64512,
          "enableIpv6": true,
          "advertisedRoutePriority": 100,
          "advertiseMode": "CUSTOM",
          "advertisedGroups": [],
          "advertisedIpRanges": [
            {
              "range": "192.0.2.0/24",
              "description": "First example subnet"
            },
            {
              "range": "198.51.100.0/24",
              "description": "Second example subnet"
            },
            {
              "range": "2001:db8:abcd:12::/64",
              "description: "Third example subnet"
            }
          ]
        },
        {
          "name": "peer-2",
          "interfaceName": "if-peer-2",
          "ipAddress": "169.254.20.1",
          "peerIpAddress": "169.254.20.2",
          "peerAsn": 64513,
          "advertisedRoutePriority": 100,
          "advertiseMode": "CUSTOM",
          "advertisedGroups": [],
          "advertisedIpRanges": [
            {
              "range": "203.0.113.0/24",
              "description": "Fourth example subnet"
            }
          ]
        }
    

¿Qué sigue?