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.
Inherited Members
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.
|
CidrPrefixLength
Declaration
[JsonProperty(PropertyName = "cidrPrefixLength")]
public int? CidrPrefixLength { get; set; }
Property Value
| Type | Description |
|---|---|
| int? | The secondary IPv4 CIDR prefix length. |
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.
|
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.
|
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, |
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 |
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. |
Ipv4SubnetCidrAtCreation
Declaration
[JsonProperty(PropertyName = "ipv4SubnetCidrAtCreation")]
public string Ipv4SubnetCidrAtCreation { get; set; }
Property Value
| Type | Description |
|---|---|
| string | Ipv4 Subnet CIDR specified whn creating the PrivateIP. |
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.
|
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:
|
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.
|
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.
|
VlanId
Declaration
[JsonProperty(PropertyName = "vlanId")]
public string VlanId { get; set; }
Property Value
| Type | Description |
|---|---|
| string | Applicable only if the |
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 |