InternalRange(mapping=None, *, ignore_unknown_fields=False, **kwargs)The internal range resource for IPAM operations within a VPC network. Used to represent a private address range along with behavioral characteristics of that range (its usage and peering behavior). Networking resources can link to this range if they are created as belonging to it.
Attributes |
|
|---|---|
| Name | Description |
name |
str
Identifier. The name of an internal range. Format: projects/{project}/locations/{location}/internalRanges/{internal_range} See: https://google.aip.dev/122#fields-representing-resource-names |
create_time |
google.protobuf.timestamp_pb2.Timestamp
Output only. Time when the internal range was created. |
update_time |
google.protobuf.timestamp_pb2.Timestamp
Output only. Time when the internal range was updated. |
labels |
MutableMapping[str, str]
User-defined labels. |
description |
str
Optional. A description of this resource. |
ip_cidr_range |
str
Optional. The IP range that this internal range defines. NOTE: IPv6 ranges are limited to usage=EXTERNAL_TO_VPC and peering=FOR_SELF. NOTE: For IPv6 Ranges this field is compulsory, i.e. the address range must be specified explicitly. |
network |
str
Immutable. The URL or resource ID of the network in which to reserve the internal range. The network cannot be deleted if there are any reserved internal ranges referring to it. Legacy networks are not supported. For example: https://www.googleapis.com/compute/v1/projects/{project}/locations/global/networks/{network} projects/{project}/locations/global/networks/{network} {network} |
usage |
google.cloud.networkconnectivity_v1.types.InternalRange.Usage
Optional. The type of usage set for this InternalRange. |
peering |
google.cloud.networkconnectivity_v1.types.InternalRange.Peering
Optional. The type of peering set for this internal range. |
prefix_length |
int
Optional. An alternate to ip_cidr_range. Can be set when trying to create an IPv4 reservation that automatically finds a free range of the given size. If both ip_cidr_range and prefix_length are set, there is an error if the range sizes do not match. Can also be used during updates to change the range size. NOTE: For IPv6 this field only works if ip_cidr_range is set as well, and both fields must match. In other words, with IPv6 this field only works as a redundant parameter. |
target_cidr_range |
MutableSequence[str]
Optional. Can be set to narrow down or pick a different address space while searching for a free range. If not set, defaults to the ["10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"] address space (for auto-mode networks, the "10.0.0.0/9" range is used instead of "10.0.0.0/8"). This can be used to target the search in other rfc-1918 address spaces like "172.16.0.0/12" and "192.168.0.0/16" or non-rfc-1918 address spaces used in the VPC. |
users |
MutableSequence[str]
Output only. The list of resources that refer to this internal range. Resources that use the internal range for their range allocation are referred to as users of the range. Other resources mark themselves as users while doing so by creating a reference to this internal range. Having a user, based on this reference, prevents deletion of the internal range referred to. Can be empty. |
overlaps |
MutableSequence[google.cloud.networkconnectivity_v1.types.InternalRange.Overlap]
Optional. Types of resources that are allowed to overlap with the current internal range. |
migration |
google.cloud.networkconnectivity_v1.types.InternalRange.Migration
Optional. Must be present if usage is set to FOR_MIGRATION. |
immutable |
bool
Optional. Immutable ranges cannot have their fields modified, except for labels and description. |
allocation_options |
google.cloud.networkconnectivity_v1.types.InternalRange.AllocationOptions
Optional. Range auto-allocation options, may be set only when auto-allocation is selected by not setting ip_cidr_range (and setting prefix_length). |
exclude_cidr_ranges |
MutableSequence[str]
Optional. ExcludeCidrRanges flag. Specifies a set of CIDR blocks that allows exclusion of particular CIDR ranges from the auto-allocation process, without having to reserve these blocks |
Classes
AllocationOptions
AllocationOptions(mapping=None, *, ignore_unknown_fields=False, **kwargs)Range auto-allocation options, to be optionally used when CIDR block is not explicitly set.
AllocationStrategy
AllocationStrategy(value)Enumeration of range auto-allocation strategies
LabelsEntry
LabelsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)The abstract base class for a message.
| Parameters | |
|---|---|
| Name | Description |
kwargs |
dict
Keys and values corresponding to the fields of the message. |
mapping |
Union[dict,
A dictionary or message to be used to determine the values for this message. |
ignore_unknown_fields |
Optional(bool)
If True, do not raise errors for unknown fields. Only applied if |
Migration
Migration(mapping=None, *, ignore_unknown_fields=False, **kwargs)Specification for migration with source and target resource names.
Overlap
Overlap(value)Overlap specifications.
Peering
Peering(value)Peering type.
Usage
Usage(value)Possible usage of an internal range.
GetInternalRange and DeleteInternalRange.
Usage needs to be specified explicitly in
CreateInternalRange or UpdateInternalRange
calls.
FOR_VPC (1):
A VPC resource can use the reserved CIDR block by
associating it with the internal range resource if usage is
set to FOR_VPC.
EXTERNAL_TO_VPC (2):
Ranges created with EXTERNAL_TO_VPC cannot be associated
with VPC resources and are meant to block out address ranges
for various use cases, like for example, usage on-prem, with
dynamic route announcements via interconnect.
FOR_MIGRATION (3):
Ranges created FOR_MIGRATION can be used to lock a CIDR
range between a source and target subnet. If usage is set to
FOR_MIGRATION, the peering value has to be set to FOR_SELF
or default to FOR_SELF when unset.