> For the complete documentation index, see [llms.txt](https://docs.exads.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.exads.com/ad-server/setting-up/setting-up-dns-exads.md).

# Setting up DNS for EXADS

To set up your own domain(s) for use with EXADS, you will need to create some CNAME records in your DNS zone(s):

## Full Configuration

<table data-header-hidden="false" data-header-sticky data-search="false"><thead><tr><th>Name/Host/Alias</th><th>CNAME target</th><th>Purpose</th><th>End Users</th></tr></thead><tbody><tr><td><code>admin</code></td><td><code>v3j9t5q9.ab1n.net</code></td><td>Admin Panel</td><td></td></tr><tr><td><code>s</code></td><td><code>tk6if76q.ab1n.net</code></td><td>Ad Serving</td><td>Yes</td></tr><tr><td><code>a</code></td><td><code>w2u4v9e1.ab1n.net</code></td><td>Content Delivery</td><td>Yes</td></tr><tr><td><code>rtb</code></td><td><code>ka8ing2z.ab1n.net</code></td><td>RTB</td><td></td></tr><tr><td><code>api</code></td><td><code>x0xmrxm4.ab1n.net</code></td><td>API</td><td></td></tr><tr><td><code>mcp</code></td><td><code>yc6mxn9s.ab1n.net</code></td><td>MCP Server</td><td></td></tr><tr><td><code>_acme-challenge</code></td><td><code>&#x3C;your-domain>.ac.0x3e.net</code></td><td>TLS (Let's Encrypt)</td><td></td></tr><tr><td><code>exads._domainkey</code></td><td><code>_dkim.exads.com</code></td><td>Email Signing</td><td></td></tr></tbody></table>

**Important Notes**:

* The *Name/Host/Alias* above with `ab1n.net` targets are the recommended values, but can be set to anything else. Only the `_acme-challenge` and `exads._domainkey` must be kept as-is.
* Replace `<your-domain>` in the `_acme-challenge` target with your exact domain, for instance `example.com.ac.0x3e.net`. The TLD such as `.com` **must be included**.
* The `mcp` record is only needed if the optional [MCP Server](https://docs.exads.com/mcp/) add-on is enabled for your network.

## Dedicated Ad Serving Domain

Optionally **but highly recommended**, you may want to configure a different dedicated domain for everything visible to end users. When doing so, skip the `s` and `a` records in the zone used above and create them only in a different one, along with another `_acme-challenge` record (with the CNAME target's `<your-domain>` adapted to this dedicated domain).

In this case, your Ad Server will be using two different domains, one visible only to your own users (Admin Panel, RTB Endpoint, API, MCP Server, Email Senders), and a different one seen by end users.

## Additional Notes

* It is recommended to set a TTL of at least 3600 seconds for all records.
* Some DNS providers require a trailing dot at the end of the CNAME target.
* If using Cloudflare, the Proxy Status must be set to "DNS only" for all records.
* If using `CAA` records for your domain, one must be added for `letsencrypt.org`.
* If using `SPF` for your domain, `include:_spf.exads.com` must be added to the relevant record.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.exads.com/ad-server/setting-up/setting-up-dns-exads.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
