Creación de una tabla de direccionamiento

Cree una tabla de direccionamiento para definir reglas para reenviar tráfico de red a través de la mejor vía de acceso hacia su destino. Por ejemplo, una tabla de direccionamiento proporciona información para enviar un paquete de datos al siguiente salto en su ruta a través de la red.

Antes de empezar

Antes de crear una tabla de enrutamiento, asegúrese de que dispone de al menos una VPC y revise y respete las limitaciones y directrices de las tablas de enrutamiento.

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

Creación de una tabla de enrutamiento en la consola

Para crear una tabla de enrutamiento en la consola, siga estos pasos:

  1. Desde la consola IBM Cloud, seleccione el icono Menú del menú Navegación y, a continuación, haga clic en el icono VPC de infraestructura > Red > Tablas de enrutamiento. Aparece la página Tablas de direccionamiento para VPC.

  2. Pulse Crear en la parte superior derecha de la página.

  3. En la página Tabla de enrutamiento para el aprovisionamiento de VPC, complete la siguiente información:

    • Escriba un nombre exclusivo para la tabla de direccionamiento.

    • Seleccione la nube privada virtual que desea asociar con la tabla de direccionamiento.

    • Etiquetas: (opcional) Añade etiquetas para ayudarte a organizar y encontrar tus recursos. Puede añadir más etiquetas posteriormente. Para obtener más información, consulte Cómo trabajar con etiquetas.

    • Etiquetas de gestión de acceso - (Opcional) Añada etiquetas de gestión de acceso a los recursos para ayudar a organizar las relaciones de control de acceso. El único formato admitido para las etiquetas de gestión de accesos es key:value. Para obtener más información, consulte Control del acceso a los recursos mediante etiquetas.

    • Nube privada virtual: seleccione su VPC.

    • En la sección Tráfico, puede seleccionar entre estas funciones opcionales:

      • Acepta rutas de (opcional)- Elija qué recursos pueden crear rutas en la tabla de enrutamiento. Puede seleccionar el conmutador para servidor VPN, pasarela VPN o ambos.

        En el caso de las puertas de enlace VPN basadas en políticas, las rutas no se detectan automáticamente. La tabla de enrutamiento debe configurarse para aceptar rutas de la puerta de enlace VPN, y las rutas propagadas se limitan a los prefijos CIDR definidos en la política VPN. Las puertas de enlace VPN basadas en rutas con BGP anuncian dinámicamente las rutas aprendidas. Para obtener más información sobre cómo definir prefijos CIDR para VPN basadas en políticas, consulte Agregar conexiones a una puerta de enlace VPN.

        Las rutas del servidor VPN se derivan del conjunto de direcciones del cliente y de cualquier ruta de cliente configurada, y se propagan cuando la tabla de enrutamiento está configurada para aceptar rutas del servidor VPN.

      • Origen del tráfico (opcional): seleccione el origen del tráfico que utilizará esta tabla de enrutamiento para dirigir su tráfico a la VPC.

        • Direct Link- Permite el tráfico de entrada desde una conexión IBM Cloud Direct Link dedicada o conectada a una ubicación local. Opcionalmente, puede anunciar rutas a un enlace directo, que no estén en el rango de prefijos de direcciones de la VPC.
        • Puerta de enlace de tránsito: permite el tráfico de entrada desde una IBM Cloud Transit Gateway a otra VPC o infraestructura clásica. Opcionalmente, puede anunciar rutas a una pasarela de tránsito, que no estén en el rango de prefijos de direcciones de la VPC.
        • Zona VPC: permite el tráfico de entrada a otra zona de disponibilidad de la misma VPC.
        • Internet público: permite que el tráfico de entrada de Internet público destinado a una IP flotante se enrute a una IP de siguiente salto de VPC.
  4. Haga clic en Crear tabla de enrutamiento.

Creación de una tabla de enrutamiento desde la CLI

Antes de empezar, configure su entorno CLI.

