Class Ipam
(experimental) Creates new IPAM with default public and private scope.
Inherited Members
Namespace: Amazon.CDK.AWS.ec2.Alpha
Assembly: Amazon.CDK.AWS.ec2.Alpha.dll
Syntax (csharp)
public class Ipam : Resource, IResource, IConstruct, IDependable, IEnvironmentAware
Syntax (vb)
Public Class Ipam Inherits Resource Implements IResource, IConstruct, IDependable, IEnvironmentAware
Remarks
Stability: Experimental
See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamscope.html
Resource: AWS::EC2::IPAM
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(Construct, string, IIpamProps?) | (experimental) Creates new IPAM with default public and private scope. |
Properties
| IpamId | (experimental) Access to Ipam resource id that can be used later to add a custom private scope to this IPAM. |
| IpamName | (experimental) IPAM name to be used for tagging. |
| OperatingRegions | (experimental) List of operating regions for IPAM. |
| PROPERTY_INJECTION_ID | (experimental) Uniquely identifies this class. |
| PrivateScope | (experimental) Provides access to default private IPAM scope through add pool method. |
| PublicScope | (experimental) Provides access to default public IPAM scope through add pool method. |
| Scopes | (experimental) List of scopes created under this IPAM. |
Methods
| AddScope(Construct, string, IIpamScopeOptions) | (experimental) Function to add custom scope to an existing IPAM Custom scopes can only be private. |
Constructors
Ipam(Construct, string, IIpamProps?)
(experimental) Creates new IPAM with default public and private scope.
public Ipam(Construct scope, string id, IIpamProps? props = null)
Parameters
- scope Construct
- id string
- props IIpamProps
Remarks
Stability: Experimental
Properties
IpamId
(experimental) Access to Ipam resource id that can be used later to add a custom private scope to this IPAM.
public virtual string IpamId { get; }
Property Value
Remarks
Stability: Experimental
Attribute: IpamId
IpamName
(experimental) IPAM name to be used for tagging.
public virtual string? IpamName { get; }
Property Value
Remarks
Default: no tag specified
Stability: Experimental
Attribute: IpamName
OperatingRegions
(experimental) List of operating regions for IPAM.
public virtual string[] OperatingRegions { get; }
Property Value
string[]
Remarks
Stability: Experimental
PROPERTY_INJECTION_ID
(experimental) Uniquely identifies this class.
public static string PROPERTY_INJECTION_ID { get; }
Property Value
Remarks
Stability: Experimental
PrivateScope
(experimental) Provides access to default private IPAM scope through add pool method.
public virtual IIpamScopeBase PrivateScope { get; }
Property Value
Remarks
Usage: To add an Ipam Pool to a default private scope
Stability: Experimental
See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamscope.html
PublicScope
(experimental) Provides access to default public IPAM scope through add pool method.
public virtual IIpamScopeBase PublicScope { get; }
Property Value
Remarks
Usage: To add an Ipam Pool to a default public scope
Stability: Experimental
See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamscope.html
Scopes
(experimental) List of scopes created under this IPAM.
public virtual IIpamScopeBase[] Scopes { get; }
Property Value
Remarks
Stability: Experimental
Methods
AddScope(Construct, string, IIpamScopeOptions)
(experimental) Function to add custom scope to an existing IPAM Custom scopes can only be private.
public virtual IIpamScopeBase AddScope(Construct scope, string id, IIpamScopeOptions options)
Parameters
- scope Construct
- id string
- options IIpamScopeOptions
Returns
Remarks
Stability: Experimental