Class IpamPoolCidrProvisioningOptions
(experimental) Options to provision CIDRs to an IPAM pool.
Inheritance
Implements
Namespace: Amazon.CDK.AWS.ec2.Alpha
Assembly: Amazon.CDK.AWS.ec2.Alpha.dll
Syntax (csharp)
public class IpamPoolCidrProvisioningOptions : Object, IIpamPoolCidrProvisioningOptions
Syntax (vb)
Public Class IpamPoolCidrProvisioningOptions
Inherits Object
Implements IIpamPoolCidrProvisioningOptions
Remarks
Used to create a new IpamPoolCidr
Stability: Experimental
See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipampoolcidr.html
ExampleMetadata: infused
Examples
var stack = new Stack();
var ipam = new Ipam(this, "Ipam", new IpamProps {
OperatingRegions = new [] { "us-west-1" }
});
var ipamPublicPool = ipam.PublicScope.AddPool("PublicPoolA", new PoolOptions {
AddressFamily = AddressFamily.IP_V6,
AwsService = AwsServiceName.EC2,
Locale = "us-west-1",
PublicIpSource = IpamPoolPublicIpSource.AMAZON
});
ipamPublicPool.ProvisionCidr("PublicPoolACidrA", new IpamPoolCidrProvisioningOptions { NetmaskLength = 52 });
var ipamPrivatePool = ipam.PrivateScope.AddPool("PrivatePoolA", new PoolOptions {
AddressFamily = AddressFamily.IP_V4
});
ipamPrivatePool.ProvisionCidr("PrivatePoolACidrA", new IpamPoolCidrProvisioningOptions { NetmaskLength = 8 });
new VpcV2(this, "Vpc", new VpcV2Props {
PrimaryAddressBlock = IpAddresses.Ipv4("10.0.0.0/24"),
SecondaryAddressBlocks = new [] { IpAddresses.AmazonProvidedIpv6(new SecondaryAddressProps { CidrBlockName = "AmazonIpv6" }), IpAddresses.Ipv6Ipam(new IpamOptions {
IpamPool = ipamPublicPool,
NetmaskLength = 52,
CidrBlockName = "ipv6Ipam"
}), IpAddresses.Ipv4Ipam(new IpamOptions {
IpamPool = ipamPrivatePool,
NetmaskLength = 8,
CidrBlockName = "ipv4Ipam"
}) }
});
Synopsis
Constructors
Ipam |
Properties
Cidr | (experimental) Ipv6 CIDR block for the IPAM pool. |
Netmask |
(experimental) Ipv6 Netmask length for the CIDR. |
Constructors
IpamPoolCidrProvisioningOptions()
public IpamPoolCidrProvisioningOptions()
Properties
Cidr
(experimental) Ipv6 CIDR block for the IPAM pool.
public string Cidr { get; set; }
Property Value
System.
Remarks
Default: - pool provisioned without netmask length, need netmask length in this case
Stability: Experimental
NetmaskLength
(experimental) Ipv6 Netmask length for the CIDR.
public Nullable<double> NetmaskLength { get; set; }
Property Value
System.
Remarks
Default: - pool provisioned without netmask length, need cidr range in this case
Stability: Experimental