Class: Google::Apis::ComputeV1::Network
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::Network
- 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
Overview
Represents a VPC Network resource. Networks connect resources to each other and to the internet. For more information, readVirtual Private Cloud (VPC) Network.
Instance Attribute Summary collapse
-
#auto_create_subnetworks ⇒ Boolean
(also: #auto_create_subnetworks?)
Must be set to create a VPC network.
-
#creation_timestamp ⇒ String
Output only.
-
#description ⇒ String
An optional description of this resource.
-
#enable_ula_internal_ipv6 ⇒ Boolean
(also: #enable_ula_internal_ipv6?)
Enable ULA internal ipv6 on this network.
-
#firewall_policy ⇒ String
Output only.
-
#gateway_i_pv4 ⇒ String
[Output Only] The gateway address for default routing out of the network, selected by Google Cloud.
-
#i_pv4_range ⇒ String
Deprecated in favor of subnet mode networks.
-
#id ⇒ Fixnum
Output only.
-
#internal_ipv6_range ⇒ String
When enabling ula internal ipv6, caller optionally can specify the /48 range they want from the google defined ULA prefix fd20::/20.
-
#kind ⇒ String
Output only.
-
#mtu ⇒ Fixnum
Maximum Transmission Unit in bytes.
-
#name ⇒ String
Name of the resource.
-
#network_firewall_policy_enforcement_order ⇒ String
The network firewall policy enforcement order.
-
#network_profile ⇒ String
A full or partial URL of the network profile to apply to this network.
-
#params ⇒ Google::Apis::ComputeV1::NetworkParams
Additional network parameters.
-
#peerings ⇒ Array<Google::Apis::ComputeV1::NetworkPeering>
Output only.
-
#routing_config ⇒ Google::Apis::ComputeV1::NetworkRoutingConfig
A routing configuration attached to a network resource.
-
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
-
#self_link_with_id ⇒ String
Output only.
-
#subnetworks ⇒ Array<String>
[Output Only] Server-defined fully-qualified URLs for all subnetworks in this VPC network.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Network
constructor
A new instance of Network.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Network
Returns a new instance of Network.
35433 35434 35435 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35433 def initialize(**args) update!(**args) end |
Instance Attribute Details
#auto_create_subnetworks ⇒ Boolean Also known as: auto_create_subnetworks?
Must be set to create a VPC network. If not set, a legacy network is
created.
When set to true, the VPC network is created in auto mode.
When set to false, the VPC network is created in custom mode.
An auto mode VPC network starts with one subnet per region. Each subnet
has a predetermined range as described inAuto mode VPC network IP ranges.
For custom mode VPC networks, you can add subnets using the subnetworksinsert
method.
Corresponds to the JSON property autoCreateSubnetworks
35302 35303 35304 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35302 def auto_create_subnetworks @auto_create_subnetworks end |
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
35309 35310 35311 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35309 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this field when you
create the resource.
Corresponds to the JSON property description
35315 35316 35317 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35315 def description @description end |
#enable_ula_internal_ipv6 ⇒ Boolean Also known as: enable_ula_internal_ipv6?
Enable ULA internal ipv6 on this network. Enabling this feature will assign
a /48 from google defined ULA prefix fd20::/20.
.
Corresponds to the JSON property enableUlaInternalIpv6
35322 35323 35324 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35322 def enable_ula_internal_ipv6 @enable_ula_internal_ipv6 end |
#firewall_policy ⇒ String
Output only. [Output Only] URL of the firewall policy the network is
associated with.
Corresponds to the JSON property firewallPolicy
35329 35330 35331 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35329 def firewall_policy @firewall_policy end |
#gateway_i_pv4 ⇒ String
[Output Only] The gateway address for default routing out of the network,
selected by Google Cloud.
Corresponds to the JSON property gatewayIPv4
35335 35336 35337 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35335 def gateway_i_pv4 @gateway_i_pv4 end |
#i_pv4_range ⇒ String
Deprecated in favor of subnet mode networks.
The range of internal addresses that are legal on this network. This
range is aCIDR specification, for example:192.168.0.0/16. Provided by the
client when the network is
created.
Corresponds to the JSON property IPv4Range
35290 35291 35292 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35290 def i_pv4_range @i_pv4_range end |
#id ⇒ Fixnum
Output only. [Output Only] The unique identifier for the resource. This
identifier is
defined by the server.
Corresponds to the JSON property id
35342 35343 35344 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35342 def id @id end |
#internal_ipv6_range ⇒ String
When enabling ula internal ipv6, caller optionally can specify the /48
range they want from the google defined ULA prefix fd20::/20. The input
must be a valid /48 ULA IPv6 address and must be within the fd20::/20.
Operation will fail if the speficied /48 is already in used by another
resource. If the field is not speficied, then a /48 range will be randomly
allocated from fd20::/20 and returned via this field.
.
Corresponds to the JSON property internalIpv6Range
35353 35354 35355 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35353 def internal_ipv6_range @internal_ipv6_range end |
#kind ⇒ String
Output only. [Output Only] Type of the resource. Always compute#network for
networks.
Corresponds to the JSON property kind
35359 35360 35361 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35359 def kind @kind end |
#mtu ⇒ Fixnum
Maximum Transmission Unit in bytes.
The minimum value for this field is 1300 and the maximum value is 8896.
The suggested value is 1500, which is the default MTU used on the
Internet, or 8896 if you want to use Jumbo frames. If unspecified, the
value defaults to 1460.
Corresponds to the JSON property mtu
35368 35369 35370 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35368 def mtu @mtu end |
#name ⇒ String
Name of the resource. Provided by the client when the resource is created.
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])?. The first character must be a
lowercase letter, and all following characters (except for the last
character) must be a dash, lowercase letter, or digit. The last character
must be a lowercase letter or digit.
Corresponds to the JSON property name
35379 35380 35381 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35379 def name @name end |
#network_firewall_policy_enforcement_order ⇒ String
The network firewall policy enforcement order. Can be either
AFTER_CLASSIC_FIREWALL or BEFORE_CLASSIC_FIREWALL. Defaults to
AFTER_CLASSIC_FIREWALL if the field is not specified.
Corresponds to the JSON property networkFirewallPolicyEnforcementOrder
35386 35387 35388 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35386 def network_firewall_policy_enforcement_order @network_firewall_policy_enforcement_order end |
#network_profile ⇒ String
A full or partial URL of the network profile to apply to this network. This field can be set only at resource creation time. For example, the following are valid URLs:
- https://www.googleapis.com/compute/`api_version`/projects/`project_id`/
global/networkProfiles/
network_profile_name - projects/
project_id/global/networkProfiles/network_profile_nameCorresponds to the JSON propertynetworkProfile
35397 35398 35399 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35397 def network_profile @network_profile end |
#params ⇒ Google::Apis::ComputeV1::NetworkParams
Additional network parameters.
Corresponds to the JSON property params
35402 35403 35404 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35402 def params @params end |
#peerings ⇒ Array<Google::Apis::ComputeV1::NetworkPeering>
Output only. [Output Only] A list of network peerings for the resource.
Corresponds to the JSON property peerings
35407 35408 35409 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35407 def peerings @peerings end |
#routing_config ⇒ Google::Apis::ComputeV1::NetworkRoutingConfig
A routing configuration attached to a network resource. The message
includes the list of routers associated with the network, and a flag
indicating the type of routing behavior to enforce network-wide.
Corresponds to the JSON property routingConfig
35414 35415 35416 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35414 def routing_config @routing_config end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
35419 35420 35421 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35419 def self_link @self_link end |
#self_link_with_id ⇒ String
Output only. [Output Only] Server-defined URL for this resource with the
resource id.
Corresponds to the JSON property selfLinkWithId
35425 35426 35427 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35425 def self_link_with_id @self_link_with_id end |
#subnetworks ⇒ Array<String>
[Output Only] Server-defined fully-qualified URLs for all subnetworks
in this VPC network.
Corresponds to the JSON property subnetworks
35431 35432 35433 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35431 def subnetworks @subnetworks end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
35438 35439 35440 35441 35442 35443 35444 35445 35446 35447 35448 35449 35450 35451 35452 35453 35454 35455 35456 35457 35458 35459 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35438 def update!(**args) @i_pv4_range = args[:i_pv4_range] if args.key?(:i_pv4_range) @auto_create_subnetworks = args[:auto_create_subnetworks] if args.key?(:auto_create_subnetworks) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @enable_ula_internal_ipv6 = args[:enable_ula_internal_ipv6] if args.key?(:enable_ula_internal_ipv6) @firewall_policy = args[:firewall_policy] if args.key?(:firewall_policy) @gateway_i_pv4 = args[:gateway_i_pv4] if args.key?(:gateway_i_pv4) @id = args[:id] if args.key?(:id) @internal_ipv6_range = args[:internal_ipv6_range] if args.key?(:internal_ipv6_range) @kind = args[:kind] if args.key?(:kind) @mtu = args[:mtu] if args.key?(:mtu) @name = args[:name] if args.key?(:name) @network_firewall_policy_enforcement_order = args[:network_firewall_policy_enforcement_order] if args.key?(:network_firewall_policy_enforcement_order) @network_profile = args[:network_profile] if args.key?(:network_profile) @params = args[:params] if args.key?(:params) @peerings = args[:peerings] if args.key?(:peerings) @routing_config = args[:routing_config] if args.key?(:routing_config) @self_link = args[:self_link] if args.key?(:self_link) @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id) @subnetworks = args[:subnetworks] if args.key?(:subnetworks) end |