50 lines
1.6 KiB
Markdown
50 lines
1.6 KiB
Markdown
# DNS Auto-Configuration Pitfall
|
|
|
|
## Problem
|
|
|
|
Nodeloc domains do NOT auto-configure DNS records after registration. The domain is registered and shows as "active" in the API, but has **zero DNS records** — no A, AAAA, CNAME, or any other record type.
|
|
|
|
## Symptoms
|
|
|
|
- `nslookup [REDACTED-NAME].loc.cc` → no IP returned
|
|
- `curl https://[REDACTED-NAME].loc.cc/v1/models` → exit code 6: "Could not resolve host"
|
|
- Domain appears in `GET /api/domains` with `"status":"active"`
|
|
|
|
## Root Cause
|
|
|
|
The nodeloc platform registers the domain in PowerDNS but does NOT create any default DNS records. You must manually add records via the DNS API or web UI.
|
|
|
|
## Fix
|
|
|
|
Add an A record pointing to your server's IP:
|
|
|
|
```bash
|
|
curl -s 'https://domain.nodeloc.com/api/dns/DOMAIN_ID/records' -X POST \
|
|
-H "Authorization: Bearer $TOKEN" \
|
|
-H 'Content-Type: application/json' \
|
|
-d '{"name":"@","type":"A","content":"YOUR.SERVER.IP","ttl":3600}'
|
|
```
|
|
|
|
If behind Cloudflare Tunnel / proxy, add a CNAME instead:
|
|
|
|
```bash
|
|
curl -s 'https://domain.nodeloc.com/api/dns/DOMAIN_ID/records' -X POST \
|
|
-H "Authorization: Bearer $TOKEN" \
|
|
-H 'Content-Type: application/json' \
|
|
-d '{"name":"@","type":"CNAME","content":"your-tunnel.cfargotunnel.com","ttl":3600}'
|
|
```
|
|
|
|
## Verification
|
|
|
|
After adding records, verify:
|
|
|
|
```bash
|
|
nslookup [REDACTED-NAME].loc.cc
|
|
# Should return the IP you set
|
|
```
|
|
|
|
DNS propagation may take 1-5 minutes.
|
|
|
|
## Session Example (2026-07-28)
|
|
|
|
`[REDACTED-NAME].loc.cc` — domain was registered but had no DNS records. nslookup returned no IP, curl failed with exit code 6. The actual API server was running on `127.0.0.1:8080` and worked perfectly when accessed directly. |