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] The resource that configures and manages this interface.
-
#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.
35007 35008 35009 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35007 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 the RFC3927 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, fc00:0:1: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
34937 34938 34939 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34937 def ip_range @ip_range end |
#ip_version ⇒ String
IP version of this interface.
Corresponds to the JSON property ipVersion
34942 34943 34944 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34942 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
34949 34950 34951 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34949 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
34956 34957 34958 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34956 def linked_vpn_tunnel @linked_vpn_tunnel end |
#management_type ⇒ String
[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
34966 34967 34968 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34966 def management_type @management_type end |
#name ⇒ String
Name of this interface entry. The name must be 1-63 characters long, and
comply with RFC1035. 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
34976 34977 34978 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34976 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
34983 34984 34985 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34983 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 with RFC1035. 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
34997 34998 34999 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34997 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
35005 35006 35007 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35005 def subnetwork @subnetwork end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
35012 35013 35014 35015 35016 35017 35018 35019 35020 35021 35022 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35012 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 |