Show / Hide Table of Contents

Class Vnic

A virtual network interface card. Each VNIC resides in a subnet in a VCN. An instance attaches to a VNIC to obtain a network connection into the VCN through that subnet. Each instance has a primary VNIC that is automatically created and attached during launch. You can add secondary VNICs to an instance after it's launched. For more information, see Virtual Network Interface Cards (VNICs).
Each VNIC has a primary private IP that is automatically assigned during launch. You can add secondary private IPs to a VNIC after it's created. For more information, see {@link #createPrivateIp(CreatePrivateIpRequest) createPrivateIp} and IP Addresses.

If you are an Oracle Cloud VMware Solution customer, you will have secondary VNICs that reside in a VLAN instead of a subnet. These VNICs have other differences, which are called out in the descriptions of the relevant attributes in the Vnic 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
Vnic
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 Vnic

Properties

AvailabilityDomain

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

The VNIC's availability domain.
Example: Uocm:PHX-AD-1

Remarks

Required

CompartmentId

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

The OCID of the compartment containing the VNIC.

Remarks

Required

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 VNIC's primary private IP. Used for DNS. The value is the hostname portion of the primary 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
[Required(ErrorMessage = "Id is required.")]
[JsonProperty(PropertyName = "id")]
public string Id { get; set; }
Property Value
Type Description
string

The OCID of the VNIC.

Remarks

Required

Ipv6Addresses

Declaration
[JsonProperty(PropertyName = "ipv6Addresses")]
public List<string> Ipv6Addresses { get; set; }
Property Value
Type Description
List<string>

List of IPv6 addresses assigned to the VNIC.
Example: 2001:DB8::

IsPrimary

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

Whether the VNIC is the primary VNIC (the VNIC that is automatically created and attached during instance launch).

LifecycleState

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

The current state of the VNIC.

Remarks

Required

MacAddress

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

The MAC address of the VNIC.
If the VNIC belongs to a VLAN as part of the Oracle Cloud VMware Solution, the MAC address is learned. If the VNIC belongs to a subnet, the MAC address is a static, Oracle-provided value.
Example: 00:00:00:00:00:01

NsgIds

Declaration
[JsonProperty(PropertyName = "nsgIds")]
public List<string> NsgIds { get; set; }
Property Value
Type Description
List<string>

A list of the OCIDs of the network security groups that the VNIC belongs to.
If the VNIC belongs to a VLAN as part of the Oracle Cloud VMware Solution (instead of belonging to a subnet), the value of the nsgIds attribute is ignored. Instead, the VNIC belongs to the NSGs that are associated with the VLAN itself. See {@link Vlan}.
For more information about NSGs, see {@link NetworkSecurityGroup}.

PrivateIp

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

The private IP address of the primary privateIp object on the VNIC. The address is within the CIDR of the VNIC's subnet.
Example: 10.0.3.3

PublicIp

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

The public IP address of the VNIC, if one is assigned.

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.

SecurityAttributes

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

Security attributes are labels for a resource that can be referenced in a Zero Trust Packet Routing (ZPR) policy to control access to ZPR-supported resources.
Example: {"Oracle-DataSecurity-ZPR": {"MaxEgressCount": {"value":"42","mode":"audit"}}}

SkipSourceDestCheck

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

Whether the source/destination check is disabled on the VNIC. Defaults to false, which means the check is performed. For information about why you would skip the source/destination check, see Using a Private IP as a Route Target.

If the VNIC belongs to a VLAN as part of the Oracle Cloud VMware Solution (instead of belonging to a subnet), the skipSourceDestCheck attribute is true. This is because the source/destination check is always disabled for VNICs in a VLAN.
Example: true

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
[Required(ErrorMessage = "TimeCreated is required.")]
[JsonProperty(PropertyName = "timeCreated")]
public DateTime? TimeCreated { get; set; }
Property Value
Type Description
DateTime?

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

Remarks

Required

VlanId

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

If the VNIC belongs to a VLAN as part of the Oracle Cloud VMware Solution (instead of belonging to a subnet), the vlanId is the OCID of the VLAN the VNIC is in. See {@link Vlan}. If the VNIC is instead in a subnet, subnetId has a value.

In this article
Back to top