Skip to content
v2.277.0

Experimental

@aws-cdk/aws-ec2-alpha is an experimental (alpha) package: its API may change in any release, without a major version bump.

SecondaryAddressProps Struct ​

Additional props needed for secondary Address.

Example ​

ts
const stack = new Stack();
const myVpc = new VpcV2(this, 'Vpc',{
      primaryAddressBlock: IpAddresses.ipv4('10.1.0.0/16'),
      secondaryAddressBlocks: [IpAddresses.amazonProvidedIpv6({
      cidrBlockName: 'AmazonProvided',
    })]
    });

const eigw = new EgressOnlyInternetGateway(this, 'EIGW', {
  vpc: myVpc,
});

const routeTable = new RouteTable(this, 'RouteTable', {
  vpc: myVpc,
});

routeTable.addRoute('EIGW', '::/0', { gateway: eigw });
python
stack = Stack()
my_vpc = VpcV2(self, "Vpc",
    primary_address_block=IpAddresses.ipv4("10.1.0.0/16"),
    secondary_address_blocks=[IpAddresses.amazon_provided_ipv6(
        cidr_block_name="AmazonProvided"
    )]
)

eigw = EgressOnlyInternetGateway(self, "EIGW",
    vpc=my_vpc
)

route_table = RouteTable(self, "RouteTable",
    vpc=my_vpc
)

route_table.add_route("EIGW", "::/0", {"gateway": eigw})
java
Stack stack = new Stack();
VpcV2 myVpc = VpcV2.Builder.create(this, "Vpc")
        .primaryAddressBlock(IpAddresses.ipv4("10.1.0.0/16"))
        .secondaryAddressBlocks(List.of(IpAddresses.amazonProvidedIpv6(SecondaryAddressProps.builder()
                .cidrBlockName("AmazonProvided")
                .build())))
        .build();

EgressOnlyInternetGateway eigw = EgressOnlyInternetGateway.Builder.create(this, "EIGW")
        .vpc(myVpc)
        .build();

RouteTable routeTable = RouteTable.Builder.create(this, "RouteTable")
        .vpc(myVpc)
        .build();

routeTable.addRoute("EIGW", "::/0", Map.of("gateway", eigw));
csharp
// Install: dotnet add package Amazon.CDK.AWS.ec2.Alpha
var stack = new Stack();
var myVpc = new VpcV2(this, "Vpc", new VpcV2Props {
    PrimaryAddressBlock = IpAddresses.Ipv4("10.1.0.0/16"),
    SecondaryAddressBlocks = new [] { IpAddresses.AmazonProvidedIpv6(new SecondaryAddressProps {
        CidrBlockName = "AmazonProvided"
    }) }
});

var eigw = new EgressOnlyInternetGateway(this, "EIGW", new EgressOnlyInternetGatewayProps {
    Vpc = myVpc
});

var routeTable = new RouteTable(this, "RouteTable", new RouteTableProps {
    Vpc = myVpc
});

routeTable.AddRoute("EIGW", "::/0", new Dictionary<string, IRouteTarget?> { { "gateway", eigw } });
go
// Install: go get github.com/aws/aws-cdk-go/awsec2alpha/v2
stack := awscdk.Newstack()
myVpc := awsec2alpha.NewVpcV2(this, jsii.String("Vpc"), &VpcV2Props{
	PrimaryAddressBlock: awsec2alpha.IpAddresses_Ipv4(jsii.String("10.1.0.0/16")),
	SecondaryAddressBlocks: []IIpAddresses{
		awsec2alpha.IpAddresses_AmazonProvidedIpv6(&SecondaryAddressProps{
			CidrBlockName: jsii.String("AmazonProvided"),
		}),
	},
})

eigw := awsec2alpha.NewEgressOnlyInternetGateway(this, jsii.String("EIGW"), &EgressOnlyInternetGatewayProps{
	Vpc: myVpc,
})

routeTable := awsec2alpha.NewRouteTable(this, jsii.String("RouteTable"), &RouteTableProps{
	Vpc: myVpc,
})

routeTable.AddRoute(jsii.String("EIGW"), jsii.String("::/0"), map[string]iRouteTarget{
	"gateway": eigw,
})

Properties ​

cidrBlockNamestringcidr_block_namestrcidrBlockNameStringCidrBlockNamestringCidrBlockName*stringrequired#
Required to set Secondary cidr block resource name in order to generate unique logical id for the resource.