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, sigue 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», rellena 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 organizarte mejor 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: selecciona tu 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 procedente de una IBM Cloud Direct Link conexión dedicada o Connect 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.
        • Pasarela 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 de VPC: permite el tráfico de entrada hacia otra zona de disponibilidad de la misma VPC.
        • Internet pública: permite que el tráfico de entrada de Internet pública destinado a una IP flotante se enrute a una IP de siguiente salto de una VPC.
  4. Haz 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, ejecuta 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 configura como « true », esta tabla de enrutamiento se utiliza para enrutar el tráfico procedente de IBM Cloud y Direct Link hacia esta VPC. Para que el enrutamiento se realice correctamente, la VPC no debe tener ya una tabla de enrutamiento en la que esta propiedad esté configurada como « true ». Uno de los siguientes: 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 a « false », esta tabla de enrutamiento queda deseleccionada. Uno de los siguientes: false, true.
--transit-gateway-ingress, --transit-gateway
Si se configura como « true », esta tabla de enrutamiento se utiliza para enrutar el tráfico procedente de « Transit Gateway » hacia esta VPC. Para que el enrutamiento se realice correctamente, la VPC no debe tener ya una tabla de enrutamiento en la que esta propiedad esté configurada como « true ». Uno de los siguientes: false, true.
--vpc-zone-ingress, --vpc-zone
Opcional. Si se configura como « true », esta tabla de enrutamiento se utiliza para enrutar el tráfico procedente de la Internet pública. Para que el enrutamiento se realice correctamente, la VPC no debe tener ninguna tabla de enrutamiento existente en la que esta propiedad esté establecida en « true ». Uno de los siguientes: 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.

Solo se puede configurar la opción de entrada « true » en una única tabla de enrutamiento por VPC, y únicamente si dicha 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 mediante la API

Para crear una tabla de enrutamiento mediante la API, sigue 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: Bearer $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, consulta «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, sigue estos pasos:

  1. Configura tu entorno de Terraform.

  2. Utiliza 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 admita 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 procedente de 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 en 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 recurso « ibm_is_vpc_routing_table », consulta el Registro de Terraform.