π Software Design Document: Domain & DNS Architecture for olanna.ai
1. Overview
This document outlines the DNS and domain configuration for olanna.ai, including infrastructure integration between:
- AWS Route 53 (Registrar & DNS provider)
- Zoho Mail (Email services)
- DigitalOcean (Web & app hosting)
Conflicting setup
After adding additional DNS entries to DigitalOcean, zoho maile stopped working. Adding the recommended forards to zoho and DigitalOCean propably led to conflict. Also additional DNS servers from AWS might need to be disabled.
2. Domain Registration & DNS Hosting
- Registrar: AWS Route 53
- Public Hosted Zone:
- Domain:
olanna.ai - Zone ID:
Z090673619K4NO0Q6FJN8 - Type: Public Hosted Zone
- Created By: Route 53 Registrar
- Domain:
- Authoritative Name Servers (from AWS Route 53):
ns-1924.awsdns-48.co.ukns-1390.awsdns-45.orgns-20.awsdns-02.comns-559.awsdns-05.net
Primary DNS
AWS Route 53 is the authoritative DNS provider for olanna.ai. Any DNS queries will resolve from these servers unless the domain is delegated elsewhere.
3. DNS Record Configuration
3.1 DigitalOcean (WebHosting)
All web services are hosted on a single VPS with the IP: 143.110.159.149. The following A records are configured in both Route 53 and DigitalOcean for redundancy and visibility:
| Subdomain | Record Type | Value | TTL |
|---|---|---|---|
@ (olanna.ai) |
A | 143.110.159.149 | 300 |
rabbitmq.olanna.ai |
A | 143.110.159.149 | 300 |
monitoring |
A | 143.110.159.149 | 300 |
apis |
A | 143.110.159.149 | 300 |
admin |
A | 143.110.159.149 | 300 |
traefik |
A | 143.110.159.149 | 300 |
database |
A | 143.110.159.149 | 300 |
docs |
A | 143.110.159.149 | 300 |
DigitalOcean DNS Panel
- A duplicate set of A records exists in DigitalOcean.
- DigitalOcean also defines NS records (
ns1/ns2/ns3.digitalocean.com), but these are ignored since AWS Route 53 is authoritative.
Routing
-
MX Records (in Route 53):
10 mx.zoho.com20 mx2.zoho.com50 mx3.zoho.com
-
SPF Record:
"v=spf1 include:zohomail.com ~all"
-
DKIM Record:
zmail._domainkey.olanna.ai- Value includes Zoho's public key
3.2 AWS Route 53 (Zoho Email)
- TXT Record (Zoho domain verification):
"zoho-verification=zb11927526.zmverify.zoho.com"
Potential DNS duplication in DigitalOcean
Potentially, the DNS sercer entries might have to be removed.
4. Interaction Between AWS, Zoho, and DigitalOcean
π Primary DNS Authority
- AWS Route 53 is the primary and authoritative DNS provider.
- It responds to all queries for
olanna.aiand subdomains. - All A, MX, TXT, SPF, and DKIM records are hosted here.
- It responds to all queries for
π DigitalOcean Hosting
- DigitalOcean hosts web applications and services.
- Route 53 A records point to a single DigitalOcean VPS.
- Requests for:
olanna.aidocs.olanna.ai- etc. are resolved by AWS and routed to DigitalOcean via the shared IP.
βοΈ Zoho Mail Integration
- AWS serves MX, SPF, TXT, and DKIM records for email routing and verification.
- Mail is routed externally to Zoho's mail servers.
5. Architecture Diagram
graph LR
A[olanna.ai<br> Registered at AWS Route 53]
B[AWS Route 53 Hosted Zone<br>Authoritative DNS]
C[DigitalOcean<br>Web Hosting: 143.110.159.149]
D[Zoho Mail Servers]
A --> B
subgraph Route53 Routing Records
B1[A Records β DigitalOcean IP]
end
B --> B1
subgraph Digital Ocean Routing Records
C1[MX / SPF / TXT / DKIM β Zoho]
end
C1 --> C
B1 --> C1
C1 --> D
6. Design Considerations
- Priority & Authority:
- Only AWS Route 53 DNS is used. DigitalOceanβs DNS is configured but not active.
- Simplicity:
- All web subdomains resolve to a single VPS IP.
- Separation of Concerns:
- DNS: AWS Route 53
- Mail: Zoho
- Web: DigitalOcean
- Reverse Proxy Use:
- Traefik likely manages routing to apps inside DigitalOcean.
7. Future Enhancements
- Enable DNS query logging in Route 53
- Automate DNS with Terraform or AWS CDK
- Enable DNSSEC on domain
- Delegate internal subdomains (e.g.,
*.internal.olanna.ai) to other DNS services if needed
8. Appendix
- Domain:
olanna.ai - DNS Authority: AWS Route 53
- Web Hosting: DigitalOcean
- Email Provider: Zoho
- Public IP:
143.110.159.149