---
id: "oci-dns-private-zone"
type: "component"
kind: "dns"
provider: "oci"
category: "edge"
docs: "https://docs.oracle.com/en-us/iaas/Content/DNS/Tasks/privatedns.htm"
url: "https://localhost:3000/catalogue/components/oci-dns-private-zone"
---

# DNS Private Zone

Private zone resolved by a VCN-dedicated resolver through attached views.

| | |
|---|---|
| Provider | [oci](https://localhost:3000/catalogue?provider=oci) |
| Kind | [DNS](https://localhost:3000/catalogue/kinds/dns) |
| Category | Edge |
| Official docs | [https://docs.oracle.com/en-us/iaas/Content/DNS/Tasks/privatedns.htm](https://docs.oracle.com/en-us/iaas/Content/DNS/Tasks/privatedns.htm) |

## Properties

| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| `anycast` | boolean | — | no | false | **false** |
| `defaultViewProtected` | boolean | — | no | true | inherited |
| `forwardingEndpoint` | boolean | — | no | false | inherited |
| `geoRouting` | boolean | — | no | false | **false** |
| `healthChecked` | boolean | — | no | false | **false** |
| `listeningEndpoint` | boolean | — | no | false | inherited |
| `managed` | boolean | — | no | true | **true** |
| `redundantProviders` | boolean | — | no | false | **false** |
| `resolverCreatedWithVcn` | boolean | — | no | true | inherited |
| `resolverListenAddress` | string | — | no | "169.254.169.254" | inherited |
| `ttlSeconds` | integer | — | no | — | inherited |

Bold values are the ones this component pins.

## Rules that apply · 1

### Shared dependency without redundancy `shared-dependency-without-redundancy` (error)

- Page: https://localhost:3000/catalogue/rules/shared-dependency-without-redundancy.md
- Why: The design requires redundant discovery, but this DNS or coordination service, which everything depends on, runs on a single provider or a single replica. Its failure is the whole system's failure.
- Applies to: every node of kind dns or coordination-service
- Message: Shared dependency '{{node.id}}' is not redundant, but the design requires redundant discovery.

It fires when:

- all of these hold:
  - the design requirement `availability.discoveryRedundant` is true
  - any of these hold:
    - the node's `redundantProviders` is false
    - the node's `replicated` is false

## Other products of the same kind · 33

- [Alibaba Cloud DNS](https://localhost:3000/catalogue/components/alibaba-dns.md) `alibaba-dns` — alibabacloud
- [Alibaba Cloud Domain Names](https://localhost:3000/catalogue/components/alibaba-domains.md) `alibaba-domains` — alibabacloud
- [Alibaba Cloud DNS PrivateZone](https://localhost:3000/catalogue/components/alibaba-private-zone.md) `alibaba-private-zone` — alibabacloud
- [Amazon Application Recovery Controller (ARC)](https://localhost:3000/catalogue/components/aws-application-recovery-controller.md) `aws-application-recovery-controller` — aws
- [Amazon Route 53 Global Resolver](https://localhost:3000/catalogue/components/aws-route53-global-resolver.md) `aws-route53-global-resolver` — aws
- [Amazon Route 53 Resolver endpoint](https://localhost:3000/catalogue/components/aws-route53-resolver.md) `aws-route53-resolver` — aws
- [Amazon Route 53](https://localhost:3000/catalogue/components/route53.md) `route53` — aws
- [Azure DNS](https://localhost:3000/catalogue/components/azure-dns.md) `azure-dns` — azure
- [Azure DNS Private Resolver](https://localhost:3000/catalogue/components/azure-dns-private-resolver.md) `azure-dns-private-resolver` — azure
- [Azure Private DNS](https://localhost:3000/catalogue/components/azure-private-dns.md) `azure-private-dns` — azure
- [Azure Traffic Manager](https://localhost:3000/catalogue/components/azure-traffic-manager.md) `azure-traffic-manager` — azure
- [Cloudflare DNS](https://localhost:3000/catalogue/components/cloudflare-dns.md) `cloudflare-dns` — cloudflare
- [Cloudflare Internal DNS](https://localhost:3000/catalogue/components/cloudflare-internal-dns.md) `cloudflare-internal-dns` — cloudflare
- [Cloudflare Registrar](https://localhost:3000/catalogue/components/cloudflare-registrar.md) `cloudflare-registrar` — cloudflare
- [Cloudflare Secondary DNS](https://localhost:3000/catalogue/components/cloudflare-secondary-dns.md) `cloudflare-secondary-dns` — cloudflare
- [BIND 9](https://localhost:3000/catalogue/components/bind.md) `bind` — default
- [CoreDNS](https://localhost:3000/catalogue/components/coredns.md) `coredns` — default
- [Generic DNS](https://localhost:3000/catalogue/components/dns.md) `dns` — default
- [DNS](https://localhost:3000/catalogue/components/dns-resolver.md) `dns-resolver` — default
- [dnsmasq](https://localhost:3000/catalogue/components/dnsmasq.md) `dnsmasq` — default
- [ExternalDNS](https://localhost:3000/catalogue/components/external-dns.md) `external-dns` — default
- [Knot DNS](https://localhost:3000/catalogue/components/knot-dns.md) `knot-dns` — default
- [IBM NS1 Connect](https://localhost:3000/catalogue/components/ns1.md) `ns1` — default
- [Pi-hole](https://localhost:3000/catalogue/components/pi-hole.md) `pi-hole` — default
- [PowerDNS Authoritative Server](https://localhost:3000/catalogue/components/powerdns.md) `powerdns` — default
- [Unbound](https://localhost:3000/catalogue/components/unbound.md) `unbound` — default
- [DigitalOcean DNS](https://localhost:3000/catalogue/components/digitalocean-dns.md) `digitalocean-dns` — digitalocean
- [Google Cloud DNS](https://localhost:3000/catalogue/components/google-cloud-dns.md) `google-cloud-dns` — gcp
- [Cloud Domains](https://localhost:3000/catalogue/components/google-cloud-domains.md) `google-cloud-domains` — gcp
- [IBM Cloud DNS Services](https://localhost:3000/catalogue/components/ibm-dns-services.md) `ibm-dns-services` — ibm
- [DNS Public Zone](https://localhost:3000/catalogue/components/oci-dns-zone.md) `oci-dns-zone` — oci
- [Traffic Management Steering Policy](https://localhost:3000/catalogue/components/oci-traffic-management.md) `oci-traffic-management` — oci
- [OpenStack Designate](https://localhost:3000/catalogue/components/openstack-designate.md) `openstack-designate` — openstack

## Use it in a design

```yaml
nodes:
  - { id: "oci-dns-private-zone", component: "oci-dns-private-zone" }
```

## Source (`component` YAML, verbatim)

```yaml
# yaml-language-server: $schema=../../schema/component.schema.json
# Oracle Cloud private DNS zone and VCN-dedicated resolver: creating a VCN also creates a dedicated
# resolver with a protected default view, listening on 169.254.169.254 ("Private DNS"). Zones answer
# only clients reaching them through a VCN whose resolver has the view attached; endpoints are opt-in.
schemaVersion: "1"
type: "component"
id: "oci-dns-private-zone"
kind: "dns"
provider: "oci"
docs: "https://docs.oracle.com/en-us/iaas/Content/DNS/Tasks/privatedns.htm"
defaults:
  managed: true
  anycast: false
  geoRouting: false
  healthChecked: false
  redundantProviders: false
properties:
  resolverCreatedWithVcn:
    type: "boolean"
    default: true
  defaultViewProtected:
    type: "boolean"
    default: true
  resolverListenAddress:
    type: "string"
    default: "169.254.169.254"
  listeningEndpoint:
    type: "boolean"
    default: false
  forwardingEndpoint:
    type: "boolean"
    default: false
```

Human page: https://localhost:3000/catalogue/components/oci-dns-private-zone
