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.
35261 35262 35263 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35261 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
35130 35131 35132 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35130 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
35137 35138 35139 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35137 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
35143 35144 35145 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35143 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
35150 35151 35152 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35150 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
35157 35158 35159 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35157 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
35163 35164 35165 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35163 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
35118 35119 35120 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35118 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
35170 35171 35172 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35170 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
35181 35182 35183 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35181 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
35187 35188 35189 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35187 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
35196 35197 35198 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35196 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
35207 35208 35209 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35207 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
35214 35215 35216 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35214 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
35225 35226 35227 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35225 def network_profile @network_profile end |
#params ⇒ Google::Apis::ComputeV1::NetworkParams
Additional network parameters.
Corresponds to the JSON property params
35230 35231 35232 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35230 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
35235 35236 35237 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35235 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
35242 35243 35244 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35242 def routing_config @routing_config end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
35247 35248 35249 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35247 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
35253 35254 35255 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35253 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
35259 35260 35261 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35259 def subnetworks @subnetworks end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
35266 35267 35268 35269 35270 35271 35272 35273 35274 35275 35276 35277 35278 35279 35280 35281 35282 35283 35284 35285 35286 35287 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35266 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 |