IBM Cloud Docs
Creación de una ruta

Creación de una ruta

Puede controlar el flujo del tráfico de red en la VPC configurando rutas. Las rutas de VPC le permiten especificar el siguiente salto para los paquetes, en función de sus direcciones de destino.

Puede haber distintas tablas de direccionamiento para cada zona de la VPC. Para el tráfico de salida, cuando un paquete sale de una subred, el sistema evalúa su destino comparándolo con la tabla de enrutamiento de la zona de la subred para determinar a dónde enviar el paquete a continuación. Cada VPC tiene una tabla de enrutamiento predeterminada que se adjunta a cada subred, a menos que el usuario haya conectado explícitamente la subred a otra diferente.

Una ruta personalizada VPC tiene cuatro componentes principales:

  • El CIDR de destino

  • El salto siguiente al que se direccionará el paquete (cuando la acción es Deliver)

    Puede editar la siguiente dirección IP de salto para rutas existentes.

  • La zona

  • Acción

El tráfico que se origina en la zona especificada de la VPC y que tiene una dirección de destino dentro del CIDR de destino especificado se direcciona al siguiente salto. Si la dirección de destino está dentro del CIDR de destino correspondiente a varias rutas de VPC, se utiliza la ruta más específica. Si el VPC tiene dos o más rutas igualmente específicas, el tráfico se distribuirá por rotación (round-robin) entre cada ruta.

Cada ruta tiene una propiedad de destino, que incluye una longitud de prefijo (/24 en 10.2.0.0/24). El número de longitudes de prefijo exclusivas que admite la tabla de direccionamiento personalizada es de 14. Varias rutas con el mismo prefijo cuentan como un solo prefijo exclusivo.

Los prefijos de direcciones de VPC ya no están restringidos a las direcciones RFC-1918. Ahora debe configurar las VPC que utilizan ambas direcciones non-RFC-1918 y tienen conectividad pública (direcciones IP flotantes o puertas de enlace públicas) utilizando una ruta personalizada que contenga la nueva acción Delegate-VPC. Debe especificar esta acción para CIDR de destino que sean compatibles con non-RFC-1918 y también fuera de la VPC, como para destinos a los que se puede llegar a través de Direct Link, Transit Gateway, o acceso clásico a la VPC. Para más información sobre cuándo utilizar la acción Delegate-VPC, consulte Direccionamiento de las consideraciones para asignaciones de IP registradas por IANA.

La acción Delegate-VPC es necesaria si ambas son verdaderas:

  • La VPC utiliza direcciones no RFC-1918
  • La VPC tiene conectividad pública

La acción Delegate-VPC NO es necesaria si:

  • La VPC solo utiliza direcciones RFC-1918
  • La VPC no tiene conectividad pública

Puede crear una ruta para un servicio IBM Cloud mediante la consola, CLI, API o Terraform.

Crear una ruta en la consola

Para crear una ruta en la consola, siga estos pasos:

  1. Asegúrese de revisar Limitaciones y directrices.

  2. Desde la consola IBM Cloud, seleccione el ícono del menú de navegación, luego haga clic en el ícono de Infraestructura VPC > Red > Tablas de enrutamiento. Aparece la página Tablas de direccionamiento para VPC.

  3. Seleccione la VPC asociada a la tabla de enrutamiento que desea ver. A continuación, pulse el nombre de la tabla de direccionamiento para ver sus detalles.

  4. Desplácese a la sección Rutas y pulse Crear.

  5. En el panel lateral Crear ruta, introduzca la siguiente información:

    • Zona- Seleccione una zona de disponibilidad para su ruta.

    • Nombre- Escriba un nombre para la nueva ruta.

    • CIDR de destino: el CIDR de destino de la ruta (por ejemplo, 10.0.0.0/16).

    • Prioridad-Especifique una prioridad de 0 a 4. El valor predeterminado es 2. Para obtener más información, consulte Determinación de la preferencia de ruta.

    • Acción- La acción a realizar con un paquete que coincida con la ruta. Los valores son:

      • Delegar: direcciona el paquete utilizando la tabla de direccionamiento del sistema.
      • Delegate-VPC: delega en las rutas incorporadas del sistema, ignorando las rutas vinculadas a Internet. Necesario si la VPC utiliza direcciones no RFC-1918 y también tiene conectividad pública. Consulte Direccionamiento de las consideraciones para asignaciones de IP registradas por IANA para obtener detalles.
      • Entregar: direcciona el paquete al siguiente destino del salto. Puede añadir varias rutas con el mismo prefijo de dirección. El direccionador virtual realiza un direccionamiento de varias vías (ECMP) de igual coste utilizando las distintas direcciones IP del salto.
      • Eliminar: elimina el paquete.

    El tráfico de salida de una subred utiliza la tabla de direccionamiento personalizada que está asociada a la subred. Si no se encuentra ninguna ruta coincidente en una tabla de direccionamiento personalizada, el direccionamiento continúa utilizando la tabla de direccionamiento del sistema de VPC. Puede evitar este comportamiento con una ruta predeterminada de la tabla de direccionamiento personalizada con la acción Eliminar.

    • Tipo- Seleccione dirección IP o conexión VPN.

    • Siguiente salto (dirección IP)-Especifique el siguiente salto.

      Puede modificar la dirección IP de salto siguiente para las rutas existentes.

    • Anunciar-Anunciar en un origen de entrada. Actualmente, se da soporte a Direct Link y Transit Gateway. Opcional.

  6. Pulse Guardar para guardar la nueva ruta. La ruta aparece en la página de detalles de la tabla de direccionamiento.

