Class: Google::Apis::ComputeV1::RouterInterface
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::RouterInterface
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/representations.rb
Instance Attribute Summary collapse
-
#ip_range ⇒ String
IP address and range of the interface.
-
#ip_version ⇒ String
IP version of this interface.
-
#linked_interconnect_attachment ⇒ String
URI of the linked Interconnect attachment.
-
#linked_vpn_tunnel ⇒ String
URI of the linked VPN tunnel, which must be in the same region as the router.
-
#management_type ⇒ String
Output only.
-
#name ⇒ String
Name of this interface entry.
-
#private_ip_address ⇒ String
The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
-
#redundant_interface ⇒ String
Name of the interface that will be redundant with the current interface you are creating.
-
#subnetwork ⇒ String
The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router.
Instance Method Summary collapse
-
#initialize(**args) ⇒ RouterInterface
constructor
A new instance of RouterInterface.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ RouterInterface
Returns a new instance of RouterInterface.
52601 52602 52603 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52601 def initialize(**args) update!(**args) end |
Instance Attribute Details
#ip_range ⇒ String
IP address and range of the interface.
- For Internet Protocol version 4 (IPv4), the IP range must be in theRFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example, 169.254.0.1/30. Note: Do not truncate the IP address, as it represents the IP address of the interface.
- For Internet Protocol version 6 (IPv6), the value
must be a unique local address (ULA) range from fdff:1::/64
with a mask length of 126 or less. This value should be a CIDR-formatted
string, for example, fdff:1::1/112. Within the router's
VPC, this IPv6 prefix will be reserved exclusively for this connection
and cannot be used for any other purpose.
Corresponds to the JSON property
ipRange
52523 52524 52525 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52523 def ip_range @ip_range end |
#ip_version ⇒ String
IP version of this interface.
Corresponds to the JSON property ipVersion
52528 52529 52530 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52528 def ip_version @ip_version end |
#linked_interconnect_attachment ⇒ String
URI of the linked Interconnect attachment. It must be in the same region
as the router. Each interface can have one linked resource, which can be
a VPN tunnel, an Interconnect attachment, or a subnetwork.
Corresponds to the JSON property linkedInterconnectAttachment
52535 52536 52537 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52535 def @linked_interconnect_attachment end |
#linked_vpn_tunnel ⇒ String
URI of the linked VPN tunnel, which must be in the same region as the
router. Each interface can have one linked resource, which can be
a VPN tunnel, an Interconnect attachment, or a subnetwork.
Corresponds to the JSON property linkedVpnTunnel
52542 52543 52544 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52542 def linked_vpn_tunnel @linked_vpn_tunnel end |
#management_type ⇒ String
Output only. [Output Only] The resource that configures and manages this interface.
- MANAGED_BY_USER is the default value and can be managed directly by users.
- MANAGED_BY_ATTACHMENT is an interface that is configured and
managed by Cloud Interconnect, specifically, by an InterconnectAttachment
of type PARTNER. Google automatically creates, updates, and deletes
this type of interface when the PARTNER InterconnectAttachment is
created, updated, or deleted.
Corresponds to the JSON property
managementType
52556 52557 52558 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52556 def management_type @management_type end |
#name ⇒ String
Name of this interface entry.
The name must be 1-63 characters long, and comply withRFC1035. Specifically,
the name must be 1-63
characters long and match the regular expression
[a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a
lowercase letter, and all following characters must be a dash, lowercase
letter, or digit, except the last character, which cannot be a dash.
Corresponds to the JSON property name
52567 52568 52569 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52567 def name @name end |
#private_ip_address ⇒ String
The regional private internal IP address that is used to establish
BGP sessions to a VM instance acting as a third-party
Router Appliance, such as a Next Gen Firewall, a Virtual Router, or
an SD-WAN VM.
Corresponds to the JSON property privateIpAddress
52575 52576 52577 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52575 def private_ip_address @private_ip_address end |
#redundant_interface ⇒ String
Name of the interface that will be redundant with the current interface
you are creating. The redundantInterface must belong to the same Cloud
Router as the interface here. To establish the BGP session to a Router
Appliance VM, you must create two BGP peers. The two BGP peers must be
attached to two separate interfaces that are redundant with each other.
The redundant_interface must be 1-63 characters long, and comply withRFC1035.
Specifically, the redundant_interface must
be 1-63 characters long and match the regular expression
[a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a
lowercase letter, and all following characters must be a dash, lowercase
letter, or digit, except the last character, which cannot be a dash.
Corresponds to the JSON property redundantInterface
52590 52591 52592 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52590 def redundant_interface @redundant_interface end |
#subnetwork ⇒ String
The URI of the subnetwork resource that this interface belongs to, which
must be in the same region as the Cloud Router.
When you establish a BGP session to a VM instance using this interface,
the VM instance must belong to the same subnetwork as the subnetwork
specified here.
Corresponds to the JSON property subnetwork
52599 52600 52601 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52599 def subnetwork @subnetwork end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
52606 52607 52608 52609 52610 52611 52612 52613 52614 52615 52616 |
# File 'lib/google/apis/compute_v1/classes.rb', line 52606 def update!(**args) @ip_range = args[:ip_range] if args.key?(:ip_range) @ip_version = args[:ip_version] if args.key?(:ip_version) @linked_interconnect_attachment = args[:linked_interconnect_attachment] if args.key?(:linked_interconnect_attachment) @linked_vpn_tunnel = args[:linked_vpn_tunnel] if args.key?(:linked_vpn_tunnel) @management_type = args[:management_type] if args.key?(:management_type) @name = args[:name] if args.key?(:name) @private_ip_address = args[:private_ip_address] if args.key?(:private_ip_address) @redundant_interface = args[:redundant_interface] if args.key?(:redundant_interface) @subnetwork = args[:subnetwork] if args.key?(:subnetwork) end |