Class: Google::Apis::ComputeBeta::Network
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::Network
- 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
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::ComputeBeta::NetworkParams
Additional network parameters.
-
#peerings ⇒ Array<Google::Apis::ComputeBeta::NetworkPeering>
Output only.
-
#routing_config ⇒ Google::Apis::ComputeBeta::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.
38517 38518 38519 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38517 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
38386 38387 38388 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38386 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
38393 38394 38395 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38393 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
38399 38400 38401 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38399 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
38406 38407 38408 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38406 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
38413 38414 38415 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38413 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
38419 38420 38421 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38419 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
38374 38375 38376 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38374 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
38426 38427 38428 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38426 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
38437 38438 38439 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38437 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
38443 38444 38445 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38443 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
38452 38453 38454 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38452 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
38463 38464 38465 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38463 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
38470 38471 38472 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38470 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
38481 38482 38483 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38481 def network_profile @network_profile end |
#params ⇒ Google::Apis::ComputeBeta::NetworkParams
Additional network parameters.
Corresponds to the JSON property params
38486 38487 38488 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38486 def params @params end |
#peerings ⇒ Array<Google::Apis::ComputeBeta::NetworkPeering>
Output only. [Output Only] A list of network peerings for the resource.
Corresponds to the JSON property peerings
38491 38492 38493 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38491 def peerings @peerings end |
#routing_config ⇒ Google::Apis::ComputeBeta::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
38498 38499 38500 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38498 def routing_config @routing_config end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
38503 38504 38505 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38503 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
38509 38510 38511 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38509 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
38515 38516 38517 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38515 def subnetworks @subnetworks end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
38522 38523 38524 38525 38526 38527 38528 38529 38530 38531 38532 38533 38534 38535 38536 38537 38538 38539 38540 38541 38542 38543 |
# File 'lib/google/apis/compute_beta/classes.rb', line 38522 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 |