Class: Google::Apis::ComputeBeta::RouterBgpPeer
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::RouterBgpPeer
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/representations.rb
Instance Attribute Summary collapse
-
#advertise_mode ⇒ String
User-specified flag to indicate which mode to use for advertisement.
-
#advertised_groups ⇒ Array<String>
User-specified list of prefix groups to advertise in custom mode, which currently supports the following option: - ALL_SUBNETS: Advertises all of the router's own VPC subnets.
-
#advertised_ip_ranges ⇒ Array<Google::Apis::ComputeBeta::RouterAdvertisedIpRange>
User-specified list of individual IP ranges to advertise in custom mode.
-
#advertised_route_priority ⇒ Fixnum
The priority of routes advertised to this BGP peer.
-
#bfd ⇒ Google::Apis::ComputeBeta::RouterBgpPeerBfd
BFD configuration for the BGP peering.
-
#custom_learned_ip_ranges ⇒ Array<Google::Apis::ComputeBeta::RouterBgpPeerCustomLearnedIpRange>
A list of user-defined custom learned route IP address ranges for a BGP session.
-
#custom_learned_route_priority ⇒ Fixnum
The user-defined custom learned route priority for a BGP session.
-
#enable ⇒ String
The status of the BGP peer connection.
-
#enable_ipv4 ⇒ Boolean
(also: #enable_ipv4?)
Enable IPv4 traffic over BGP Peer.
-
#enable_ipv6 ⇒ Boolean
(also: #enable_ipv6?)
Enable IPv6 traffic over BGP Peer.
-
#export_policies ⇒ Array<String>
List of export policies applied to this peer, in the order they must be evaluated.
-
#import_policies ⇒ Array<String>
List of import policies applied to this peer, in the order they must be evaluated.
-
#interface_name ⇒ String
Name of the interface the BGP peer is associated with.
-
#ip_address ⇒ String
IP address of the interface inside Google Cloud Platform.
-
#ipv4_nexthop_address ⇒ String
IPv4 address of the interface inside Google Cloud Platform.
-
#ipv6_nexthop_address ⇒ String
IPv6 address of the interface inside Google Cloud Platform.
-
#management_type ⇒ String
[Output Only] The resource that configures and manages this BGP peer.
-
#md5_authentication_key_name ⇒ String
Present if MD5 authentication is enabled for the peering.
-
#name ⇒ String
Name of this BGP peer.
-
#peer_asn ⇒ Fixnum
Peer BGP Autonomous System Number (ASN).
-
#peer_ip_address ⇒ String
IP address of the BGP interface outside Google Cloud Platform.
-
#peer_ipv4_nexthop_address ⇒ String
IPv4 address of the BGP interface outside Google Cloud Platform.
-
#peer_ipv6_nexthop_address ⇒ String
IPv6 address of the BGP interface outside Google Cloud Platform.
-
#router_appliance_instance ⇒ String
URI of the VM instance that is used as third-party router appliances such as Next Gen Firewalls, Virtual Routers, or Router Appliances.
Instance Method Summary collapse
-
#initialize(**args) ⇒ RouterBgpPeer
constructor
A new instance of RouterBgpPeer.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ RouterBgpPeer
Returns a new instance of RouterBgpPeer.
39325 39326 39327 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39325 def initialize(**args) update!(**args) end |
Instance Attribute Details
#advertise_mode ⇒ String
User-specified flag to indicate which mode to use for advertisement.
Corresponds to the JSON property advertiseMode
39163 39164 39165 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39163 def advertise_mode @advertise_mode end |
#advertised_groups ⇒ Array<String>
User-specified list of prefix groups to advertise in custom mode, which
currently supports the following option: - ALL_SUBNETS: Advertises all of the
router's own VPC subnets. This excludes any routes learned for subnets that
use VPC Network Peering. Note that this field can only be populated if
advertise_mode is CUSTOM and overrides the list defined for the router (in the
"bgp" message). These groups are advertised in addition to any specified
prefixes. Leave this field blank to advertise no custom groups.
Corresponds to the JSON property advertisedGroups
39174 39175 39176 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39174 def advertised_groups @advertised_groups end |
#advertised_ip_ranges ⇒ Array<Google::Apis::ComputeBeta::RouterAdvertisedIpRange>
User-specified list of individual IP ranges to advertise in custom mode. This
field can only be populated if advertise_mode is CUSTOM and overrides the list
defined for the router (in the "bgp" message). These IP ranges are advertised
in addition to any specified groups. Leave this field blank to advertise no
custom IP ranges.
Corresponds to the JSON property advertisedIpRanges
39183 39184 39185 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39183 def advertised_ip_ranges @advertised_ip_ranges end |
#advertised_route_priority ⇒ Fixnum
The priority of routes advertised to this BGP peer. Where there is more than
one matching route of maximum length, the routes with the lowest priority
value win.
Corresponds to the JSON property advertisedRoutePriority
39190 39191 39192 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39190 def advertised_route_priority @advertised_route_priority end |
#bfd ⇒ Google::Apis::ComputeBeta::RouterBgpPeerBfd
BFD configuration for the BGP peering.
Corresponds to the JSON property bfd
39195 39196 39197 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39195 def bfd @bfd end |
#custom_learned_ip_ranges ⇒ Array<Google::Apis::ComputeBeta::RouterBgpPeerCustomLearnedIpRange>
A list of user-defined custom learned route IP address ranges for a BGP
session.
Corresponds to the JSON property customLearnedIpRanges
39201 39202 39203 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39201 def custom_learned_ip_ranges @custom_learned_ip_ranges end |
#custom_learned_route_priority ⇒ Fixnum
The user-defined custom learned route priority for a BGP session. This value
is applied to all custom learned route ranges for the session. You can choose
a value from 0
to 65335
. If you don't provide a value, Google Cloud
assigns a priority of 100
to the ranges.
Corresponds to the JSON property customLearnedRoutePriority
39209 39210 39211 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39209 def custom_learned_route_priority @custom_learned_route_priority end |
#enable ⇒ String
The status of the BGP peer connection. If set to FALSE, any active session
with the peer is terminated and all associated routing information is removed.
If set to TRUE, the peer connection can be established with routing
information. The default is TRUE.
Corresponds to the JSON property enable
39217 39218 39219 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39217 def enable @enable end |
#enable_ipv4 ⇒ Boolean Also known as: enable_ipv4?
Enable IPv4 traffic over BGP Peer. It is enabled by default if the
peerIpAddress is version 4.
Corresponds to the JSON property enableIpv4
39223 39224 39225 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39223 def enable_ipv4 @enable_ipv4 end |
#enable_ipv6 ⇒ Boolean Also known as: enable_ipv6?
Enable IPv6 traffic over BGP Peer. It is enabled by default if the
peerIpAddress is version 6.
Corresponds to the JSON property enableIpv6
39230 39231 39232 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39230 def enable_ipv6 @enable_ipv6 end |
#export_policies ⇒ Array<String>
List of export policies applied to this peer, in the order they must be
evaluated. The name must correspond to an existing policy that has
ROUTE_POLICY_TYPE_EXPORT type. Note that Route Policies are currently
available in preview. Please use Beta API to use Route Policies.
Corresponds to the JSON property exportPolicies
39239 39240 39241 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39239 def export_policies @export_policies end |
#import_policies ⇒ Array<String>
List of import policies applied to this peer, in the order they must be
evaluated. The name must correspond to an existing policy that has
ROUTE_POLICY_TYPE_IMPORT type. Note that Route Policies are currently
available in preview. Please use Beta API to use Route Policies.
Corresponds to the JSON property importPolicies
39247 39248 39249 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39247 def import_policies @import_policies end |
#interface_name ⇒ String
Name of the interface the BGP peer is associated with.
Corresponds to the JSON property interfaceName
39252 39253 39254 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39252 def interface_name @interface_name end |
#ip_address ⇒ String
IP address of the interface inside Google Cloud Platform.
Corresponds to the JSON property ipAddress
39257 39258 39259 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39257 def ip_address @ip_address end |
#ipv4_nexthop_address ⇒ String
IPv4 address of the interface inside Google Cloud Platform.
Corresponds to the JSON property ipv4NexthopAddress
39262 39263 39264 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39262 def ipv4_nexthop_address @ipv4_nexthop_address end |
#ipv6_nexthop_address ⇒ String
IPv6 address of the interface inside Google Cloud Platform.
Corresponds to the JSON property ipv6NexthopAddress
39267 39268 39269 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39267 def ipv6_nexthop_address @ipv6_nexthop_address end |
#management_type ⇒ String
[Output Only] The resource that configures and manages this BGP peer. -
MANAGED_BY_USER is the default value and can be managed by you or other users -
MANAGED_BY_ATTACHMENT is a BGP peer that is configured and managed by Cloud
Interconnect, specifically by an InterconnectAttachment of type PARTNER.
Google automatically creates, updates, and deletes this type of BGP peer when
the PARTNER InterconnectAttachment is created, updated, or deleted.
Corresponds to the JSON property managementType
39277 39278 39279 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39277 def management_type @management_type end |
#md5_authentication_key_name ⇒ String
Present if MD5 authentication is enabled for the peering. Must be the name of
one of the entries in the Router.md5_authentication_keys. The field must
comply with RFC1035.
Corresponds to the JSON property md5AuthenticationKeyName
39284 39285 39286 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39284 def md5_authentication_key_name @md5_authentication_key_name end |
#name ⇒ String
Name of this BGP peer. 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
39294 39295 39296 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39294 def name @name end |
#peer_asn ⇒ Fixnum
Peer BGP Autonomous System Number (ASN). Each BGP interface may use a
different value.
Corresponds to the JSON property peerAsn
39300 39301 39302 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39300 def peer_asn @peer_asn end |
#peer_ip_address ⇒ String
IP address of the BGP interface outside Google Cloud Platform.
Corresponds to the JSON property peerIpAddress
39305 39306 39307 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39305 def peer_ip_address @peer_ip_address end |
#peer_ipv4_nexthop_address ⇒ String
IPv4 address of the BGP interface outside Google Cloud Platform.
Corresponds to the JSON property peerIpv4NexthopAddress
39310 39311 39312 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39310 def peer_ipv4_nexthop_address @peer_ipv4_nexthop_address end |
#peer_ipv6_nexthop_address ⇒ String
IPv6 address of the BGP interface outside Google Cloud Platform.
Corresponds to the JSON property peerIpv6NexthopAddress
39315 39316 39317 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39315 def peer_ipv6_nexthop_address @peer_ipv6_nexthop_address end |
#router_appliance_instance ⇒ String
URI of the VM instance that is used as third-party router appliances such as
Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance
must be located in zones contained in the same region as this Cloud Router.
The VM instance is the peer side of the BGP session.
Corresponds to the JSON property routerApplianceInstance
39323 39324 39325 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39323 def router_appliance_instance @router_appliance_instance end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
39330 39331 39332 39333 39334 39335 39336 39337 39338 39339 39340 39341 39342 39343 39344 39345 39346 39347 39348 39349 39350 39351 39352 39353 39354 39355 |
# File 'lib/google/apis/compute_beta/classes.rb', line 39330 def update!(**args) @advertise_mode = args[:advertise_mode] if args.key?(:advertise_mode) @advertised_groups = args[:advertised_groups] if args.key?(:advertised_groups) @advertised_ip_ranges = args[:advertised_ip_ranges] if args.key?(:advertised_ip_ranges) @advertised_route_priority = args[:advertised_route_priority] if args.key?(:advertised_route_priority) @bfd = args[:bfd] if args.key?(:bfd) @custom_learned_ip_ranges = args[:custom_learned_ip_ranges] if args.key?(:custom_learned_ip_ranges) @custom_learned_route_priority = args[:custom_learned_route_priority] if args.key?(:custom_learned_route_priority) @enable = args[:enable] if args.key?(:enable) @enable_ipv4 = args[:enable_ipv4] if args.key?(:enable_ipv4) @enable_ipv6 = args[:enable_ipv6] if args.key?(:enable_ipv6) @export_policies = args[:export_policies] if args.key?(:export_policies) @import_policies = args[:import_policies] if args.key?(:import_policies) @interface_name = args[:interface_name] if args.key?(:interface_name) @ip_address = args[:ip_address] if args.key?(:ip_address) @ipv4_nexthop_address = args[:ipv4_nexthop_address] if args.key?(:ipv4_nexthop_address) @ipv6_nexthop_address = args[:ipv6_nexthop_address] if args.key?(:ipv6_nexthop_address) @management_type = args[:management_type] if args.key?(:management_type) @md5_authentication_key_name = args[:md5_authentication_key_name] if args.key?(:md5_authentication_key_name) @name = args[:name] if args.key?(:name) @peer_asn = args[:peer_asn] if args.key?(:peer_asn) @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address) @peer_ipv4_nexthop_address = args[:peer_ipv4_nexthop_address] if args.key?(:peer_ipv4_nexthop_address) @peer_ipv6_nexthop_address = args[:peer_ipv6_nexthop_address] if args.key?(:peer_ipv6_nexthop_address) @router_appliance_instance = args[:router_appliance_instance] if args.key?(:router_appliance_instance) end |