Files
bf-infra/CLAUDE.md
Christoph Emsenhuber a36bdd8f56 TP2 ✅ Omada Controller deployed + omada-mcp staged: DS923/macvlan, pve-mcp eingetragen
- omada/docker-compose.yml: Controller 6.2.10.17 auf DS923 (macvlan .175, endpointId=14);
  pve-LXC (.126) hat zu wenig Disk → DS923 standard pattern
- mcp/omada/: docker-compose.yml + .env.template für omada-mcp (macvlan .174, MCP_TRANSPORT=sse);
  wartet auf Wizard-Passwort nach https://10.40.41.175:8043
- pve-mcp (samik081) in ~/.claude/settings.json eingetragen (SSE .173:3000)
- CLAUDE.md: Topologie korrigiert (wahre IPs .100/.126/.167/.173-.175, Omada Port 2 = ap2)
- INVENTORY.md: pve-mcp 🟢, omada-mcp 🟡, portainer-mcp zurückgestellt (→ Komodo)
- teilprojekte.md: TP2 ✅, Ist-Stand + offene manuelle Schritte dokumentiert

Noch offen (manuell): Wizard, .12 adopt, Port-Config, .env + Stack deploy, Claude Code eintragen.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-15 14:11:05 +02:00

3.6 KiB

BF-Netzwerk — Projekt-Kontext (auto-read)

Standort BF: VLAN-segmentiertes Heimnetz auf MikroTik/RouterOS. Ziel: CAKE/QoS gegen Bufferbloat, DNS/DHCP-Ablösung, WLAN via CAPsMAN, Firewall Least-Privilege, Multi-Site VPN.

Für jede TP-Session: zuerst docs/teilprojekte.md lesen — enthält kanonischen Stand, Scope, Abhängigkeiten und Reihenfolge aller Teilprojekte. Kein anderer Kontext nötig.


VLAN-Modell (kanonisch)

VLAN Name Subnetz Zweck
10 MAIN 10.40.10.0/24 Trusted (Handy/Laptop)
20 INFRA 10.40.20.0/24 NAS/VMs/Docker/HA
30 IOT 10.40.30.0/24 Smart-Home
40 MEDIA 10.40.40.0/24 Sonos/AppleTV/TV/Cast
50 UNTRUSTED 10.40.50.0/24 Konsole/Low-Trust
90 GUEST 10.40.90.0/24 nur Internet
99 MGMT 10.40.99.0/24 Switch/AP/Hypervisor-Mgmt
100 WAN (FB-Transfer) zur FritzBox

GW je VLAN = .1 · APs: ap1=.1, ap2=.2 · Switches: ALLNET=.11, Omada=.12


Hardware & Zugang

Gerät IP Zugang
ALLNET Core-Switch (sw1) 10.40.41.11 (interim, VLAN1) telnet 10.40.41.11 · User: claudecode · PW: switch/.secrets
Omada Access-Switch (sw2) 10.40.41.12 Web-UI HTTPS · Creds omada/.secrets · Adoption pending
hAP ax² #1 (ap1) 10.40.41.1 MikroMCP (live)
hAP ax² #2 (ap2) 10.40.41.2 MikroMCP (live) · Port 2 am Omada-Switch
NAS (nas-bf, DS923) 10.40.41.10 SSH · Docker (Portainer endpointId=14)
Omada-Controller 10.40.41.175 https://10.40.41.175:8043 (macvlan auf DS923)
omada-mcp 10.40.41.174 SSE http://10.40.41.174:3000/sse (staged, nach Wizard)
pve-mcp 10.40.41.173 SSE http://10.40.41.173:3000/sse · MCP in Claude Code ✓
Proxmox (pve) 10.40.41.100 kein SSH-Key konfiguriert
Docker-LXC (auf pve) 10.40.41.126 Portainer CE 2.40.0 (https://10.40.41.126:9443)
Mac mini 10.40.41.167 ssh macmini
FritzBox 6660 10.40.41.254 Web-UI (Telefon bleibt dort)

Tooling

  • MikroTik (hAP ax²): MikroMCP-Server live verbunden → mcp__mikromcp__*-Tools verwenden. Reads immer safe; Writes mit dryRun:true previwen, dann apply_plan.
  • ALLNET-Switch: kein MCP — nur Telnet-CLI (IOS-artig, FW 2.2.1). Runner: cd ~/dev/bf-network-r6/switch && . ./.secrets && expect cli/run-cli.exp cli/<datei>.cli Klickanleitungen in switch/ui-guides/ für manuelle Schritte.
  • Omada-Switch: Controller https://10.40.41.175:8043 (TP2 ✅). Adoption + Port-Config: manuell im Browser. omada-mcp nach Wizard: mcp/omada/docker-compose.yml deployen (endpointId=14), Claude Code eintragen.
  • Docker-Management: Portainer API https://10.40.41.126:9443, Key in mcp/portainer/.env. Ablösung durch Komodo (native MCP) geplant.

Kritische Gotchas

  • ALLNET: nur 1 Telnet-VTY — stale Sessions blockieren ~15 min. Sauber ausloggen (exit exit), nie hammern.
  • save nicht vergessen nach ALLNET-Änderungen (sonst nach Reboot weg).
  • hAP ax² hat 128 MB Flash, kein USB → Container NICHT auf dem Router; Container laufen auf NAS/pve.
  • ALLNET VLAN-DB final (TP1 ✅): 40=MEDIA, 50=UNTRUSTED; GE1/GE2/GE8 alle als Trunk mit 10/20/30/40/50/90/99/100.
  • Omada-Switch Port 2 = ap2 (Trunk all VLANs), Uplink-Port → ALLNET GE8 (Trunk all), Restports = Access.
  • Mesh = NEIN (beide APs haben wired Trunk-Uplink → Loop-Risiko).
  • mgmt-VLAN-Wechsel am Switch = Lockout-Risiko: VLAN muss existieren + Port muss es tragen, in einem Schritt.
  • Omada ES208G = Easy Managed → Controller-adoptierbar (ab 6.1.x), nur Basis-VLAN/QoS im Controller (kein ACL/Policy-Routing).