32a60f0c6e2b9032b536b09bb223714f250f80ba
herdr-core machine add kept failing with "core did not start within 5 s". Cause: hc puts its core socket under XDG_RUNTIME_DIR, which on Unraid is /run/user/0 — created and destroyed per login session by elogind. The socket vanished with the session that started the core, so later clients found an empty directory. The core itself kept running on an unlinked socket, and core.log stayed empty because the failure is client side. Fixed entirely on the Mac with a --via transport that pins XDG_RUNTIME_DIR=/var/run/herdr-rt. Nothing on the server was changed. The transport uses key auth on 192.168.10.20:422, not Tailscale SSH, since --via needs something that asks nothing and the default tailnet ACL demands periodic browser re-auth. Also records the reboot caveat (/ is RAM, so the remote hc binary is lost) with a go-script fix written up but not applied, and corrects the 192.168.31.0/24 note: that shim was created for a Pi-hole that AdGuard replaced. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
XTRM Home Lab Infrastructure
Domain: xtrm-lab.org Repository: https://git.xtrm-lab.org/jazzymc/infrastructure
Quick Reference
| Resource | Address |
|---|---|
| Dashboard | https://xtrm-lab.org |
| NetBox | https://netbox.xtrm-lab.org |
| Git | https://git.xtrm-lab.org |
| CI/CD | https://ci.xtrm-lab.org |
| DNS Primary | dns.xtrm-lab.org |
| DNS Secondary | dns2.xtrm-lab.org |
| Failover VIP | 192.168.10.250 |
Documentation Structure
docs/
├── 01-NETWORK-MAP.md # Network topology, IPs, Docker networks
├── 02-SERVICES-CRITICAL.md # DNS, Auth, Routing - must stay up
├── 03-SERVICES-OTHER.md # All other services
├── 04-HARDWARE-INVENTORY.md # Physical devices, specs, serials
├── 05-PORT-UTILIZATION.md # Device port assignments
├── 06-VLAN-DEVICE-ASSIGNMENT.md # VLAN device mapping
├── 07-WIFI-CAPSMAN-CONFIG.md # WiFi and CAPsMAN settings
├── 08-DNS-ARCHITECTURE.md # DNS failover architecture
├── 09-TAILSCALE-VPN.md # Tailscale VPN setup
├── 10-FAILOVER-NOBARA.md # VRRP failover to Nobara workstation
├── CHANGELOG.md # Change history
├── archive/ # Completed/legacy docs
│ └── vlan-migration/ # VLAN migration project artifacts
├── incidents/ # Incident reports
└── wip/ # Work in progress
Key Devices
| Device | IP | Role |
|---|---|---|
| HAP1 | 192.168.10.1 | Router, DNS, WiFi Controller |
| XTRM-U | 192.168.10.20 | Production Server (Unraid) |
| XTRM-Nobara | 192.168.10.103 | Failover Node (Nobara Linux) |
| CSS1 | 192.168.10.3 | Distribution Switch |
| ZX1 | 192.168.10.4 | Core Switch (2.5G) |
| CAP | 192.168.10.6 | Wireless Access Point |
SSH Access
# Unraid
ssh -i ~/.ssh/id_ed25519_unraid root@192.168.10.20 -p 422
# MikroTik Router
ssh -i ~/.ssh/mikrotik_key -p 2222 xtrm@192.168.10.1
# Nobara (failover node)
ssh nobara
Emergency Recovery
- DNS down? → Automatic failover to 192.168.10.10 (secondary), see
08-DNS-ARCHITECTURE.md - Internet down? → Check HAP1 at 192.168.10.1
- Services down? → Check Unraid at 192.168.10.20
- Unraid maintenance? → VRRP failover to Nobara (192.168.10.250 VIP), see
10-FAILOVER-NOBARA.md - Full outage? → See
02-SERVICES-CRITICAL.mdstartup order
Change Management
- Major changes: Document in
CHANGELOG.md - Minor changes: Git commit messages only
- Planned work: Create doc in
wip/folder
CI/CD
Woodpecker CI at https://ci.xtrm-lab.org
Pipelines trigger on push to this repository.
Languages
RouterOS Script
81.6%
Shell
18.4%