Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Tutorial: creare un AWS Transit Gateway utilizzando la AWS riga di comando
In questo tutorial, imparerai come utilizzare il per AWS CLI creare un gateway di transito e VPCs collegarne due. Creerai il gateway di transito, collegherai entrambi VPCs e quindi configurerai i percorsi necessari per abilitare la comunicazione tra il gateway di transito e il tuo VPCs.
Prerequisiti
Prima di iniziare, assicurati di avere:
AWS CLI installato e configurato con le autorizzazioni appropriate. Se non lo hai AWS CLI installato, consulta la documentazione dell'interfaccia a riga di AWS comando.
Non VPCs possono essere né identici né sovrapposti CIDRs. Per ulteriori informazioni, consulta Crea un VPC nella Guida per l'utente di Amazon VPC.
Un' EC2 istanza in ogni VPC. Per i passaggi per avviare un' EC2 istanza in un VPC, consulta Launch an instance nella Amazon EC2 User Guide.
Gruppi di sicurezza configurati per consentire il traffico ICMP tra le istanze. Per i passaggi per controllare il traffico utilizzando i gruppi di sicurezza, consulta Controlla il traffico verso AWS le tue risorse utilizzando i gruppi di sicurezza nella Amazon VPC User Guide.
Autorizzazioni IAM appropriate per lavorare con i gateway di transito. Per verificare le autorizzazioni IAM del gateway di transito, consulta Gestione delle identità e degli accessi in Amazon VPC Transit Gateways nella Guida.AWS Transit Gateway
Fasi
Fase 1: creazione del gateway di transito
Quando crei un gateway di transito,AWS crea una tabella di routing del gateway di transito predefinita e la utilizza come tabella di routing di associazione e tabella di routing di propagazione predefinita. Di seguito viene illustrato un esempio di create-transit-gateway
richiesta nella us-west-2
regione. Nella richiesta options
sono state inserite altre informazioni. Per ulteriori informazioni sul create-transit-gateway
comando, incluso un elenco delle opzioni che è possibile inserire nella richiesta, vedere create-transit-gateway.
aws ec2 create-transit-gateway \ --description "My Transit Gateway" \ --region us-west-2
La risposta mostra quindi che il gateway di transito è stato creato. Nella risposta, Options
i valori restituiti sono tutti valori predefiniti.
{ "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
Questo comando restituisce informazioni sul nuovo gateway di transito, incluso il relativo ID. Prendi nota dell'ID del gateway di transito (tgw-1234567890abcdef0
) poiché ti servirà nei passaggi successivi.
Fase 2: Verifica lo stato di disponibilità del gateway di transito
Quando crei un gateway di transito, questo viene collocato in uno pending
stato. Lo stato passerà automaticamente da pendente a disponibile, ma finché non lo farà non potrai allegarne nessuno VPCs finché non cambierà lo stato. Per verificare lo stato, esegui il describe-transit-gatweways
comando utilizzando l'ID del gateway di transito appena creato insieme all'opzione filters. L'filters
opzione utilizza Name=state
e Values=available
accoppia. Il comando esegue quindi una ricerca per verificare se lo stato del gateway di transito è disponibile. In caso affermativo, viene visualizzata "State": "available"
la risposta. Se si trova in qualsiasi altro stato, non è ancora disponibile per l'uso. Attendi alcuni minuti prima di eseguire il comando.
Per ulteriori informazioni sul comando describe-transit-gateways
, consulta describe-transit-gateways.
aws ec2 describe-transit-gateways \ --transit-gateway-ids tgw-1234567890abcdef0 \ --filters Name=state,Values=available
Attendi che lo stato del gateway di transito cambi da pending
a available
prima di procedere. Nella risposta seguente, State
è cambiato inavailable
.
{ "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" } ] } ] }
Fase 3: Collega il tuo VPCs al tuo gateway di transito
Una volta che il gateway di transito è disponibile, crea un allegato per ogni VPC utilizzando il. create-transit-gateway-vpc-attachment
Dovrai includere il transit-gateway-id
vpc-id
, il e ilsubnet-ids
.
Per ulteriori informazioni sul create-transit-vpc attachment
comando, vedere create-transit-gateway-vpc-attachment.
Nell'esempio seguente, il comando viene eseguito due volte, una volta per ogni VPC.
Per il primo VPC esegui quanto segue utilizzando il primo vpc_id
e: subnet-ids
aws ec2 create-transit-gateway-vpc-attachment \ --transit-gateway-id tgw-1234567890abcdef0 \ --vpc-id vpc-1234567890abcdef0 \ --subnet-ids subnet-1234567890abcdef0
La risposta mostra l'allegato riuscito. L'allegato viene creato in uno pending
stato. Non è necessario modificare questo stato poiché passa automaticamente a uno available
stato. Questo processo potrebbe richiedere diversi minuti.
{ "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" } } }
Per il secondo VPC, esegui lo stesso comando di cui sopra usando il secondo vpc_id
e: subnet-ids
aws ec2 create-transit-gateway-vpc-attachment \ --transit-gateway-id tgw-1234567890abcdef0 \ --vpc-id vpc-abcdef1234567890 \ --subnet-ids subnet-abcdef01234567890
La risposta a questo comando mostra anche un allegato riuscito, con l'allegato attualmente in uno pending
stato.
{ { "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" } } }
Fase 4: Verificare che gli allegati del gateway di transito siano disponibili
Gli allegati del gateway di transito vengono creati in uno stato inizialepending
. Non potrai utilizzare questi allegati nei tuoi percorsi finché lo stato non cambierà a. available
Ciò avviene automaticamente. Usa il describe-transit-gateways
comando, insieme atransit-gateway-id
, per controllare ilState
. Per ulteriori informazioni sul comando describe-transit-gateways
, consulta describe-transit-gateways.
Eseguite il comando seguente per verificare lo stato. In questo esempio, i campi opzionali Name
e i Values
filtri vengono passati nella richiesta:
aws ec2 describe-transit-gateway-vpc-attachments \ --filters Name=transit-gateway-id,Values=tgw-1234567890abcdef0
La risposta seguente mostra che entrambi gli allegati sono in uno available
stato:
{ "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": [] } ] }
Passaggio 5: aggiungi percorsi tra il tuo gateway di transito e VPCs
Configura i percorsi nella tabella di routing di ogni VPC per indirizzare il traffico verso l'altro VPC attraverso il gateway di transito utilizzando il create-route
comando insieme alla tabella di routing for transit-gateway-id
each VPC. Nell'esempio seguente, il comando viene eseguito due volte, una volta per ogni tabella di routing. La richiesta include il route-table-id
destination-cidr-block
, e transit-gateway-id
per ogni route VPC che stai creando.
Per ulteriori informazioni sul create-route
comando, consulta create-route.
Per la prima tabella di routing del VPC esegui il seguente comando:
aws ec2 create-route \ --route-table-id rtb-1234567890abcdef0 \ --destination-cidr-block 10.2.0.0/16 \ --transit-gateway-id tgw-1234567890abcdef0
Per la tabella di routing del secondo VPC esegui il seguente comando. Questo percorso utilizza un route-table-id
VPC destination-cidr-block
diverso dal primo. Tuttavia, poiché si utilizza un solo gateway di transito, transit-gateway-id
viene utilizzato lo stesso.
aws ec2 create-route \ --route-table-id rtb-abcdef1234567890 \ --destination-cidr-block 10.1.0.0/16 \ --transit-gateway-id tgw-1234567890abcdef0
La risposta viene restituita true
per ogni percorso, indicando che i percorsi sono stati creati.
{ "Return": true }
Nota
Sostituisci i blocchi CIDR di destinazione con i blocchi CIDR effettivi del tuo. VPCs
Passaggio 6: testare il gateway di transito
Puoi confermare che il gateway di transito è stato creato correttamente connettendoti a un' EC2 istanza in un VPC e eseguendo il ping di un'istanza nell'altro VPC, quindi eseguendo il comando. ping
-
Connettiti alla tua EC2 istanza nel primo VPC tramite SSH o Instance Connect EC2
-
Esegui il ping dell'indirizzo IP privato dell' EC2 istanza nel secondo VPC:
ping 10.2.0.50
Nota
Sostituiscilo
10.2.0.50
con l'indirizzo IP privato effettivo dell' EC2 istanza nel secondo VPC.
Se il ping ha esito positivo, il gateway di transito è configurato correttamente e il traffico viene instradato tra di voi. VPCs
Passo 7: Eliminare gli allegati del gateway di transito e il gateway di transito
Quando non è più necessario il gateway di transito, è possibile eliminarlo. Innanzitutto, è necessario eliminare tutti gli allegati. Esegui il delete-transit-gateway-vpc-attachment
comando utilizzando il comando transit-gateway-attachment-id
per ogni allegato. Dopo aver eseguito il comando, utilizzare delete-transit-gateway
per eliminare il gateway di transito. Per quanto segue, elimina i due allegati VPC e il gateway di transito singolo creati nei passaggi precedenti.
Importante
Smetterai di incorrere in addebiti una volta eliminati tutti gli allegati del gateway di transito.
-
Eliminare gli allegati VPC utilizzando il comando.
delete-transit-gateway-vpc-attachment
Per ulteriori informazioni suldelete-transit-gateway-vpc-attachment
comando, vedere delete-transit-gateway-vpc -attachment.Per il primo allegato, esegui il comando seguente:
aws ec2 delete-transit-gateway-vpc-attachment \ --transit-gateway-attachment-id tgw-attach-1234567890abcdef0
La risposta di eliminazione per il primo allegato VPC restituisce quanto segue:
{ "TransitGatewayVpcAttachment": { "TransitGatewayAttachmentId": "tgw-attach-1234567890abcdef0", "TransitGatewayId": "tgw-1234567890abcdef0", "VpcId": "vpc-abcdef1234567890", "VpcOwnerId": "123456789012", "State": "deleting", "CreationTime": "2025-06-23T18:42:56+00:00" } }
Esegui il
delete-transit-gateway-vpc-attachment
comando per il secondo allegato:aws ec2 delete-transit-gateway-vpc-attachment \ --transit-gateway-attachment-id tgw-attach-abcdef1234567890
La risposta di eliminazione per il secondo allegato VPC restituisce quanto segue:
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" } }
-
Gli allegati rimangono in uno
deleting
stato finché non vengono eliminati. Una volta eliminato, puoi eliminare il gateway di transito. Usa ildelete-transit-gateway
comando insieme atransit-gateway-id
. Per ulteriori informazioni suldelete-transit-gateway
comando, vedere delete-transit-gateway.L'esempio seguente elimina ciò
My Transit Gateway
che è stato creato nel primo passaggio precedente:aws ec2 delete-transit-gateway \ --transit-gateway-id tgw-1234567890abcdef0
Di seguito viene mostrata la risposta alla richiesta, che include l'ID e il nome del gateway di transito eliminati, insieme alle opzioni originali impostate per il gateway di transito al momento della creazione.
{ "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" } ] } }
Conclusioni
Hai creato con successo un gateway di transito, ne hai collegati due VPCs , configurato il routing tra di essi e hai verificato la connettività. Questo semplice esempio dimostra le funzionalità di base dei gateway di transito Amazon VPC. Per scenari più complessi, come la connessione a reti locali o l'implementazione di configurazioni di routing più avanzate, consulta la Amazon VPC Transit Gateways User Guide.