Skip to content

πŸ“„ 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
  • Authoritative Name Servers (from AWS Route 53):
    • ns-1924.awsdns-48.co.uk
    • ns-1390.awsdns-45.org
    • ns-20.awsdns-02.com
    • ns-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.com
    • 20 mx2.zoho.com
    • 50 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.ai and subdomains.
    • All A, MX, TXT, SPF, and DKIM records are hosted here.

🌐 DigitalOcean Hosting

  • DigitalOcean hosts web applications and services.
  • Route 53 A records point to a single DigitalOcean VPS.
  • Requests for:
    • olanna.ai
    • docs.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
Hold "Alt" / "Option" to enable pan & zoom

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