Skip to content

VpcCidrBlockAssociation

This class encapsulates and extends the ROS resource type ALIYUN::VPC::VpcCidrBlockAssociation, which is used to add a secondary CIDR block to a virtual private cloud (VPC).

Initializers

import ros_cdk_vpc
ros_cdk_vpc.VpcCidrBlockAssociation(
  scope: Construct,
  id: str,
  vpc_id: typing.Union[str, IResolvable],
  ipam_pool_id: typing.Union[str, IResolvable] = None,
  i_pv6_cidr_block: typing.Union[str, IResolvable] = None,
  ipv6_cidr_mask: typing.Union[typing.Union[int, float], IResolvable] = None,
  ipv6_isp: typing.Union[str, IResolvable] = None,
  ip_version: typing.Union[str, IResolvable] = None,
  secondary_cidr_block: typing.Union[str, IResolvable] = None,
  secondary_cidr_mask: typing.Union[typing.Union[int, float], IResolvable] = None,
  enable_resource_property_constraint: bool = None
)
Name Type Description
scope ros_cdk_core.Construct No description.
id str No description.
vpc_id typing.Union[str, ros_cdk_core.IResolvable] Property vpcId: The ID of the VPC to which you want to add a secondary CIDR block.
ipam_pool_id typing.Union[str, ros_cdk_core.IResolvable] Property ipamPoolId: The ID of the IP Address Manager (IPAM) pool that contains IPv4 addresses.
i_pv6_cidr_block typing.Union[str, ros_cdk_core.IResolvable] Property iPv6CidrBlock: The IPv6 CIDR block to be added.
ipv6_cidr_mask typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] Property ipv6CidrMask: Add an IPv6 network segment to the VPC from the IPAM address pool by specifying a mask.
ipv6_isp typing.Union[str, ros_cdk_core.IResolvable] Property ipv6Isp: The type of the IPv6 CIDR block.
ip_version typing.Union[str, ros_cdk_core.IResolvable] Property ipVersion: The version of the IP address.
secondary_cidr_block typing.Union[str, ros_cdk_core.IResolvable] Property secondaryCidrBlock: The IPv4 CIDR block to be added.
secondary_cidr_mask typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] Property secondaryCidrMask: Add an additional network segment to the VPC from the iPam address pool by entering a mask.
enable_resource_property_constraint bool No description.

scopeRequired

  • Type: ros_cdk_core.Construct

idRequired

  • Type: str

vpc_idRequired

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property vpcId: The ID of the VPC to which you want to add a secondary CIDR block.


ipam_pool_idOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property ipamPoolId: The ID of the IP Address Manager (IPAM) pool that contains IPv4 addresses.


i_pv6_cidr_blockOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property iPv6CidrBlock: The IPv6 CIDR block to be added.

Note You must and can specify only one of SecondaryCidrBlock and Ipv6CidrBlock.


ipv6_cidr_maskOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

Property ipv6CidrMask: Add an IPv6 network segment to the VPC from the IPAM address pool by specifying a mask.

Note When adding an additional IPv6 network segment to the VPC from the specified IPAM address pool, at least one of Ipv6CidrBlock or Ipv6CidrMask must be specified.


ipv6_ispOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property ipv6Isp: The type of the IPv6 CIDR block.

Valid values: BGP (default) ChinaMobile ChinaUnicom ChinaTelecom Note If your Alibaba Cloud account is allowed to activate single-ISP bandwidth, you can set this parameter to ChinaTelecom, ChinaUnicom, or ChinaMobile.


ip_versionOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property ipVersion: The version of the IP address.

Valid values: IPV4: the IPv4 address. IPV6: the IPv6 address. If you set IpVersion to IPV6 and do not specify SecondaryCidrBlock, you can add a secondary IPv6 CIDR block to the VPC.


secondary_cidr_blockOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property secondaryCidrBlock: The IPv4 CIDR block to be added.

