TransitGatewayRoute ​
The TransitGatewayRoute resource allows you to manage AWS EC2 Transit Gateway Routes. This resource is essential for controlling the routing of traffic between multiple VPCs and on-premises networks via a Transit Gateway.
Minimal Example ​
Create a basic Transit Gateway Route with required properties.
ts
import AWS from "alchemy/aws/control";
const transitGatewayRoute = await AWS.EC2.TransitGatewayRoute("basicRoute", {
TransitGatewayRouteTableId: "tgw-rtb-0a1b2c3d4e5f6g7h8",
DestinationCidrBlock: "10.0.0.0/16",
TransitGatewayAttachmentId: "tgw-attach-0a1b2c3d4e5f6g7h8", // Optional but common
Blackhole: false // Default false: Route is active
});
Advanced Configuration ​
Configure a Transit Gateway Route with additional options such as enabling blackhole routing.
ts
const advancedRoute = await AWS.EC2.TransitGatewayRoute("advancedRoute", {
TransitGatewayRouteTableId: "tgw-rtb-0a1b2c3d4e5f6g7h8",
DestinationCidrBlock: "192.168.1.0/24",
Blackhole: true, // Enable blackhole routing for traffic
TransitGatewayAttachmentId: "tgw-attach-0a1b2c3d4e5f6g7h8"
});
Adopting Existing Resources ​
If you want to adopt an existing Transit Gateway Route instead of creating a new one, use the adopt
property.
ts
const adoptedRoute = await AWS.EC2.TransitGatewayRoute("adoptedRoute", {
TransitGatewayRouteTableId: "tgw-rtb-0a1b2c3d4e5f6g7h8",
DestinationCidrBlock: "172.16.0.0/12",
adopt: true // Enable adoption of existing resource
});
Practical Use Case: Interconnecting VPCs ​
Create a route to interconnect two VPCs through a Transit Gateway.
ts
const interconnectRoute = await AWS.EC2.TransitGatewayRoute("interconnectRoute", {
TransitGatewayRouteTableId: "tgw-rtb-0a1b2c3d4e5f6g7h8",
DestinationCidrBlock: "10.1.0.0/16",
TransitGatewayAttachmentId: "tgw-attach-0a1b2c3d4e5f6g7h8"
});