Class: Google::Apis::ComputeAlpha::RouterBgpPeer
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::RouterBgpPeer
- 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
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:.
-
#advertised_ip_ranges ⇒ Array<Google::Apis::ComputeAlpha::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::ComputeAlpha::RouterBgpPeerBfd
BFD configuration for the BGP peering.
-
#custom_learned_ip_ranges ⇒ Array<Google::Apis::ComputeAlpha::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.
-
#linked_custom_hardware ⇒ String
The linked custom hardware resource.
-
#management_type ⇒ String
Output only.
-
#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.
63696 63697 63698 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63696 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
63517 63518 63519 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63517 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
63531 63532 63533 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63531 def advertised_groups @advertised_groups end |
#advertised_ip_ranges ⇒ Array<Google::Apis::ComputeAlpha::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
63540 63541 63542 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63540 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
63547 63548 63549 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63547 def advertised_route_priority @advertised_route_priority end |
#bfd ⇒ Google::Apis::ComputeAlpha::RouterBgpPeerBfd
BFD configuration for the BGP peering.
Corresponds to the JSON property bfd
63552 63553 63554 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63552 def bfd @bfd end |
#custom_learned_ip_ranges ⇒ Array<Google::Apis::ComputeAlpha::RouterBgpPeerCustomLearnedIpRange>
A list of user-defined custom learned route IP address ranges for a BGP
session.
Corresponds to the JSON property customLearnedIpRanges
63558 63559 63560 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63558 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
63566 63567 63568 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63566 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
63575 63576 63577 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63575 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
63581 63582 63583 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63581 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
63588 63589 63590 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63588 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.
Corresponds to the JSON property exportPolicies
63596 63597 63598 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63596 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.
Corresponds to the JSON property importPolicies
63603 63604 63605 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63603 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
63608 63609 63610 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63608 def interface_name @interface_name end |
#ip_address ⇒ String
IP address of the interface inside Google Cloud Platform.
Corresponds to the JSON property ipAddress
63613 63614 63615 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63613 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
63618 63619 63620 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63618 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
63623 63624 63625 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63623 def ipv6_nexthop_address @ipv6_nexthop_address end |
#linked_custom_hardware ⇒ String
The linked custom hardware resource.
The URI of the custom hardware link attachment
is where you will establish the BGP session from the Cloud Router.
This link attachment must reside in the same subnetwork as the associated
router interface.
Corresponds to the JSON property linkedCustomHardware
63632 63633 63634 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63632 def linked_custom_hardware @linked_custom_hardware end |
#management_type ⇒ String
Output only. [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
63646 63647 63648 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63646 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
63653 63654 63655 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63653 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 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
63664 63665 63666 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63664 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
63670 63671 63672 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63670 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
63675 63676 63677 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63675 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
63680 63681 63682 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63680 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
63685 63686 63687 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63685 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
63694 63695 63696 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63694 def router_appliance_instance @router_appliance_instance end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
63701 63702 63703 63704 63705 63706 63707 63708 63709 63710 63711 63712 63713 63714 63715 63716 63717 63718 63719 63720 63721 63722 63723 63724 63725 63726 63727 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 63701 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) @linked_custom_hardware = args[:linked_custom_hardware] if args.key?(:linked_custom_hardware) @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 |