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.
35423 35424 35425 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35423 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
35292 35293 35294 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35292 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
35299 35300 35301 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35299 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
35305 35306 35307 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35305 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
35312 35313 35314 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35312 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
35319 35320 35321 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35319 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
35325 35326 35327 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35325 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
35280 35281 35282 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35280 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
35332 35333 35334 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35332 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
35343 35344 35345 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35343 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
35349 35350 35351 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35349 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
35358 35359 35360 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35358 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
35369 35370 35371 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35369 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
35376 35377 35378 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35376 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
35387 35388 35389 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35387 def network_profile @network_profile end |
#params ⇒ Google::Apis::ComputeV1::NetworkParams
Additional network parameters.
Corresponds to the JSON property params
35392 35393 35394 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35392 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
35397 35398 35399 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35397 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
35404 35405 35406 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35404 def routing_config @routing_config end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
35409 35410 35411 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35409 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
35415 35416 35417 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35415 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
35421 35422 35423 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35421 def subnetworks @subnetworks end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
35428 35429 35430 35431 35432 35433 35434 35435 35436 35437 35438 35439 35440 35441 35442 35443 35444 35445 35446 35447 35448 35449 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35428 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 |