Compute V1 Client - Class Address (1.21.0)

Reference documentation and code samples for the Compute V1 Client class Address.

Represents an IP Address resource. Google Compute Engine has two IP Address resources: * Global (external and internal) * Regional (external and internal) For more information, see Reserving a static external IP address.

Generated from protobuf message google.cloud.compute.v1.Address

Namespace

Google \ Cloud \ Compute \ V1

Methods

__construct

Constructor.

Parameters
Name Description
data array

Optional. Data for populating the Message object.

↳ address string

The static IP address represented by this resource.

↳ address_type string

The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL. Check the AddressType enum for the list of possible values.

↳ creation_timestamp string

[Output Only] Creation timestamp in RFC3339 text format.

↳ description string

An optional description of this resource. Provide this field when you create the resource.

↳ id int|string

[Output Only] The unique identifier for the resource. This identifier is defined by the server.

↳ ip_version string

The IP version that will be used by this address. Valid options are IPV4 or IPV6. Check the IpVersion enum for the list of possible values.

↳ ipv6_endpoint_type string

The endpoint type of this address, which should be VM or NETLB. This is used for deciding which type of endpoint this address can be used after the external IPv6 address reservation. Check the Ipv6EndpointType enum for the list of possible values.

↳ kind string

[Output Only] Type of the resource. Always compute#address for addresses.

↳ label_fingerprint string

A fingerprint for the labels being applied to this Address, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an Address.

↳ labels array|Google\Protobuf\Internal\MapField

Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.

↳ 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 with RFC1035. 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.

↳ network string

The URL of the network in which to reserve the address. This field can only be used with INTERNAL type with the VPC_PEERING purpose.

↳ network_tier string

This signifies the networking tier used for configuring this address and can only take the following values: PREMIUM or STANDARD. Internal IP addresses are always Premium Tier; global external IP addresses are always Premium Tier; regional external IP addresses can be either Standard or Premium Tier. If this field is not specified, it is assumed to be PREMIUM. Check the NetworkTier enum for the list of possible values.

↳ prefix_length int

The prefix length if the resource represents an IP range.

↳ purpose string

The purpose of this resource, which can be one of the following values: - GCE_ENDPOINT for addresses that are used by VM instances, alias IP ranges, load balancers, and similar resources. - DNS_RESOLVER for a DNS resolver address in a subnetwork for a Cloud DNS inbound forwarder IP addresses (regional internal IP address in a subnet of a VPC network) - VPC_PEERING for global internal IP addresses used for private services access allocated ranges. - NAT_AUTO for the regional external IP addresses used by Cloud NAT when allocating addresses using automatic NAT IP address allocation. - IPSEC_INTERCONNECT for addresses created from a private IP range that are reserved for a VLAN attachment in an HA VPN over Cloud Interconnect configuration. These addresses are regional resources. - SHARED_LOADBALANCER_VIP for an internal IP address that is assigned to multiple internal forwarding rules. - PRIVATE_SERVICE_CONNECT for a private network address that is used to configure Private Service Connect. Only global internal addresses can use this purpose. Check the Purpose enum for the list of possible values.

↳ region string

[Output Only] The URL of the region where a regional address resides. For regional addresses, you must specify the region as a path parameter in the HTTP request URL. This field is not applicable to global addresses.

↳ self_link string

[Output Only] Server-defined URL for the resource.

↳ status string