Take note of the following requirements: You can specify one of the following standard IPv4 CIDR blocks or their subnets as the secondary IPv4 CIDR block of the VPC: 192.168.0.0/16, 172.16.0.0/12, and 10.0.0.0/8. You can also use a custom CIDR block other than 100.64.0.0/10, 224.0.0.0/4, 127.0.0.0/8, 169.254.0.0/16, or their subnets as the secondary IPv4 CIDR block of the VPC. The CIDR block must meet the following requirements: The CIDR block cannot start with 0. The subnet mask must be 8 to 28 bits in length. The CIDR block cannot overlap with the primary CIDR block or an existing secondary CIDR block of the VPC. Note You must and can specify only one of SecondaryCidrBlock and Ipv6CidrBlock.


secondary_cidr_maskOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

Property secondaryCidrMask: Add an additional network segment to the VPC from the iPam address pool by entering a mask.

Explain that the designated iPam address pool adds additional network segments to VPC, and the parameter SecondaryCidrblock or SecondaryCidrmask inputs at least one.


enable_resource_property_constraintOptional

  • Type: bool

Methods

Name Description
to_string Returns a string representation of this construct.
synthesize Allows this construct to emit artifacts into the cloud assembly during synthesis.
add_condition No description.
add_count No description.
add_dependency No description.
add_resource_desc No description.
apply_removal_policy No description.
fetch_condition No description.
fetch_dependency No description.
fetch_resource_desc No description.
get_att No description.
set_metadata No description.

to_string

def to_string() -> str

Returns a string representation of this construct.

synthesize

def synthesize(
  session: ISynthesisSession
) -> None

Allows this construct to emit artifacts into the cloud assembly during synthesis.

This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.

sessionRequired

  • Type: ros_cdk_core.ISynthesisSession

The synthesis session.


add_condition

def add_condition(
  condition: RosCondition
) -> None

conditionRequired

  • Type: ros_cdk_core.RosCondition

add_count

def add_count(
  count: typing.Union[typing.Union[int, float], IResolvable]
) -> None

countRequired

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

add_dependency

def add_dependency(
  resource: Resource
) -> None

resourceRequired

  • Type: ros_cdk_core.Resource

add_resource_desc

def add_resource_desc(
  desc: str
) -> None

descRequired

  • Type: str

apply_removal_policy

def apply_removal_policy(
  policy: RemovalPolicy
) -> None

policyRequired

  • Type: ros_cdk_core.RemovalPolicy

fetch_condition

def fetch_condition() -> RosCondition

fetch_dependency

def fetch_dependency() -> typing.List[str]

fetch_resource_desc

def fetch_resource_desc() -> str

get_att

def get_att(
  name: str
) -> IResolvable

nameRequired

  • Type: str

set_metadata

def set_metadata(
  key: str,
  value: typing.Any
) -> None

keyRequired

  • Type: str

valueRequired

  • Type: typing.Any

Static Functions

Name Description
is_construct Return whether the given object is a Construct.

is_construct

import ros_cdk_vpc
ros_cdk_vpc.VpcCidrBlockAssociation.is_construct(
  x: typing.Any
)

Return whether the given object is a Construct.

xRequired

  • Type: typing.Any

Properties

Name Type Description
node ros_cdk_core.ConstructNode The construct tree node associated with this construct.
env ros_cdk_core.IResourceEnvironment The environment this resource belongs to.
ref str No description.
stack ros_cdk_core.Stack The stack in which this resource is defined.
resource ros_cdk_core.RosResource No description.
attr_vpc_id typing.Union[str, ros_cdk_core.IResolvable] Attribute VpcId: The ID of the VPC to which you want to add a secondary CIDR block.
props VpcCidrBlockAssociationProps No description.

nodeRequired

node: ConstructNode
  • Type: ros_cdk_core.ConstructNode

The construct tree node associated with this construct.


envRequired

env: IResourceEnvironment
  • Type: ros_cdk_core.IResourceEnvironment

The environment this resource belongs to.

For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.


refRequired

ref: str
  • Type: str

stackRequired

stack: Stack
  • Type: ros_cdk_core.Stack

The stack in which this resource is defined.


resourceOptional

resource: RosResource
  • Type: ros_cdk_core.RosResource

attr_vpc_idRequired

attr_vpc_id: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Attribute VpcId: The ID of the VPC to which you want to add a secondary CIDR block.


propsRequired

props: VpcCidrBlockAssociationProps