Creación de una ruta desde la CLI

Antes de empezar, configure el entorno de CLI.

Para crear una ruta VPC desde la CLI, ejecute el siguiente comando:

ibmcloud is vpc-routing-table-route-create VPC ROUTING_TABLE --zone ZONE_NAME --destination DESTINATION_CIDR [--action delegate_vpc | delegate | deliver | drop] [--priority PRIORITY] [--next-hop NEXT_HOP [--vpngw VPNGW]][--advertise true | false] [--name NAME] [--output JSON] [-q, --quiet]

Donde:

VPC
Es el ID o nombre de la VPC.
ROUTING_TABLE
Es el ID o nombre de la tabla de enrutamiento de la VPC.
--zone
Es el nombre de la zona.
--destination
Es el CIDR de destino de la ruta. Como máximo, dos rutas por zona de una tabla pueden tener el mismo destino y solo si ambas rutas tienen la acción deliver.
--action
Es la acción a realizar con un paquete que coincide con la ruta. Las acciones son delegate_vpc, delegate, deliver y drop.
--priority
Es la prioridad de la ruta. Los valores son 0, 1, 2, 3 y 4. El valor predeterminado es 2. Los valores menores tienen mayor prioridad. Si una tabla de direccionamiento personalizada contiene rutas con el mismo destino, se selecciona la ruta con la prioridad más alta (valor más pequeño).
--next-hop
Si la acción es entregar, introduzca la dirección IP o el ID de conexión VPN del siguiente salto al que enrutar los paquetes.
--vpngw
Es el nombre de la pasarela VPN.
--advertise
Anuncie a un enlace directo, pasarela de tránsito o ambos orígenes de entrada. Una de verdadero, falso.
--name
Es el nombre de la tabla de enrutamiento de la VPC.
--output
Formatea la salida en JSON.
--q, quiet
Hace que el mandato se ejecute de forma silenciosa y no genera ninguna salida.

Ejemplos de CLI

ibmcloud is vpc-routing-table-route-update 72b27b5c-f4b0-48bb-b954-5becc7c1dcb3 72b27b5c-f4b0-48bb-b954-5becc7c1d456 72b27b5c-f4b0-48bb-b954-5becc7c1d4ef --name my-vpc-route --priority 1

ibmcloud is vpc-routing-table-route-update 72b27b5c-f4b0-48bb-b954-5becc7c1dcb3 72b27b5c-f4b0-48bb-b954-5becc7c1d456 72b27b5c-f4b0-48bb-b954-5becc7c1d4ef --name my-vpc-route --next-hop 10.0.0.2

Crear una ruta con la API

Para crear una ruta de destino con la API, siga estos pasos:

  1. Configure el entorno de la API.

  2. Almacene los valores para las siguientes variables que se van a utilizar en el mandato de la API:

    export VpcId=<your_vpc_id>
    export RoutingTableId=<your_routing_table_id>
    
  3. Cree la ruta:

    curl -X POST "$vpc_api_endpoint/v1/vpcs/$VpcId/routing_tables/$RoutingTableId/routes?version=$api_version&generation=2" \
    -H "Authorization: $iam_token" \
    -d '{
         "name": "my-new-route",
         "zone": {"name": "us-south-2"},
         "action": "deliver",
         "destination": "10.10.10.0/24",
         "next_hop": {"address": "10.0.0.3"}
       }'
    

Creación de una ruta con Terraform

Para crear una ruta con Terraform, siga estos pasos:

  1. Configure su entorno Terraform.

  2. Cree la ruta:

    resource "ibm_is_vpc_routing_table_route" "example" {
      vpc           = ibm_is_vpc.example.id
      routing_table = ibm_is_vpc_routing_table.example.routing_table
      zone          = "us-south-1"
      name          = "custom-route-2"
      destination   = "192.168.4.0/24"
      action        = "deliver"
      next_hop      = ibm_is_vpn_gateway_connection.example.gateway_connection // Example value "10.0.0.4"
    }
    

    Para obtener más información sobre el recurso ibm_is_vpc_routing_table_route, consulte el Registro de Terraform.