[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available. Check the Status enum for the list of possible values.

↳ subnetwork string

The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with a GCE_ENDPOINT or DNS_RESOLVER purpose.

↳ users array

[Output Only] The URLs of the resources that are using this address.

getAddress

The static IP address represented by this resource.

Returns
Type Description
string

hasAddress

clearAddress

setAddress

The static IP address represented by this resource.

Parameter
Name Description
var string
Returns
Type Description
$this

getAddressType

The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL.

Check the AddressType enum for the list of possible values.

Returns
Type Description
string

hasAddressType

clearAddressType

setAddressType

The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL.

Check the AddressType enum for the list of possible values.

Parameter
Name Description
var string
Returns
Type Description
$this

getCreationTimestamp

[Output Only] Creation timestamp in RFC3339 text format.

Returns
Type Description
string

hasCreationTimestamp

clearCreationTimestamp

setCreationTimestamp

[Output Only] Creation timestamp in RFC3339 text format.

Parameter
Name Description
var string
Returns
Type Description
$this

getDescription

An optional description of this resource. Provide this field when you create the resource.

Returns
Type Description
string

hasDescription

clearDescription

setDescription

An optional description of this resource. Provide this field when you create the resource.

Parameter
Name Description
var string
Returns
Type Description
$this

getId

[Output Only] The unique identifier for the resource. This identifier is defined by the server.

Returns
Type Description
int|string

hasId

clearId

setId

[Output Only] The unique identifier for the resource. This identifier is defined by the server.

Parameter
Name Description
var int|string
Returns
Type Description
$this

getIpVersion

The IP version that will be used by this address. Valid options are IPV4 or IPV6.

Check the IpVersion enum for the list of possible values.

Returns
Type Description
string

hasIpVersion

clearIpVersion

setIpVersion

The IP version that will be used by this address. Valid options are IPV4 or IPV6.

Check the IpVersion enum for the list of possible values.

Parameter
Name Description
var string
Returns
Type Description
$this

getIpv6EndpointType

The endpoint type of this address, which should be VM or NETLB. This is used for deciding which type of endpoint this address can be used after the external IPv6 address reservation.

Check the Ipv6EndpointType enum for the list of possible values.

Returns
Type Description
string

hasIpv6EndpointType

clearIpv6EndpointType

setIpv6EndpointType

The endpoint type of this address, which should be VM or NETLB. This is used for deciding which type of endpoint this address can be used after the external IPv6 address reservation.

Check the Ipv6EndpointType enum for the list of possible values.

Parameter
Name Description
var string
Returns
Type Description
$this

getKind

[Output Only] Type of the resource. Always compute#address for addresses.

Returns
Type Description
string

hasKind

clearKind

setKind

[Output Only] Type of the resource. Always compute#address for addresses.

Parameter
Name Description
var string
Returns
Type Description
$this

getLabelFingerprint

A fingerprint for the labels being applied to this Address, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an Address.

Returns
Type Description
string

hasLabelFingerprint

clearLabelFingerprint

setLabelFingerprint

A fingerprint for the labels being applied to this Address, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an Address.

Parameter
Name Description
var string
Returns
Type Description
$this

getLabels

Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.

Returns
Type Description
Google\Protobuf\Internal\MapField

setLabels

Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.

Parameter
Name Description
var array|Google\Protobuf\Internal\MapField
Returns
Type Description
$this

getName

Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. 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.

Returns
Type Description
string

hasName

clearName

setName

Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. 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.

Parameter
Name Description
var string
Returns
Type Description
$this

getNetwork

The URL of the network in which to reserve the address. This field can only be used with INTERNAL type with the VPC_PEERING purpose.

Returns
Type Description
string

hasNetwork

clearNetwork

setNetwork

The URL of the network in which to reserve the address. This field can only be used with INTERNAL type with the VPC_PEERING purpose.

Parameter
Name Description
var string
Returns
Type Description
$this

getNetworkTier

This signifies the networking tier used for configuring this address and can only take the following values: PREMIUM or STANDARD. Internal IP addresses are always Premium Tier; global external IP addresses are always Premium Tier; regional external IP addresses can be either Standard or Premium Tier. If this field is not specified, it is assumed to be PREMIUM.

Check the NetworkTier enum for the list of possible values.

Returns
Type Description
string

hasNetworkTier

clearNetworkTier

setNetworkTier

This signifies the networking tier used for configuring this address and can only take the following values: PREMIUM or STANDARD. Internal IP addresses are always Premium Tier; global external IP addresses are always Premium Tier; regional external IP addresses can be either Standard or Premium Tier. If this field is not specified, it is assumed to be PREMIUM.

Check the NetworkTier enum for the list of possible values.

Parameter
Name Description
var string
Returns
Type Description
$this

getPrefixLength

The prefix length if the resource represents an IP range.

Returns
Type Description
int

hasPrefixLength

clearPrefixLength

setPrefixLength

The prefix length if the resource represents an IP range.

Parameter
Name Description
var int
Returns
Type Description
$this

getPurpose

The purpose of this resource, which can be one of the following values: - GCE_ENDPOINT for addresses that are used by VM instances, alias IP ranges, load balancers, and similar resources. - DNS_RESOLVER for a DNS resolver address in a subnetwork for a Cloud DNS inbound forwarder IP addresses (regional internal IP address in a subnet of a VPC network) - VPC_PEERING for global internal IP addresses used for private services access allocated ranges. - NAT_AUTO for the regional external IP addresses used by Cloud NAT when allocating addresses using automatic NAT IP address allocation. - IPSEC_INTERCONNECT for addresses created from a private IP range that are reserved for a VLAN attachment in an HA VPN over Cloud Interconnect configuration. These addresses are regional resources. - SHARED_LOADBALANCER_VIP for an internal IP address that is assigned to multiple internal forwarding rules. - PRIVATE_SERVICE_CONNECT for a private network address that is used to configure Private Service Connect. Only global internal addresses can use this purpose.

Check the Purpose enum for the list of possible values.

Returns
Type Description
string

hasPurpose

clearPurpose

setPurpose

The purpose of this resource, which can be one of the following values: - GCE_ENDPOINT for addresses that are used by VM instances, alias IP ranges, load balancers, and similar resources. - DNS_RESOLVER for a DNS resolver address in a subnetwork for a Cloud DNS inbound forwarder IP addresses (regional internal IP address in a subnet of a VPC network) - VPC_PEERING for global internal IP addresses used for private services access allocated ranges. - NAT_AUTO for the regional external IP addresses used by Cloud NAT when allocating addresses using automatic NAT IP address allocation. - IPSEC_INTERCONNECT for addresses created from a private IP range that are reserved for a VLAN attachment in an HA VPN over Cloud Interconnect configuration. These addresses are regional resources. - SHARED_LOADBALANCER_VIP for an internal IP address that is assigned to multiple internal forwarding rules. - PRIVATE_SERVICE_CONNECT for a private network address that is used to configure Private Service Connect. Only global internal addresses can use this purpose.

Check the Purpose enum for the list of possible values.

Parameter
Name Description
var string
Returns
Type Description
$this

getRegion

[Output Only] The URL of the region where a regional address resides. For regional addresses, you must specify the region as a path parameter in the HTTP request URL. This field is not applicable to global addresses.

Returns
Type Description
string

hasRegion

clearRegion

setRegion

[Output Only] The URL of the region where a regional address resides. For regional addresses, you must specify the region as a path parameter in the HTTP request URL. This field is not applicable to global addresses.

Parameter
Name Description
var string
Returns
Type Description
$this

[Output Only] Server-defined URL for the resource.

Returns
Type Description
string

[Output Only] Server-defined URL for the resource.

Parameter
Name Description
var string
Returns
Type Description
$this

getStatus

[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.

Check the Status enum for the list of possible values.

Returns
Type Description
string

hasStatus

clearStatus

setStatus

[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.

Check the Status enum for the list of possible values.

Parameter
Name Description
var string
Returns
Type Description
$this

getSubnetwork

The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with a GCE_ENDPOINT or DNS_RESOLVER purpose.

Returns
Type Description
string

hasSubnetwork

clearSubnetwork

setSubnetwork

The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with a GCE_ENDPOINT or DNS_RESOLVER purpose.

Parameter
Name Description
var string
Returns
Type Description
$this

getUsers

[Output Only] The URLs of the resources that are using this address.

Returns
Type Description
Google\Protobuf\Internal\RepeatedField

setUsers

[Output Only] The URLs of the resources that are using this address.

Parameter
Name Description
var string[]
Returns
Type Description
$this