DNS
This section documents our typical DNS and registrar workflow for client and internal domains.
Quick decision tree
Use this when you’re trying to figure out where the domain is managed and what to do next.
Start
└─ What TLD is it?
├─ .uy / .com.uy
│ ├─ Check our primary nic.com.uy account
│ └─ Not there?
│ - Check credentials doc for a client-specific nic account
│ - Ask the client
│
├─ .com
│ └─ Check our Namecrave account or credentials doc
│
└─ Other
└─ Check credentials doc or ask the client
Then (all cases):
1) Add the domain to Cloudflare (if it’s not there yet)
- Cloudflare → Add a site / Add domain
- Choose the plan (pick Free)
- Cloudflare will show the nameservers to use
2) Delegate nameservers to Cloudflare at the registrar (nic, namecrave, etc)
3) Configure Cloudflare DNS for:
- GitHub Pages (website)
- Performive (email), if applicable
Credentials: Credentials doc
Standard approach (GitHub Pages)
1) Delegate DNS to Cloudflare
Our standard pattern is:
- Registrar (e.g. nic.com.uy / Namecrave) holds the domain registration.
- The domain’s nameservers are set to Cloudflare (delegation).
Once delegated, all record management happens in Cloudflare DNS.
2) In Cloudflare, point the site to GitHub Pages
For GitHub Pages, Cloudflare should contain the DNS records required for the site to resolve correctly.
Example (our typical GH Pages setup)
We usually do this with two CNAMEs, like in the screenshot:
1) Apex (root) domain
- Type: CNAME
- Name:
your-domain.uy(or@, that also works) - Target:
sitios-agencia-digital.github.io - Proxy status: DNS only
This works because Cloudflare supports CNAME flattening at the apex.
2) www (this allows for "www." prefixing)
- Type: CNAME
- Name:
www - Target:
your-domain.uy - Proxy status: either way is fine (proxied works for this)
Notes:
- Keep the root record DNS-only (not proxied) unless you have a specific reason (proxying can break validation / HTTPS issuance depending on setup).
- After DNS is in place, GitHub Pages will validate the custom domain in Repo → Settings → Pages.
3) If the domain also has email, point email to Performive
If the domain is used for email, Cloudflare should also contain the MX/TXT records required by Performive (and any SPF/DKIM/DMARC records in use).