From b8cf34aedfd06dfbbfc66384af543f82cf3fd6d4 Mon Sep 17 00:00:00 2001 From: XTRM-Unraid Date: Tue, 20 Jan 2026 22:58:17 +0200 Subject: [PATCH] Server recovery and static IP assignments - Recovered from bzfirmware corruption on USB boot drive - Assigned static IPs to all dockerproxy containers (172.18.0.x) - Assigned static IPs to all netbox containers (172.24.0.x) - Created comprehensive IP assignment documentation - Rebuilt NetBox stack with correct network configuration Co-Authored-By: Claude Opus 4.5 --- docs/06-CHANGELOG.md | 21 ++++ docs/13-CONTAINER-IP-ASSIGNMENTS.md | 146 ++++++++++++++++++++++++++++ 2 files changed, 167 insertions(+) create mode 100644 docs/13-CONTAINER-IP-ASSIGNMENTS.md diff --git a/docs/06-CHANGELOG.md b/docs/06-CHANGELOG.md index a74d1cf..5e0e7dd 100644 --- a/docs/06-CHANGELOG.md +++ b/docs/06-CHANGELOG.md @@ -21,3 +21,24 @@ - [CONFIG] Communities: netdisco, public - [DISCOVER] XTRM-Unraid now visible in NetDisco + +## 2026-01-20 - Server Recovery & Static IP Assignment + +### USB Boot Recovery +- [RECOVERY] bzfirmware file corrupted on USB boot drive +- [FIX] Replaced bzfirmware from fresh Unraid 7.2.3 download +- [BACKUP] Config backed up to ~/Desktop/unraid-backup/ + +### Docker Recovery +- [SERVICE] Docker daemon was not running after reboot +- [FIX] Enabled Docker and mounted docker.img properly +- [FIX] Started all 46 containers + +### Static IP Assignments +- [CONFIG] Assigned static IPs to all dockerproxy network containers +- [CONFIG] Assigned static IPs to all netbox network containers +- [DOC] Created 13-CONTAINER-IP-ASSIGNMENTS.md + +### NetBox Stack Rebuild +- [FIX] Recreated netbox containers with correct Redis/Postgres IPs +- [CONFIG] NetBox stack now uses static IPs (172.24.0.2-7) diff --git a/docs/13-CONTAINER-IP-ASSIGNMENTS.md b/docs/13-CONTAINER-IP-ASSIGNMENTS.md new file mode 100644 index 0000000..02c820d --- /dev/null +++ b/docs/13-CONTAINER-IP-ASSIGNMENTS.md @@ -0,0 +1,146 @@ +# Container Static IP Assignments + +**Last Updated:** 2026-01-20 + +This document lists all static IP assignments for Docker containers on Unraid. + +--- + +## dockerproxy Network (172.18.0.0/16) + +Static IP range: 172.18.0.2 - 172.18.0.99 + +### Core Infrastructure (172.18.0.2 - 172.18.0.10) + +| Container | Static IP | Purpose | +|-----------|-----------|---------| +| dockersocket | 172.18.0.2 | Docker socket proxy | +| traefik | 172.18.0.3 | Reverse proxy | +| homarr | 172.18.0.4 | Dashboard | + +### Security (172.18.0.11 - 172.18.0.15) + +| Container | Static IP | Purpose | +|-----------|-----------|---------| +| authentik | 172.18.0.11 | Identity provider | +| authentik-worker | 172.18.0.12 | Authentik worker | +| postgresql17 | 172.18.0.13 | PostgreSQL database | +| Redis | 172.18.0.14 | Redis cache | +| vaultwarden | 172.18.0.15 | Password manager | + +### Productivity (172.18.0.16 - 172.18.0.30) + +| Container | Static IP | Purpose | +|-----------|-----------|---------| +| actual-budget | 172.18.0.16 | Budget tracking | +| n8n | 172.18.0.17 | Workflow automation | +| Uptime-Kuma-API | 172.18.0.18 | Uptime API | +| AutoKuma | 172.18.0.19 | Auto Kuma config | +| UptimeKuma | 172.18.0.20 | Uptime monitoring | +| speedtest-tracker | 172.18.0.21 | Speed test tracking | +| DoH-Server | 172.18.0.22 | DNS over HTTPS | +| Libation | 172.18.0.23 | Audiobook manager | +| Nextcloud | 172.18.0.24 | Cloud storage | +| karakeep | 172.18.0.25 | Bookmark manager | +| transmission | 172.18.0.26 | Torrent client | + +### DevOps (172.18.0.31 - 172.18.0.40) + +| Container | Static IP | Purpose | +|-----------|-----------|---------| +| gitea | 172.18.0.31 | Git server | +| woodpecker-server | 172.18.0.32 | CI/CD server | +| woodpecker-agent | 172.18.0.33 | CI/CD agent | + +### NetDisco (172.18.0.41 - 172.18.0.50) + +| Container | Static IP | Purpose | +|-----------|-----------|---------| +| netdisco-web | 172.18.0.41 | NetDisco web UI | +| netdisco-backend | 172.18.0.42 | NetDisco SNMP poller | + +### Fossorial/Pangolin (172.18.0.51 - 172.18.0.60) + +| Container | Static IP | Purpose | +|-----------|-----------|---------| +| pangolin | 172.18.0.51 | Pangolin tunnel | + +--- + +## netbox Network (172.24.0.0/16) + +Static IP range: 172.24.0.2 - 172.24.0.20 + +| Container | Static IP | Purpose | +|-----------|-----------|---------| +| netbox-redis | 172.24.0.2 | NetBox Redis | +| netbox-redis-cache | 172.24.0.3 | NetBox Redis cache | +| netbox-postgres | 172.24.0.4 | NetBox PostgreSQL | +| netbox | 172.24.0.5 | NetBox web UI | +| netbox-worker | 172.24.0.6 | NetBox worker | +| netbox-housekeeping | 172.24.0.7 | NetBox housekeeping | + +--- + +## br0 Network (LAN Macvlan - 192.168.31.x) + +These containers have direct LAN access via macvlan. + +| Container | Static IP | Purpose | +|-----------|-----------|---------| +| binhex-official-pihole | 192.168.31.4 | DNS sinkhole | +| unbound | 192.168.31.5 | Recursive DNS | +| TimeMachine | 192.168.31.12 | Time Machine backup | + +--- + +## bridge Network (172.17.0.0/16) + +Default Docker bridge - dynamic IPs (no static assignment supported). + +| Container | Purpose | +|-----------|---------| +| portainer | Container management | +| rustdesk-hbbs | RustDesk signaling | +| rustdesk-hbbr | RustDesk relay | +| rustfs | Rust filesystem | + +--- + +## Host Network + +These containers share the host network stack. + +| Container | Purpose | +|-----------|---------| +| unimus | Network config backup | +| UrBackup | Backup server | +| NetAlertX | Network scanner | +| plex | Media server | +| HomeAssistant_inabox | Home automation | +| stunnel-dot | DNS over TLS | +| nebula-sync | Nebula mesh sync | + +--- + +## IP Assignment Command + +To assign a static IP to a container: + +```bash +# Disconnect from network +docker network disconnect + +# Reconnect with static IP +docker network connect --ip +``` + +**Note:** Static IPs only work on user-defined networks (not the default `bridge`). + +--- + +## Maintenance + +When recreating containers, ensure static IPs are preserved by: +1. Using `--ip` flag in `docker run` +2. Or running the disconnect/connect commands after container creation