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.
35063 35064 35065 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35063 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
34932 34933 34934 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34932 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
34939 34940 34941 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34939 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
34945 34946 34947 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34945 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
34952 34953 34954 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34952 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
34959 34960 34961 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34959 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
34965 34966 34967 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34965 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
34920 34921 34922 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34920 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
34972 34973 34974 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34972 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
34983 34984 34985 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34983 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
34989 34990 34991 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34989 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
34998 34999 35000 |
# File 'lib/google/apis/compute_v1/classes.rb', line 34998 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
35009 35010 35011 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35009 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
35016 35017 35018 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35016 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
35027 35028 35029 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35027 def network_profile @network_profile end |
#params ⇒ Google::Apis::ComputeV1::NetworkParams
Additional network parameters.
Corresponds to the JSON property params
35032 35033 35034 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35032 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
35037 35038 35039 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35037 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
35044 35045 35046 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35044 def routing_config @routing_config end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
35049 35050 35051 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35049 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
35055 35056 35057 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35055 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
35061 35062 35063 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35061 def subnetworks @subnetworks end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
35068 35069 35070 35071 35072 35073 35074 35075 35076 35077 35078 35079 35080 35081 35082 35083 35084 35085 35086 35087 35088 35089 |
# File 'lib/google/apis/compute_v1/classes.rb', line 35068 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 |