Class: Google::Apis::ComputeAlpha::SubnetworkSecondaryRange

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb

Overview

Represents a secondary IP range of a subnetwork.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ SubnetworkSecondaryRange

Returns a new instance of SubnetworkSecondaryRange.



74674
74675
74676
# File 'lib/google/apis/compute_alpha/classes.rb', line 74674

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#ip_cidr_rangeString

The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Both IPv4 and IPv6 ranges are supported. For IPv4, the range can be any range listed in theValid ranges list. For IPv6: The range must have a /64 prefix length. The range must be omitted, for auto-allocation from Google-defined ULA IPv6 range. For BYOGUA internal IPv6 secondary range, the range may be specified along with the ipCollection field. If an ipCollection is specified, the requested ip_cidr_range must lie within the range of the PDP referenced by the ipCollection field for allocation. If ipCollection field is specified, but ip_cidr_range is not, the range is auto-allocated from the PDP referenced by the ipCollection field. Corresponds to the JSON property ipCidrRange

Returns:

  • (String)


74643
74644
74645
# File 'lib/google/apis/compute_alpha/classes.rb', line 74643

def ip_cidr_range
  @ip_cidr_range
end

#ip_collectionString

Reference to a Public Delegated Prefix (PDP) for BYOIP. This field should be specified for configuring BYOGUA internal IPv6 secondary range. When specified along with the ip_cidr_range, the ip_cidr_range must lie within the PDP referenced by the ipCollection field. When specified without the ip_cidr_range, the range is auto-allocated from the PDP referenced by the ipCollection field. Corresponds to the JSON property ipCollection

Returns:

  • (String)


74654
74655
74656
# File 'lib/google/apis/compute_alpha/classes.rb', line 74654

def ip_collection
  @ip_collection
end

#ip_versionString

Corresponds to the JSON property ipVersion

Returns:

  • (String)


74659
74660
74661
# File 'lib/google/apis/compute_alpha/classes.rb', line 74659

def ip_version
  @ip_version
end

#range_nameString

The name associated with this subnetwork secondary range, used when adding an alias IP/IPv6 range to a VM instance. The name must be 1-63 characters long, and comply withRFC1035. The name must be unique within the subnetwork. Corresponds to the JSON property rangeName

Returns:

  • (String)


74667
74668
74669
# File 'lib/google/apis/compute_alpha/classes.rb', line 74667

def range_name
  @range_name
end

#reserved_internal_rangeString

The URL of the reserved internal range. Only IPv4 is supported. Corresponds to the JSON property reservedInternalRange

Returns:

  • (String)


74672
74673
74674
# File 'lib/google/apis/compute_alpha/classes.rb', line 74672

def reserved_internal_range
  @reserved_internal_range
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



74679
74680
74681
74682
74683
74684
74685
# File 'lib/google/apis/compute_alpha/classes.rb', line 74679

def update!(**args)
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
  @ip_collection = args[:ip_collection] if args.key?(:ip_collection)
  @ip_version = args[:ip_version] if args.key?(:ip_version)
  @range_name = args[:range_name] if args.key?(:range_name)
  @reserved_internal_range = args[:reserved_internal_range] if args.key?(:reserved_internal_range)
end