Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Tutorial: Crear una AWS Transit Gateway mediante la línea de AWS comandos
En este tutorial, aprenderás a usar la AWS CLI para crear una pasarela de tránsito y conectar dos VPCs a ella. Creará la pasarela de transporte, conectará ambas y VPCs, a continuación, configurará las rutas necesarias para permitir la comunicación entre la pasarela de transporte y la suya VPCs.
Requisitos previos
Antes de empezar, asegúrate de tener:
AWS CLI instalado y configurado con los permisos adecuados. Si no la tiene AWS CLI instalada, consulte la documentación de la interfaz de línea de AWS comandos.
No VPCs pueden ser idénticos ni superpuestos CIDRs. Para obtener más información, consulte Crear una VPC en la Guía del usuario de Amazon VPC.
Una EC2 instancia en cada VPC. Para conocer los pasos para lanzar una EC2 instancia en una VPC, consulte Lanzar una instancia en la Guía EC2 del usuario de Amazon.
Grupos de seguridad configurados para permitir el tráfico ICMP entre las instancias. Para conocer los pasos para controlar el tráfico mediante grupos de seguridad, consulte Controlar el tráfico de sus AWS recursos mediante grupos de seguridad en la Guía del usuario de Amazon VPC.
Permisos de IAM adecuados para trabajar con pasarelas de tránsito. Para comprobar los permisos de IAM de las pasarelas de tránsito, consulte la sección Gestión de identidades y accesos en las pasarelas de AWS tránsito en la guía.AWS Transit Gateway
Pasos
Paso 1: Crear la gateway de tránsito
Al crear una puerta de enlace de tránsito, AWS crea una tabla de rutas de la puerta de enlace de tránsito predeterminada y la usa como tabla de rutas de asociación predeterminada y tabla de rutas de propagación predeterminada. A continuación, se muestra un ejemplo de create-transit-gateway solicitud en la us-west-2 región. Se options incluyeron más en la solicitud. Para obtener más información sobre el create-transit-gateway comando, incluida una lista de las opciones que puede incluir en la solicitud, consulte create-transit-gateway.
aws ec2 create-transit-gateway \ --description "My Transit Gateway" \ --region us-west-2
A continuación, la respuesta muestra que se creó la pasarela de tránsito. En la respuesta, todos los Options que se devuelven son valores predeterminados.
{ "TransitGateway": { "TransitGatewayId": "tgw-1234567890abcdef0", "TransitGatewayArn": "arn:aws:ec2:us-west-2:123456789012:transit-gateway/tgw-1234567890abcdef0", "State": "pending", "OwnerId": "123456789012", "Description": "My Transit Gateway", "CreationTime": "2025-06-23T17:39:33+00:00", "Options": { "AmazonSideAsn": 64512, "AutoAcceptSharedAttachments": "disable", "DefaultRouteTableAssociation": "enable", "AssociationDefaultRouteTableId": "tgw-rtb-abcdef1234567890a", "DefaultRouteTablePropagation": "enable", "PropagationDefaultRouteTableId": "tgw-rtb-abcdef1234567890a", "VpnEcmpSupport": "enable", "DnsSupport": "enable", "SecurityGroupReferencingSupport": "disable", "MulticastSupport": "disable" } } }
nota
Este comando devuelve información sobre su nueva pasarela de tránsito, incluida su ID. Anota el ID de la pasarela de tránsito (tgw-1234567890abcdef0), ya que lo necesitarás en los pasos siguientes.
Paso 2: Verifica el estado de disponibilidad de la pasarela de tránsito
Cuando creas una pasarela de tránsito, se coloca en un pending estado. El estado pasará de estar pendiente a estar disponible automáticamente, pero hasta que no lo haga, no podrás adjuntar ninguno VPCs hasta que el estado cambie. Para verificar el estado, ejecuta el describe-transit-gatweways comando con el ID de Transit Gateway recién creado junto con la opción de filtros. La filters opción usa Name=state y se Values=available empareja. A continuación, el comando busca verificar si el estado de su pasarela de tránsito se encuentra en un estado disponible. Si es así, aparecerá la respuesta"State": "available". Si está en cualquier otro estado, significa que aún no está disponible para su uso. Espere unos minutos antes de ejecutar el comando.
Para obtener más información acerca del comando describe-transit-gateways, consulte describe-transit-gateways.
aws ec2 describe-transit-gateways \ --transit-gateway-ids tgw-1234567890abcdef0 \ --filters Name=state,Values=available
Espere a que el estado de la puerta de enlace de tránsito cambie de pending a available antes de continuar. En la siguiente respuesta, el State ha cambiado aavailable.
{ "TransitGateways": [ { "TransitGatewayId": "tgw-1234567890abcdef0", "TransitGatewayArn": "arn:aws:ec2:us-west-2:123456789012:transit-gateway/tgw-1234567890abcdef0", "State": "available", "OwnerId": "123456789012", "Description": "My Transit Gateway", "CreationTime": "2022-04-20T19:58:25+00:00", "Options": { "AmazonSideAsn": 64512, "AutoAcceptSharedAttachments": "disable", "DefaultRouteTableAssociation": "enable", "AssociationDefaultRouteTableId": "tgw-rtb-abcdef1234567890a", "DefaultRouteTablePropagation": "enable", "PropagationDefaultRouteTableId": "tgw-rtb-abcdef1234567890a", "VpnEcmpSupport": "enable", "DnsSupport": "enable", "SecurityGroupReferencingSupport": "disable", "MulticastSupport": "disable" }, "Tags": [ { "Key": "Name", "Value": "example-transit-gateway" } ] } ] }
Paso 3: Adjunte el suyo VPCs a su pasarela de transporte
Una vez que su pasarela de transporte público esté disponible, cree un adjunto para cada VPC mediante. create-transit-gateway-vpc-attachment Deberás incluir el transit-gateway-idvpc-id, el y elsubnet-ids.
Para obtener más información sobre el create-transit-vpc attachment comando, consulte create-transit-gateway-vpc-attachment.
En el siguiente ejemplo, el comando se ejecuta dos veces, una para cada VPC.
Para la primera VPC, ejecute lo siguiente con las teclas first vpc_id and: subnet-ids
aws ec2 create-transit-gateway-vpc-attachment \ --transit-gateway-id tgw-1234567890abcdef0 \ --vpc-id vpc-1234567890abcdef0 \ --subnet-ids subnet-1234567890abcdef0
La respuesta muestra que el adjunto se ha adjuntado correctamente. El adjunto se crea en un pending estado. No es necesario cambiar este estado, ya que pasa a ser un available estado automáticamente. Esto podría tardar varios minutos.
{ "TransitGatewayVpcAttachment": { "TransitGatewayAttachmentId": "tgw-attach-1234567890abcdef0", "TransitGatewayId": "tgw-1234567890abcdef0", "VpcId": "vpc-1234567890abcdef0", "VpcOwnerId": "123456789012", "State": "pending", "SubnetIds": [ "subnet-1234567890abcdef0", "subnet-abcdef1234567890" ], "CreationTime": "2025-06-23T18:35:11+00:00", "Options": { "DnsSupport": "enable", "SecurityGroupReferencingSupport": "enable", "Ipv6Support": "disable", "ApplianceModeSupport": "disable" } } }
Para la segunda VPC, ejecute el mismo comando anterior con la segunda vpc_id y: subnet-ids
aws ec2 create-transit-gateway-vpc-attachment \ --transit-gateway-id tgw-1234567890abcdef0 \ --vpc-id vpc-abcdef1234567890 \ --subnet-ids subnet-abcdef01234567890
La respuesta a este comando también muestra un adjunto correcto, con el adjunto actualmente en un pending estado.
{ { "TransitGatewayVpcAttachment": { "TransitGatewayAttachmentId": "tgw-attach-abcdef1234567890", "TransitGatewayId": "tgw-1234567890abcdef0", "VpcId": "vpc-abcdef1234567890", "VpcOwnerId": "123456789012", "State": "pending", "SubnetIds": [ "subnet-fedcba0987654321", "subnet-0987654321fedcba" ], "CreationTime": "2025-06-23T18:42:56+00:00", "Options": { "DnsSupport": "enable", "SecurityGroupReferencingSupport": "enable", "Ipv6Support": "disable", "ApplianceModeSupport": "disable" } } }
Paso 4: Compruebe que los archivos adjuntos de la pasarela de tránsito estén disponibles
Los adjuntos de la pasarela de tránsito se crean en un pending estado inicial. No podrás usar estos archivos adjuntos en tus rutas hasta que el estado cambie aavailable. Esto ocurre automáticamente. Utilice el describe-transit-gateways comando, junto contransit-gateway-id, para comprobar laState. Para obtener más información acerca del comando describe-transit-gateways, consulte describe-transit-gateways.
Ejecute el siguiente comando para comprobar el estado. En este ejemplo, Values los campos opcionales Name y de filtro se pasan a la solicitud:
aws ec2 describe-transit-gateway-vpc-attachments \ --filters Name=transit-gateway-id,Values=tgw-1234567890abcdef0
La siguiente respuesta muestra que ambos archivos adjuntos están en un available estado:
{ "TransitGatewayVpcAttachments": [ { "TransitGatewayAttachmentId": "tgw-attach-1234567890abcdef0", "TransitGatewayId": "tgw-1234567890abcdef0", "VpcId": "vpc-1234567890abcdef0", "VpcOwnerId": "123456789012", "State": "available", "SubnetIds": [ "subnet-1234567890abcdef0", "subnet-abcdef1234567890" ], "CreationTime": "2025-06-23T18:35:11+00:00", "Options": { "DnsSupport": "enable", "SecurityGroupReferencingSupport": "enable", "Ipv6Support": "disable", "ApplianceModeSupport": "disable" }, "Tags": [] }, { "TransitGatewayAttachmentId": "tgw-attach-abcdef1234567890", "TransitGatewayId": "tgw-1234567890abcdef0", "VpcId": "vpc-abcdef1234567890", "VpcOwnerId": "123456789012", "State": "available", "SubnetIds": [ "subnet-fedcba0987654321", "subnet-0987654321fedcba" ], "CreationTime": "2025-06-23T18:42:56+00:00", "Options": { "DnsSupport": "enable", "SecurityGroupReferencingSupport": "enable", "Ipv6Support": "disable", "ApplianceModeSupport": "disable" }, "Tags": [] } ] }
Paso 5: Agrega rutas entre tu pasarela de tránsito y VPCs
Configure las rutas en la tabla de enrutamiento de cada VPC para dirigir el tráfico a la otra VPC a través de la puerta de enlace de tránsito mediante el create-route comando junto con la tabla de enrutamiento for transit-gateway-id each VPC. En el siguiente ejemplo, el comando se ejecuta dos veces, una para cada tabla de enrutamiento. La solicitud incluye la route-table-iddestination-cidr-block, la y transit-gateway-id para cada ruta de VPC que esté creando.
Para obtener más información sobre el create-route comando, consulte create-route.
Para la tabla de rutas de la primera VPC, ejecute el siguiente comando:
aws ec2 create-route \ --route-table-id rtb-1234567890abcdef0 \ --destination-cidr-block 10.2.0.0/16 \ --transit-gateway-id tgw-1234567890abcdef0
Para la tabla de enrutamiento de la segunda VPC, ejecute el siguiente comando. Esta ruta utiliza una route-table-id destination-cidr-block VPC diferente a la primera. Sin embargo, dado que solo usa una puerta de enlace de tránsito, transit-gateway-id se usa la misma.
aws ec2 create-route \ --route-table-id rtb-abcdef1234567890 \ --destination-cidr-block 10.1.0.0/16 \ --transit-gateway-id tgw-1234567890abcdef0
La respuesta se devuelve true para cada ruta e indica que las rutas se crearon.
{ "Return": true }
nota
Sustituya los bloques CIDR de destino por los bloques CIDR reales de su. VPCs
Paso 6: Pruebe la puerta de enlace de tránsito
Para confirmar que la puerta de enlace de tránsito se creó correctamente, conéctese a una EC2 instancia de una VPC, haga ping a una instancia de la otra VPC y, a continuación, ejecute el comando. ping
-
Conéctate a tu EC2 instancia en la primera VPC mediante SSH o Instance Connect EC2
-
Haga ping a la dirección IP privada de la EC2 instancia en la segunda VPC:
ping 10.2.0.50nota
10.2.0.50Sustitúyala por la dirección IP privada real de la EC2 instancia en la segunda VPC.
Si el ping se realiza correctamente, su puerta de enlace de tránsito está configurada correctamente y redirige el tráfico entre las suyas VPCs.
Paso 7: Elimine los archivos adjuntos de la pasarela de transporte y la pasarela de transporte
Cuando ya no necesites la pasarela de tránsito, puedes eliminarla. En primer lugar, debes eliminar todos los archivos adjuntos. Ejecute el delete-transit-gateway-vpc-attachment comando utilizando el transit-gateway-attachment-id para cada archivo adjunto. Tras ejecutar el comando, utilícelo delete-transit-gateway para eliminar la pasarela de tránsito. Para lo siguiente, elimine los dos adjuntos de VPC y la puerta de enlace de tránsito única que se crearon en los pasos anteriores.
importante
Dejarás de incurrir en cargos una vez que elimines todos los archivos adjuntos de Transit Gateway.
-
Elimine los adjuntos de la VPC mediante el
delete-transit-gateway-vpc-attachmentcomando. Para obtener más información sobre eldelete-transit-gateway-vpc-attachmentcomando, consulte delete-transit-gateway-vpc-attachment.Para el primer archivo adjunto, ejecute el siguiente comando:
aws ec2 delete-transit-gateway-vpc-attachment \ --transit-gateway-attachment-id tgw-attach-1234567890abcdef0La respuesta de eliminación del primer adjunto de la VPC devuelve lo siguiente:
{ "TransitGatewayVpcAttachment": { "TransitGatewayAttachmentId": "tgw-attach-1234567890abcdef0", "TransitGatewayId": "tgw-1234567890abcdef0", "VpcId": "vpc-abcdef1234567890", "VpcOwnerId": "123456789012", "State": "deleting", "CreationTime": "2025-06-23T18:42:56+00:00" } }Ejecute el
delete-transit-gateway-vpc-attachmentcomando para el segundo adjunto:aws ec2 delete-transit-gateway-vpc-attachment \ --transit-gateway-attachment-id tgw-attach-abcdef1234567890La respuesta de eliminación del segundo adjunto de la VPC devuelve lo siguiente:
The response returns: { "TransitGatewayVpcAttachment": { "TransitGatewayAttachmentId": "tgw-attach-abcdef1234567890", "TransitGatewayId": "tgw-1234567890abcdef0", "VpcId": "vpc-abcdef1234567890", "VpcOwnerId": "123456789012", "State": "deleting", "CreationTime": "2025-06-23T18:42:56+00:00" } } -
Los archivos adjuntos permanecen en un
deletingestado hasta que se eliminan. Una vez eliminados, podrás eliminar la pasarela de tránsito. Utilice eldelete-transit-gatewaycomando junto contransit-gateway-id. Para obtener más información sobredelete-transit-gatewayel comando, consulte delete-transit-gateway.El siguiente ejemplo elimina
My Transit Gatewaylo que creó en el primer paso anterior:aws ec2 delete-transit-gateway \ --transit-gateway-id tgw-1234567890abcdef0A continuación se muestra la respuesta a la solicitud, que incluye el nombre y el ID de la pasarela de tránsito eliminados, junto con las opciones originales definidas para la pasarela de tránsito cuando se creó.
{ "TransitGateway": { "TransitGatewayId": "tgw-1234567890abcdef0", "TransitGatewayArn": "arn:aws:ec2:us-west-2:123456789012:transit-gateway/tgw-1234567890abcdef0", "State": "deleting", "OwnerId": "123456789012", "Description": "My Transit Gateway", "CreationTime": "2025-06-23T17:39:33+00:00", "Options": { "AmazonSideAsn": 64512, "AutoAcceptSharedAttachments": "disable", "DefaultRouteTableAssociation": "enable", "AssociationDefaultRouteTableId": "tgw-rtb-abcdef1234567890a", "DefaultRouteTablePropagation": "enable", "PropagationDefaultRouteTableId": "tgw-rtb-abcdef1234567890a", "VpnEcmpSupport": "enable", "DnsSupport": "enable", "SecurityGroupReferencingSupport": "disable", "MulticastSupport": "disable" }, "Tags": [ { "Key": "Name", "Value": "example-transit-gateway" } ] } }
Conclusión
Creaste correctamente una pasarela de tránsito, le conectaste dos VPCs , configuraste el enrutamiento entre ellas y verificaste la conectividad. Este sencillo ejemplo demuestra la funcionalidad básica de las pasarelas de AWS tránsito. Para situaciones más complejas, como conectarse a redes locales o implementar configuraciones de enrutamiento más avanzadas, consulte la Guía de AWS Transit Gateways.