Show / Hide Table of Contents

Class PublicIp

A public IP is a conceptual term that refers to a public IP address and related properties. The publicIp object is the API representation of a public IP.
There are two types of public IPs:

  1. Ephemeral
  2. Reserved
    For more information and comparison of the two types, see Public IP Addresses.
Inheritance
object
PublicIp
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Oci.CoreService.Models
Assembly: OCI.DotNetSDK.Core.dll
Syntax
public class PublicIp

Properties

AssignedEntityId

Declaration
[JsonProperty(PropertyName = "assignedEntityId")]
public string AssignedEntityId { get; set; }
Property Value
Type Description
string

The OCID of the entity the public IP is assigned to, or in the process of being assigned to.

AssignedEntityType

Declaration
[JsonProperty(PropertyName = "assignedEntityType")]
[JsonConverter(typeof(ResponseEnumConverter))]
public PublicIp.AssignedEntityTypeEnum? AssignedEntityType { get; set; }
Property Value
Type Description
PublicIp.AssignedEntityTypeEnum?

The type of entity the public IP is assigned to, or in the process of being assigned to.

AvailabilityDomain

Declaration
[JsonProperty(PropertyName = "availabilityDomain")]
public string AvailabilityDomain { get; set; }
Property Value
Type Description
string

The public IP's availability domain. This property is set only for ephemeral public IPs that are assigned to a private IP (that is, when the scope of the public IP is set to AVAILABILITY_DOMAIN). The value is the availability domain of the assigned private IP.
Example: Uocm:PHX-AD-1

CompartmentId

Declaration
[JsonProperty(PropertyName = "compartmentId")]
public string CompartmentId { get; set; }
Property Value
Type Description
string

The OCID of the compartment containing the public IP. For an ephemeral public IP, this is the compartment of its assigned entity (which can be a private IP or a regional entity such as a NAT gateway). For a reserved public IP that is currently assigned, its compartment can be different from the assigned private IP's.

DefinedTags

Declaration
[JsonProperty(PropertyName = "definedTags")]
public Dictionary<string, Dictionary<string, object>> DefinedTags { get; set; }
Property Value
Type Description
Dictionary<string, Dictionary<string, object>>

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: {"Operations": {"CostCenter": "42"}}

DisplayName

Declaration
[JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
Property Value
Type Description
string

A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

FreeformTags

Declaration
[JsonProperty(PropertyName = "freeformTags")]
public Dictionary<string, string> FreeformTags { get; set; }
Property Value
Type Description
Dictionary<string, string>

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
Example: {"Department": "Finance"}

Id

Declaration
[JsonProperty(PropertyName = "id")]
public string Id { get; set; }
Property Value
Type Description
string

The public IP's Oracle ID (OCID).

IpAddress

Declaration
[JsonProperty(PropertyName = "ipAddress")]
public string IpAddress { get; set; }
Property Value
Type Description
string

The public IP address of the publicIp object.
Example: 203.0.113.2

LifecycleState

Declaration
[JsonProperty(PropertyName = "lifecycleState")]
[JsonConverter(typeof(ResponseEnumConverter))]
public PublicIp.LifecycleStateEnum? LifecycleState { get; set; }
Property Value
Type Description
PublicIp.LifecycleStateEnum?

The public IP's current state.

Lifetime

Declaration
[JsonProperty(PropertyName = "lifetime")]
[JsonConverter(typeof(ResponseEnumConverter))]
public PublicIp.LifetimeEnum? Lifetime { get; set; }
Property Value
Type Description
PublicIp.LifetimeEnum?

Defines when the public IP is deleted and released back to Oracle's public IP pool.

  • EPHEMERAL: The lifetime is tied to the lifetime of its assigned entity. An ephemeral public IP must always be assigned to an entity. If the assigned entity is a private IP, the ephemeral public IP is automatically deleted when the private IP is deleted, when the VNIC is terminated, or when the instance is terminated. If the assigned entity is a {@link NatGateway}, the ephemeral public IP is automatically deleted when the NAT gateway is terminated.
  • RESERVED: You control the public IP's lifetime. You can delete a reserved public IP whenever you like. It does not need to be assigned to a private IP at all times.
    For more information and comparison of the two types, see Public IP Addresses.

PrivateIpId

Declaration
[JsonProperty(PropertyName = "privateIpId")]
public string PrivateIpId { get; set; }
Property Value
Type Description
string

Deprecated. Use assignedEntityId instead.
The OCID of the private IP that the public IP is currently assigned to, or in the process of being assigned to.
Note: This is null if the public IP is not assigned to a private IP, or is in the process of being assigned to one.

PublicIpPoolId

Declaration
[JsonProperty(PropertyName = "publicIpPoolId")]
public string PublicIpPoolId { get; set; }
Property Value
Type Description
string

The OCID of the pool object created in the current tenancy.

Scope

Declaration
[JsonProperty(PropertyName = "scope")]
[JsonConverter(typeof(ResponseEnumConverter))]
public PublicIp.ScopeEnum? Scope { get; set; }
Property Value
Type Description
PublicIp.ScopeEnum?

Whether the public IP is regional or specific to a particular availability domain.

  • REGION: The public IP exists within a region and is assigned to a regional entity (such as a {@link NatGateway}), or can be assigned to a private IP in any availability domain in the region. Reserved public IPs and ephemeral public IPs assigned to a regional entity have scope = REGION.
  • AVAILABILITY_DOMAIN: The public IP exists within the availability domain of the entity it's assigned to, which is specified by the availabilityDomain property of the public IP object. Ephemeral public IPs that are assigned to private IPs have scope = AVAILABILITY_DOMAIN.

TimeCreated

Declaration
[JsonProperty(PropertyName = "timeCreated")]
public DateTime? TimeCreated { get; set; }
Property Value
Type Description
DateTime?

The date and time the public IP was created, in the format defined by RFC3339.
Example: 2016-08-25T21:10:29.600Z

In this article
Back to top