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. En el caso del tráfico de salida, cuando un paquete abandona una subred, el sistema compara su destino con la tabla de enrutamiento de la zona de la subred para determinar a dónde debe enviarse 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 de VPC consta de cuatro componentes principales:
-
CIDR de destino: especifica el rango de direcciones IP de destino al que se aplica la ruta.
-
Siguiente salto: especifica la dirección IP a la que se reenvía el tráfico que cumple los criterios cuando la acción de la ruta es «
Deliver».Puede editar la siguiente dirección IP de salto para rutas existentes.
-
Zona: Especifica la zona en la que se evalúa la ruta. En el caso de las rutas de salida, la zona suele referirse a aquella en la que se origina el tráfico de origen. En el caso de las rutas de entrada, la zona se refiere a aquella en la que se procesa el tráfico entrante y en la que debe encontrarse el siguiente salto.
-
Acción: Especifica cómo se gestiona el tráfico que cumple los criterios de coincidencia, por ejemplo, reenviándolo, delegándolo o descartándolo.
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 debes configurar las VPC que utilicen tanto direcciones de tipo « non-RFC-1918 » como conectividad pública (direcciones IP flotantes o puertas de enlace
públicas) mediante una ruta personalizada que incluya la nueva acción « Delegate-VPC ». Debes especificar esta acción para los CIDR de destino que cumplan con la normativa « non-RFC-1918 » y que, además, se encuentren fuera de la
VPC, como, por ejemplo, los destinos a los que se puede acceder a través de « Direct Link », « Transit Gateway » o el 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
Antes de crear rutas personalizadas, consulta la sección «Acerca de las tablas de enrutamiento y las rutas» para comprender el comportamiento del enrutamiento de entrada y salida.
Puedes crear una ruta para un servicio de IBM Cloud mediante la consola, la CLI, la API o Terraform.
Crear una ruta en la consola
Para crear una ruta en la consola, sigue estos pasos:
-
Asegúrese de revisar Limitaciones y directrices.
-
Desde la consola IBM Cloud, seleccione el
menú de navegación, luego haga clic en el ícono de Infraestructura
> Red > Tablas de enrutamiento. Aparece la página Tablas de direccionamiento para VPC.
-
Selecciona la VPC asociada a la tabla de enrutamiento que deseas consultar. A continuación, pulse el nombre de la tabla de direccionamiento para ver sus detalles.
-
Desplácese a la sección Rutas y pulse Crear.
-
En el panel lateral «Crear ruta», introduce la siguiente información:
-
Zona: selecciona una zona de disponibilidad para tu ruta.
-
Nombre: escribe 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
0a4. El valor predeterminado es2. Para obtener más información, consulte Determinación de la preferencia de ruta. -
Acción: la acción que se debe 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: selecciona entre « 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.
-
-
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 de VPC desde la CLI, ejecuta 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- El ID o nombre de la VPC.
ROUTING_TABLE- El ID o el nombre de la tabla de enrutamiento de la VPC.
--zone- El nombre de la zona.
--destination- El CIDR de destino de la ruta. Como máximo, dos rutas por zona en una tabla pueden tener el mismo destino, y solo si ambas rutas tienen la acción «
deliver». --action- La acción que se va a realizar con un paquete que coincide con la ruta. Una de las siguientes direcciones:
delegate_vpc,delegate,deliver,drop. Por defecto:deliver --priority- Prioridad de la ruta. Uno de:
0,1,2,3,4. Por defecto:2. Los valores más bajos tienen una prioridad más alta. Si una tabla de enrutamiento personalizada contiene rutas con el mismo destino, se selecciona la ruta con mayor prioridad (valor más bajo). --next-hop- Si la acción es «
deliver», introduce la dirección IP o el ID de conexión VPN del siguiente salto al que se deben enrutar los paquetes. --vpngw- El nombre de la pasarela VPN.
--advertise- Anuncie a un enlace directo, pasarela de tránsito o ambos orígenes de entrada. Uno de
true,false. --name- El nombre de la tabla de enrutamiento de la VPC.
--output- El formato de salida. Valores posibles:
json. --q, quiet- Suprimir la salida detallada.
Ejemplos de CLI
-
Crea una ruta indicando el nombre de la zona, el CIDR de destino y el siguiente salto como dirección IP:
ibmcloud is vpc-routing-table-route-create r134-b754e387-8b06-43be-a5ea-909595a50676 r134-6cfaceb8-99d6-4743-bee8-ebbcbba6a563 --zone us-south-1 --destination 10.2.2.0/24 --action deliver --priority 1 --next-hop 10.0.0.2 --name my-vpc-route -
Crea una ruta especificando el nombre de la zona, el CIDR de destino y el siguiente salto como ID de la conexión VPN:
ibmcloud is vpc-routing-table-route-create r134-b754e387-8b06-43be-a5ea-909595a50676 r134-6cfaceb8-99d6-4743-bee8-ebbcbba6a563 --zone us-south-1 --destination 10.2.2.0/24 --action deliver --priority 1 --next-hop 02h7-1cf20e69-e2ce-400b-b070-0897521e2eb6 --name my-vpc-route
Crear una ruta con la API
Para crear una ruta de destino con la API, sigue estos pasos:
-
Configure el entorno de la API.
-
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> -
Crea una ruta indicando «
next_hop» como dirección IP o ID de conexión VPN:curl -X POST "$vpc_api_endpoint/v1/vpcs/$VpcId/routing_tables/$RoutingTableId/routes?version=$api_version&generation=2" \ -H "Authorization: Bearer $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"} }'curl -X POST "$vpc_api_endpoint/v1/vpcs/$VpcId/routing_tables/$RoutingTableId/routes?version=$api_version&generation=2" \ -H "Authorization: Bearer $iam_token" \ -d '{ "name": "my-new-route", "zone": {"name": "us-south-2"}, "action": "deliver", "destination": "10.10.10.0/24", "next_hop": {"id": "02h7-1cf20e69-e2ce-400b-b070-0897521e2eb6"} }'
Para obtener más información y conocer los parámetros opcionales, consulte Crear una ruta en una tabla de enrutamiento de VPC en la Referencia de la API de VPC.
Creación de una ruta con Terraform
Para crear una ruta con Terraform, siga estos pasos:
-
Configura tu entorno de Terraform.
-
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 ibm_is_vpc_routing_table_route recurso, consulte el Registro de Terraform.