Merge WebSupport DNS gotchas into main Key Gotchas table; bump last-updated date to 2026-08-10

This commit is contained in:
Spendlik 2026-08-10 18:00:12 +00:00
parent ce78677bc4
commit e07a856b10

View File

@ -1,5 +1,5 @@
# 00 — Master Index # 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. > 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 | | **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 | | **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** | 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 | | **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 | | **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. | | **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 ## 🗃️ Gitea Repositories
| Repo | Visibility | Purpose | | Repo | Visibility | Purpose |