From e07a856b1085e7a5577b91832e834fe29d577890 Mon Sep 17 00:00:00 2001 From: Spendlik Date: Mon, 10 Aug 2026 18:00:12 +0000 Subject: [PATCH] Merge WebSupport DNS gotchas into main Key Gotchas table; bump last-updated date to 2026-08-10 --- 00_index.md | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/00_index.md b/00_index.md index 0d11be9..9edc36f 100644 --- a/00_index.md +++ b/00_index.md @@ -1,5 +1,5 @@ # 00 — Master Index -> Last updated: 2026-07-28 +> Last updated: 2026-08-10 > Quick-reference card for Claude. Read this first, then load specific files only as needed. --- @@ -110,6 +110,9 @@ Script location: `/usr/local/bin/ddns-update.sh` in CT 108. Full credentials map | **NFS mounts** | Use `soft,timeo=30,retrans=3` — hard NFS can freeze Proxmox host | | **DDNS script** | `/tmp/ddns_last_ip` cache persists at runtime; cleared on reboot | | **WebSupport DNS** | Two separate management pages — missing the second caused an outage. DNS A record must exist before certbot can verify. Always update both pages. | +| **WebSupport DNS — duplicate A values** | WebSupport rejects (422) writing an A record whose IP value already exists on *any other record* in the zone, regardless of hostname. You cannot have two A records pointing at the same IP anywhere in the zone. Fix: all subdomains use CNAME → `spendlik.sk`; only the root A record ever holds an IP. | +| **WebSupport API — PUT silently resets `name`** | A `PUT` to `/v2/service/{id}/dns/record/{recordId}` that omits the `name` field does NOT preserve the existing name — it silently renames the record to the bare zone apex. Always include `name` explicitly in PUT payloads, or avoid partial-field updates. | +| **WebSupport API — POST `name` is relative** | Creating a record via POST: `name` is relative to the zone, not a full FQDN. Passing `"email.spendlik.sk"` creates `email.spendlik.sk.spendlik.sk`. Use the bare subdomain only (`"email"`, `"*"`, `"git"`). | | **Gitea writes** | Always read file content before writing — writes replace entire file | | **Proxmox kernel** | PINNED to `6.14.11-5-pve`. Do NOT unpin or upgrade without verifying NVIDIA 550 DKMS support first | | **OpenRGB** | Uninstalled — SMBus interaction with ADATA XPG GAMMIX D35 poses hardware risk. Do not reinstall. | @@ -204,12 +207,6 @@ Script location: `/usr/local/bin/ddns-update.sh` in CT 108. Full credentials map --- -| Area | Rule | -|---|---| -| **WebSupport DNS — duplicate A values** | WebSupport rejects (422) writing an A record whose IP value already exists on *any other record* in the zone, regardless of hostname. You cannot have two A records pointing at the same IP anywhere in the zone. Fix: all subdomains use CNAME → `spendlik.sk`; only the root A record ever holds an IP. | -| **WebSupport API — PUT silently resets `name`** | A `PUT` to `/v2/service/{id}/dns/record/{recordId}` that omits the `name` field does NOT preserve the existing name — it silently renames the record to the bare zone apex. Always include `name` explicitly in PUT payloads, or avoid partial-field updates. | -| **WebSupport API — POST `name` is relative** | Creating a record via POST: `name` is relative to the zone, not a full FQDN. Passing `"email.spendlik.sk"` creates `email.spendlik.sk.spendlik.sk`. Use the bare subdomain only (`"email"`, `"*"`, `"git"`). | - ## 🗃️ Gitea Repositories | Repo | Visibility | Purpose |