Para crear una tabla de enrutamiento desde la CLI, ejecute el siguiente comando :

ibmcloud is vpc-routing-table-create VPC [--name NAME] [--direct-link-ingress false | true] [--internet-ingress, --internet false | true] [--transit-gateway-ingress false | true] [--vpc-zone-ingress false | true] [--accept-routes-from-resource-type-filters, --ar-rtf vpn_server | vpn_gateway] [--advertise-routes-to direct_link | transit_gateway | direct_link, transit_gateway] [--output JSON] [-q, --quiet]

Donde:

VPC
Es el ID o el nombre de la VPC.
--name
Es el nombre de la tabla de enrutamiento de la VPC.
--direct-link-ingress, --direct-link
Opcional. Si se establece en true, esta tabla de enrutamiento se utiliza para enrutar el tráfico que se origina en IBM Cloud Direct Link a esta VPC. Para que el enrutamiento se realice correctamente, la VPC no debe tener ya una tabla de enrutamiento con esta propiedad establecida en true. Uno de: false, true.
--internet-ingress, --internet
Indica si esta tabla de direccionamiento se utiliza para direccionar el tráfico que se origina en Internet. Al actualizar a, true se selecciona esta tabla de enrutamiento, siempre que ninguna otra tabla de enrutamiento de la VPC tenga ya esta propiedad establecida en true. Al actualizar, false se deselecciona esta tabla de enrutamiento. Uno de: false, true.
--transit-gateway-ingress, --transit-gateway
Si se establece en true, esta tabla de enrutamiento se utiliza para enrutar el tráfico que se origina en Transit Gateway a esta VPC. Para que el enrutamiento se realice correctamente, la VPC no debe tener ya una tabla de enrutamiento con esta propiedad establecida en true. Uno de: false, true.
--vpc-zone-ingress, --vpc-zone
Opcional. Si se establece en true, esta tabla de enrutamiento se utiliza para enrutar el tráfico que se origina en la Internet pública. Para que el enrutamiento se realice correctamente, la VPC no debe tener una tabla de enrutamiento existente con esta propiedad establecida en true. Uno de: false, true.
--accept-routes-from-resource-type-filters, --ar-rtf
Filtros de tipo de recurso separados por comas que pueden crear rutas en esta tabla de enrutamiento. Uno de: vpn_server, vpn_gatewa.
--advertise_routes_to TARGETS
Opcional. Es una lista separada por comas de destinos de anuncios para rutas en esta tabla de enrutamiento. Actualmente, direct_link y transit_gateway son los valores permitidos. direct_link requiere que direct-link-ingress se establezca en true. transit_gateway requiere que transit—gateway-ingress se establezca en true. Todas las rutas de la tabla de enrutamiento con la opción advertise establecida en true se anuncian a las fuentes de entrada especificadas por 'advertise_routes_to'.
--output
Es el formato de salida. Valores posibles: JSON.
-q, --quiet
Suprime la salida verbosa.

Las rutas con una acción de entrega se tratan como drop a menos que el siguiente salto sea una dirección IP vinculada a una interfaz de red en una subred de la zona de la ruta. Por lo tanto, si un paquete entrante coincide con una ruta cuyo siguiente salto es una dirección IP con destino a Internet o una conexión de pasarela VPN, el paquete se descarta.

Puede establecer una opción de entrada true en una sola tabla de enrutamiento por VPC, y solo si esa tabla de enrutamiento no está asociada a ninguna subred.

Ejemplos de CLI

ibmcloud is vpc-routing-table-create 72b27b5c-f4b0-48bb-b954-5becc7c1dcb3 --name my-vpc-routing-table -—advertise-routes-to direct_link --direct-link-ingress true -—output JSON

ibmcloud is vpc-routing-table-create my-vpc --name my-vpc-routing-table --advertise-routes-to transit_gateway —-transit-gateway-ingress true --output JSON

