Show / Hide Table of Contents

Class Zone

A DNS zone.
Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Inheritance
object
Zone
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Oci.DnsService.Models
Assembly: OCI.DotNetSDK.Dns.dll
Syntax
public class Zone

Properties

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 zone.

Remarks

Required

DefinedTags

Declaration
[Required(ErrorMessage = "DefinedTags is required.")]
[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"}}

Remarks

Required

DnssecConfig

Declaration
[JsonProperty(PropertyName = "dnssecConfig")]
public DnssecConfig DnssecConfig { get; set; }
Property Value
Type Description
DnssecConfig

DnssecState

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

The state of DNSSEC on the zone.
For DNSSEC to function, every parent zone in the DNS tree up to the top-level domain (or an independent trust anchor) must also have DNSSEC correctly set up. After enabling DNSSEC, you must add a DS record to the zone's parent zone containing the KskDnssecKeyVersion data. You can find the DS data in the dsData attribute of the KskDnssecKeyVersion. Then, use the PromoteZoneDnssecKeyVersion operation to promote the KskDnssecKeyVersion.
New KskDnssecKeyVersions are generated annually, a week before the existing KskDnssecKeyVersion's expiration. To rollover a KskDnssecKeyVersion, you must replace the parent zone's DS record containing the old KskDnssecKeyVersion data with the data from the new KskDnssecKeyVersion.
To remove the old DS record without causing service disruption, wait until the old DS record's TTL has expired, and the new DS record has propagated. After the DS replacement has been completed, then the PromoteZoneDnssecKeyVersion operation must be called.
Metrics are emitted in the oci_dns namespace daily for each KskDnssecKeyVersion indicating how many days are left until expiration. We recommend that you set up alarms and notifications for KskDnssecKeyVersion expiration so that the necessary parent zone updates can be made and the PromoteZoneDnssecKeyVersion operation can be called.
Enabling DNSSEC results in additional records in DNS responses which increases their size and can cause higher response latency.
For more information, see DNSSEC.

Remarks

Required

ExternalDownstreams

Declaration
[Required(ErrorMessage = "ExternalDownstreams is required.")]
[JsonProperty(PropertyName = "externalDownstreams")]
public List<ExternalDownstream> ExternalDownstreams { get; set; }
Property Value
Type Description
List<ExternalDownstream>

External secondary servers for the zone. This field is currently not supported when zoneType is SECONDARY or scope is PRIVATE.

Remarks

Required

ExternalMasters

Declaration
[Required(ErrorMessage = "ExternalMasters is required.")]
[JsonProperty(PropertyName = "externalMasters")]
public List<ExternalMaster> ExternalMasters { get; set; }
Property Value
Type Description
List<ExternalMaster>

External master servers for the zone. externalMasters becomes a required parameter when the zoneType value is SECONDARY.

Remarks

Required

FreeformTags

Declaration
[Required(ErrorMessage = "FreeformTags is required.")]
[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"}

Remarks

Required

Id

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

The OCID of the zone.

Remarks

Required

IsProtected

Declaration
[Required(ErrorMessage = "IsProtected is required.")]
[JsonProperty(PropertyName = "isProtected")]
public bool? IsProtected { get; set; }
Property Value
Type Description
bool?

A Boolean flag indicating whether or not parts of the resource are unable to be explicitly managed.

Remarks

Required

LifecycleState

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

The current state of the zone resource.

Remarks

Required

Name

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

The name of the zone.

Remarks

Required

Nameservers

Declaration
[Required(ErrorMessage = "Nameservers is required.")]
[JsonProperty(PropertyName = "nameservers")]
public List<Nameserver> Nameservers { get; set; }
Property Value
Type Description
List<Nameserver>

The authoritative nameservers for the zone.

Remarks

Required

Scope

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

The scope of the zone.

Remarks

Required

Self

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

The canonical absolute URL of the resource.

Remarks

Required

Serial

Declaration
[Required(ErrorMessage = "Serial is required.")]
[JsonProperty(PropertyName = "serial")]
public long? Serial { get; set; }
Property Value
Type Description
long?

The current serial of the zone. As seen in the zone's SOA record.

Remarks

Required

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 resource was created in "YYYY-MM-ddThh:mm:ssZ" format with a Z offset, as defined by RFC 3339.
**Example: ** 2016-07-22T17:23:59:60Z

Remarks

Required

Version

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

Version is the never-repeating, totally-orderable, version of the zone, from which the serial field of the zone's SOA record is derived.

Remarks

Required

ViewId

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

The OCID of the private view containing the zone. This value will be null for zones in the global DNS, which are publicly resolvable and not part of a private view.

ZoneTransferServers

Declaration
[JsonProperty(PropertyName = "zoneTransferServers")]
public List<ZoneTransferServer> ZoneTransferServers { get; set; }
Property Value
Type Description
List<ZoneTransferServer>

The OCI nameservers that transfer the zone data with external nameservers.

ZoneType

Declaration
[Required(ErrorMessage = "ZoneType is required.")]
[JsonProperty(PropertyName = "zoneType")]
[JsonConverter(typeof(ResponseEnumConverter))]
public Zone.ZoneTypeEnum? ZoneType { get; set; }
Property Value
Type Description
Zone.ZoneTypeEnum?

The type of the zone. Must be either PRIMARY or SECONDARY. SECONDARY is only supported for GLOBAL zones.

Remarks

Required

In this article
Back to top