Interface IpamOptions
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
IpamOptions.Jsii$Proxy
@Generated(value="jsii-pacmak/1.116.0 (build 0eddcff)",
date="2025-10-24T13:34:49.806Z")
@Stability(Experimental)
public interface IpamOptions
extends software.amazon.jsii.JsiiSerializable
(experimental) Options for configuring an IP Address Manager (IPAM).
For more information, see the
}.
invalid @link
{@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipam.html
Example:
Stack stack = new Stack();
Ipam ipam = Ipam.Builder.create(this, "Ipam")
.operatingRegions(List.of("us-west-1"))
.build();
IIpamPool ipamPublicPool = ipam.publicScope.addPool("PublicPoolA", PoolOptions.builder()
.addressFamily(AddressFamily.IP_V6)
.awsService(AwsServiceName.EC2)
.locale("us-west-1")
.publicIpSource(IpamPoolPublicIpSource.AMAZON)
.build());
ipamPublicPool.provisionCidr("PublicPoolACidrA", IpamPoolCidrProvisioningOptions.builder().netmaskLength(52).build());
IIpamPool ipamPrivatePool = ipam.privateScope.addPool("PrivatePoolA", PoolOptions.builder()
.addressFamily(AddressFamily.IP_V4)
.build());
ipamPrivatePool.provisionCidr("PrivatePoolACidrA", IpamPoolCidrProvisioningOptions.builder().netmaskLength(8).build());
VpcV2.Builder.create(this, "Vpc")
.primaryAddressBlock(IpAddresses.ipv4("10.0.0.0/24"))
.secondaryAddressBlocks(List.of(IpAddresses.amazonProvidedIpv6(SecondaryAddressProps.builder().cidrBlockName("AmazonIpv6").build()), IpAddresses.ipv6Ipam(IpamOptions.builder()
.ipamPool(ipamPublicPool)
.netmaskLength(52)
.cidrBlockName("ipv6Ipam")
.build()), IpAddresses.ipv4Ipam(IpamOptions.builder()
.ipamPool(ipamPrivatePool)
.netmaskLength(8)
.cidrBlockName("ipv4Ipam")
.build())))
.build();
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classA builder forIpamOptionsstatic final classAn implementation forIpamOptions -
Method Summary
Modifier and TypeMethodDescriptionstatic IpamOptions.Builderbuilder()(experimental) Required to set Secondary cidr block resource name in order to generate unique logical id for the resource.default IIpamPool(experimental) Ipv4 or an Ipv6 IPAM pool Only required when using AWS Ipam.default Number(experimental) CIDR Mask for Vpc Only required when using AWS Ipam.Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getCidrBlockName
(experimental) Required to set Secondary cidr block resource name in order to generate unique logical id for the resource. -
getIpamPool
(experimental) Ipv4 or an Ipv6 IPAM pool Only required when using AWS Ipam.Default: - no pool attached to VPC secondary address
-
getNetmaskLength
(experimental) CIDR Mask for Vpc Only required when using AWS Ipam.Default: - no netmask length for IPAM attached to VPC secondary address
-
builder
- Returns:
- a
IpamOptions.BuilderofIpamOptions
-