ibmcloud is vpc-routing-table-create my-vpc --name my-vpc-routing-table --advertise-routes-to direct_link, transit_gateway --direct-link-ingress true —transit-gateway-ingress true -—output JSON

ibmcloud is vpc-routing-table-create 979b4bc6-f018-40a2-92f5-0b1cf777b55d --name test-vpc-cli-routing-tb1 --direct-link-ingress false --internet-ingress false --transit-gateway-ingress false --vpc-zone-ingress true

Creación de una tabla de enrutamiento con la API

Para crear una tabla de enrutamiento con la API, siga estos pasos:

  1. Configure el entorno de la API.

  2. Almacene el valor VpcId en una variable que se va a utilizar en el mandato de la API:

    export VpcId=<your_vpc_id>
    
  3. Cree la tabla de direccionamiento.

    Tabla de direccionamiento de salida:

    curl -X POST \
    "$vpc_api_endpoint/v1/vpcs/$VpcId/routing_tables?version=$api_version&generation=2" \
    -H "Authorization: ${iam_token}" \
    -d '{
          "name": "test-routing-table"
        }'
    

    Tabla de direccionamiento de entrada:

       curl -X POST "$vpc_api_endpoint/v1/vpcs/$VpcId/routing_tables?version=$api_version&generation=2" \
       -H "Authorization: $iam_token" \
       -d '{
             "name": "my-ingress-routing-table",
             "route_direct_link_ingress": true
           }'
    

Para obtener más información y conocer los parámetros opcionales, consulte Crear una tabla de enrutamiento para una VPC en la Referencia de la API de VPC.

Creación de una tabla de enrutamiento con Terraform

Para crear una tabla de enrutamiento con Terraform, siga estos pasos:

  1. Configure su entorno Terraform.

  2. Utilice uno de los siguientes ejemplos:

    • Para crear una tabla de enrutamiento:

      resource "ibm_is_vpc_routing_table" "example" {
        vpc                           = ibm_is_vpc.example.id
        name                          = "example-vpc-routing-table"
        route_direct_link_ingress     = true
      }
      
    • Para crear una tabla de enrutamiento que acepte rutas creadas desde un servidor VPN:

      resource "ibm_is_vpc_routing_table" "example" {
        vpc                              = ibm_is_vpc.example.id
        name                             = "example-vpc-routing-table"
        route_direct_link_ingress        = true
        accept_routes_from_resource_type = ["vpn_server"]
      }
      
    • Para crear una tabla de enrutamiento que dirija el tráfico originado en IBM Cloud Direct Link a esta VPC:

      resource "ibm_is_vpc_routing_table" "is_vpc_routing_table_instance" {
        vpc                           = ibm_is_vpc.example.id
        name                          = "example-vpc-routing-table"
        route_direct_link_ingress     = true
        route_transit_gateway_ingress = false
        route_vpc_zone_ingress        = false
        advertise_routes_to           = ["direct_link", "transit_gateway"]
      }
      
    • Para crear una tabla de enrutamiento que incluya etiquetas de usuario y etiquetas de acceso:

      resource "ibm_is_vpc_routing_table" "example" {
        tags                          = ["rt-tag"]
        access_tags                   = ["access:dev"]
        vpc                           = ibm_is_vpc.example.id
        name                          = "example-vpc-routing-table"
        route_direct_link_ingress     = true
        route_transit_gateway_ingress = false
        route_vpc_zone_ingress        = false
      }
      

      El CRN y el grupo de recursos se incluyen en las respuestas y las fuentes de datos.

      resource "ibm_is_subnet" "example" {
        name               = "example-subnet"
        vpc                = ibm_is_vpc.example.id
        zone               = "us-south-1"
        ipv4_cidr_block    = "10.240.0.0/24"
        routing_table_crn  = ibm_is_vpc_routing_table.example.crn
      }
      

Para obtener documentación sobre el ibm_is_vpc_routing_table recurso, consulte el Registro de Terraform.