Class: Google::Apis::ComputeAlpha::InterconnectAttachmentL2Forwarding

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

L2 Interconnect Attachment related configuration.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ InterconnectAttachmentL2Forwarding

Returns a new instance of InterconnectAttachmentL2Forwarding.



36684
36685
36686
# File 'lib/google/apis/compute_alpha/classes.rb', line 36684

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

Instance Attribute Details

#appliance_mappingsHash<String,Google::Apis::ComputeAlpha::InterconnectAttachmentL2ForwardingApplianceMapping>

Optional. A map of VLAN tags to appliances and optional inner mapping rules. If VLANs are not explicitly mapped to any appliance, the defaultApplianceIpAddress is used. Each VLAN tag can be a single number or a range of numbers in the range of 1 to 4094, e.g., "1" or "4001-4094". Non-empty and non-overlapping VLAN tag ranges are enforced, and violating operations will be rejected. The VLAN tags in the Ethernet header must use an ethertype value of 0x88A8 or 0x8100. Corresponds to the JSON property applianceMappings



36656
36657
36658
# File 'lib/google/apis/compute_alpha/classes.rb', line 36656

def appliance_mappings
  @appliance_mappings
end

#default_appliance_ip_addressString

Optional. A single IPv4 or IPv6 address used as the default destination IP when there is no VLAN mapping result found. Unset field (null-value) indicates the unmatched packet should be dropped. Corresponds to the JSON property defaultApplianceIpAddress

Returns:

  • (String)


36664
36665
36666
# File 'lib/google/apis/compute_alpha/classes.rb', line 36664

def default_appliance_ip_address
  @default_appliance_ip_address
end

#geneve_headerGoogle::Apis::ComputeAlpha::InterconnectAttachmentL2ForwardingGeneveHeader

GeneveHeader related configurations. Corresponds to the JSON property geneveHeader



36669
36670
36671
# File 'lib/google/apis/compute_alpha/classes.rb', line 36669

def geneve_header
  @geneve_header
end

#networkString

Required. Resource URL of the network to which this attachment belongs. Corresponds to the JSON property network

Returns:

  • (String)


36674
36675
36676
# File 'lib/google/apis/compute_alpha/classes.rb', line 36674

def network
  @network
end

#tunnel_endpoint_ip_addressString

Required. A single IPv4 or IPv6 address. This address will be used as the source IP address for packets sent to the appliances, and must be used as the destination IP address for packets that should be sent out through this attachment. Corresponds to the JSON property tunnelEndpointIpAddress

Returns:

  • (String)


36682
36683
36684
# File 'lib/google/apis/compute_alpha/classes.rb', line 36682

def tunnel_endpoint_ip_address
  @tunnel_endpoint_ip_address
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



36689
36690
36691
36692
36693
36694
36695
# File 'lib/google/apis/compute_alpha/classes.rb', line 36689

def update!(**args)
  @appliance_mappings = args[:appliance_mappings] if args.key?(:appliance_mappings)
  @default_appliance_ip_address = args[:default_appliance_ip_address] if args.key?(:default_appliance_ip_address)
  @geneve_header = args[:geneve_header] if args.key?(:geneve_header)
  @network = args[:network] if args.key?(:network)
  @tunnel_endpoint_ip_address = args[:tunnel_endpoint_ip_address] if args.key?(:tunnel_endpoint_ip_address)
end