Class: Google::Apis::NetworkconnectivityV1::PolicyBasedRoute
- Inherits:
-
Object
- Object
- Google::Apis::NetworkconnectivityV1::PolicyBasedRoute
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/networkconnectivity_v1/classes.rb,
lib/google/apis/networkconnectivity_v1/representations.rb,
lib/google/apis/networkconnectivity_v1/representations.rb
Overview
Policy Based Routes (PBR) are more powerful routes that allows GCP customers to route their L4 network traffic based on not just destination IP, but also source IP, protocol and more. A PBR always take precedence when it conflicts with other types of routes. Next id: 22
Instance Attribute Summary collapse
-
#create_time ⇒ String
Output only.
-
#description ⇒ String
Optional.
-
#filter ⇒ Google::Apis::NetworkconnectivityV1::Filter
Filter matches L4 traffic.
-
#interconnect_attachment ⇒ Google::Apis::NetworkconnectivityV1::InterconnectAttachment
InterconnectAttachment to which this route applies to.
-
#kind ⇒ String
Output only.
-
#labels ⇒ Hash<String,String>
User-defined labels.
-
#name ⇒ String
Immutable.
-
#network ⇒ String
Required.
-
#next_hop_ilb_ip ⇒ String
Optional.
-
#next_hop_other_routes ⇒ String
Optional.
-
#priority ⇒ Fixnum
Optional.
-
#self_link ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
-
#virtual_machine ⇒ Google::Apis::NetworkconnectivityV1::VirtualMachine
VM instances to which this policy based route applies to.
-
#warnings ⇒ Array<Google::Apis::NetworkconnectivityV1::Warnings>
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ PolicyBasedRoute
constructor
A new instance of PolicyBasedRoute.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ PolicyBasedRoute
Returns a new instance of PolicyBasedRoute.
1852 1853 1854 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1852 def initialize(**args) update!(**args) end |
Instance Attribute Details
#create_time ⇒ String
Output only. Time when the PolicyBasedRoute was created.
Corresponds to the JSON property createTime
1768 1769 1770 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1768 def create_time @create_time end |
#description ⇒ String
Optional. An optional description of this resource. Provide this field when
you create the resource.
Corresponds to the JSON property description
1774 1775 1776 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1774 def description @description end |
#filter ⇒ Google::Apis::NetworkconnectivityV1::Filter
Filter matches L4 traffic.
Corresponds to the JSON property filter
1779 1780 1781 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1779 def filter @filter end |
#interconnect_attachment ⇒ Google::Apis::NetworkconnectivityV1::InterconnectAttachment
InterconnectAttachment to which this route applies to.
Corresponds to the JSON property interconnectAttachment
1784 1785 1786 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1784 def @interconnect_attachment end |
#kind ⇒ String
Output only. Type of this resource. Always networkconnectivity#
policyBasedRoute for Policy Based Route resources.
Corresponds to the JSON property kind
1790 1791 1792 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1790 def kind @kind end |
#labels ⇒ Hash<String,String>
User-defined labels.
Corresponds to the JSON property labels
1795 1796 1797 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1795 def labels @labels end |
#name ⇒ String
Immutable. A unique name of the resource in the form of projects/
project_number/locations/global/PolicyBasedRoutes/policy_based_route_id`
Corresponds to the JSON propertyname`
1801 1802 1803 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1801 def name @name end |
#network ⇒ String
Required. Fully-qualified URL of the network that this route applies to. e.g.
projects/my-project/global/networks/my-network.
Corresponds to the JSON property network
1807 1808 1809 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1807 def network @network end |
#next_hop_ilb_ip ⇒ String
Optional. The IP of a global access enabled L4 ILB that should be the next hop
to handle matching packets. For this version, only next_hop_ilb_ip is
supported.
Corresponds to the JSON property nextHopIlbIp
1814 1815 1816 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1814 def next_hop_ilb_ip @next_hop_ilb_ip end |
#next_hop_other_routes ⇒ String
Optional. Other routes that will be referenced to determine the next hop of
the packet.
Corresponds to the JSON property nextHopOtherRoutes
1820 1821 1822 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1820 def next_hop_other_routes @next_hop_other_routes end |
#priority ⇒ Fixnum
Optional. The priority of this policy based route. Priority is used to break
ties in cases where there are more than one matching policy based routes found.
In cases where multiple policy based routes are matched, the one with the
lowest-numbered priority value wins. The default value is 1000. The priority
value must be from 1 to 65535, inclusive.
Corresponds to the JSON property priority
1829 1830 1831 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1829 def priority @priority end |
#self_link ⇒ String
Output only. Server-defined fully-qualified URL for this resource.
Corresponds to the JSON property selfLink
1834 1835 1836 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1834 def self_link @self_link end |
#update_time ⇒ String
Output only. Time when the PolicyBasedRoute was updated.
Corresponds to the JSON property updateTime
1839 1840 1841 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1839 def update_time @update_time end |
#virtual_machine ⇒ Google::Apis::NetworkconnectivityV1::VirtualMachine
VM instances to which this policy based route applies to.
Corresponds to the JSON property virtualMachine
1844 1845 1846 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1844 def virtual_machine @virtual_machine end |
#warnings ⇒ Array<Google::Apis::NetworkconnectivityV1::Warnings>
Output only. If potential misconfigurations are detected for this route, this
field will be populated with warning messages.
Corresponds to the JSON property warnings
1850 1851 1852 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1850 def warnings @warnings end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 |
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1857 def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @description = args[:description] if args.key?(:description) @filter = args[:filter] if args.key?(:filter) @interconnect_attachment = args[:interconnect_attachment] if args.key?(:interconnect_attachment) @kind = args[:kind] if args.key?(:kind) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @network = args[:network] if args.key?(:network) @next_hop_ilb_ip = args[:next_hop_ilb_ip] if args.key?(:next_hop_ilb_ip) @next_hop_other_routes = args[:next_hop_other_routes] if args.key?(:next_hop_other_routes) @priority = args[:priority] if args.key?(:priority) @self_link = args[:self_link] if args.key?(:self_link) @update_time = args[:update_time] if args.key?(:update_time) @virtual_machine = args[:virtual_machine] if args.key?(:virtual_machine) @warnings = args[:warnings] if args.key?(:warnings) end |