Show / Hide Table of Contents

Class PrivateIp

A private IP is a conceptual term that refers to an IPv4 private IP address and related properties. The privateIp object is the API representation of a private IP.
Note: For information about IPv6 addresses, see {@link Ipv6}.
Each instance has a primary private IP that is automatically created and assigned to the primary VNIC during instance launch. If you add a secondary VNIC to the instance, it also automatically gets a primary private IP. You can't remove a primary private IP from its VNIC. The primary private IP is automatically deleted when the VNIC is terminated.
You can add secondary private IPs to a VNIC after it's created. For more information, see the privateIp operations and also IP Addresses.
Note: Only {@link #listPrivateIps(ListPrivateIpsRequest) listPrivateIps} and {@link #getPrivateIp(GetPrivateIpRequest) getPrivateIp} work with primary private IPs. To create and update primary private IPs, you instead work with instance and VNIC operations. For example, a primary private IP's properties come from the values you specify in {@link CreateVnicDetails} when calling either {@link #launchInstance(LaunchInstanceRequest) launchInstance} or {@link #attachVnic(AttachVnicRequest) attachVnic}. To update the hostname for a primary private IP, you use {@link #updateVnic(UpdateVnicRequest) updateVnic}.
PrivateIp objects that are created for use with the Oracle Cloud VMware Solution are assigned to a VLAN and not a VNIC in a subnet. See the descriptions of the relevant attributes in the PrivateIp object. Also see {@link Vlan}.
To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Inheritance
object
PrivateIp
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 PrivateIp

Properties

AvailabilityDomain

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

The private IP's availability domain. This attribute will be null if this is a secondary private IP assigned to a VNIC that is in a regional subnet.
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 private IP.

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"}

HostnameLabel

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

The hostname for the private IP. Used for DNS. The value is the hostname portion of the private IP's fully qualified domain name (FQDN) (for example, bminstance1 in FQDN bminstance1.subnet123.vcn1.oraclevcn.com). Must be unique across all VNICs in the subnet and comply with RFC 952 and RFC 1123.
For more information, see DNS in Your Virtual Cloud Network.
Example: bminstance1

Id

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

The private IP's Oracle ID (OCID).

IpAddress

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

The private IP address of the privateIp object. The address is within the CIDR of the VNIC's subnet.
However, if the PrivateIp object is being used with a VLAN as part of the Oracle Cloud VMware Solution, the address is from the range specified by the cidrBlock attribute for the VLAN. See {@link Vlan}.
Example: 10.0.3.3

IpState

Declaration
[JsonProperty(PropertyName = "ipState")]
[JsonConverter(typeof(ResponseEnumConverter))]
public PrivateIp.IpStateEnum? IpState { get; set; }
Property Value
Type Description
PrivateIp.IpStateEnum?

State of the IP address. If an IP address is assigned to a VNIC it is ASSIGNED, otherwise it is AVAILABLE.

IsPrimary

Declaration
[JsonProperty(PropertyName = "isPrimary")]
public bool? IsPrimary { get; set; }
Property Value
Type Description
bool?

Whether this private IP is the primary one on the VNIC. Primary private IPs are unassigned and deleted automatically when the VNIC is terminated.
Example: true

Lifetime

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

Lifetime of the IP address. There are two types of IPs:

  • Ephemeral
  • Reserved

RouteTableId

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

The OCID of the route table the IP address or VNIC will use. For more information, see Per-resource Routing.

SubnetId

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

The OCID of the subnet the VNIC is in.
However, if the PrivateIp object is being used with a VLAN as part of the Oracle Cloud VMware Solution, the subnetId is null.

TimeCreated

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

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

VlanId

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

Applicable only if the PrivateIp object is being used with a VLAN as part of the Oracle Cloud VMware Solution. The vlanId is the OCID of the VLAN. See {@link Vlan}.

VnicId

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

The OCID of the VNIC the private IP is assigned to. The VNIC and private IP must be in the same subnet. However, if the PrivateIp object is being used with a VLAN as part of the Oracle Cloud VMware Solution, the vnicId is null.

In this article
Back to top