Files
bf-infra/docs/sonos-inventar.md
Christoph Emsenhuber 03f328f043 TP3 📶 ✅ As-built finalisiert: 5 dirtyvader-SSIDs live, Kanal-Plan + Sonos-Diagnose
- ft=no auf sec-media (802.11r bricht Sonos), ft-over-ds=no
- Kanal-Plan non-DFS/überlappungsfrei: ap1 ch36+ch1, ap2 ch149+ch11
  (Auto-Channel hatte beide APs auf 5500-DFS/2437 = Co-Channel gelegt)
- tp3-capsman.rsc: Channel-Frequenzen, ap1-Interface-Override, Verifikation 2026-06-18
- obsolete capsman-flat-asbuilt/ap1-manager/ap2-cap entfernt (von tp3-capsman.rsc ersetzt)
- teilprojekte.md TP3 → ✅; Sonos-Split-Diagnose in tp7-mdns.md + sonos-inventar.md
  (7 WLAN-Sonos noch auf FB-WLAN/VLAN1 → "selektiv je Netz", kein mDNS-Defekt)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 01:11:41 +02:00

4.0 KiB
Raw Blame History

Sonos-Inventar (live, 2026-06-17)

Update 2026-06-18 (nach TP3-WLAN): Stand der Migration:

  • VLAN 40 (MEDIA), 4 Geräte wired: Arbeitszimmer-Paar .40.199/.200 + Schlafzimmer-Table-Lamps 78:28:CA:80:2A:F6/82:16:C2 (jetzt .40.192/.193, Port auf VLAN 40 umgehängt ✅, reachable).
  • VLAN 1 (FritzBox-WLAN), 7 Geräte: 3× One SL (Bad/Kinderzimmer/Küche) + Home-Theater Arc/Amp/Sub
    • 1 weiteres (war offline) — alle noch nicht migriert.
  • Folge: Household über VLAN1↔VLAN40 gespalten → mDNS-Repeater (vlan10,vlan40) deckt VLAN1 nicht ab → „Sonos erscheinen selektiv je Netz" (kein mDNS-Defekt). Fix = die 7 WLAN-Sonos auf dirtyvader-media (VLAN 40) holen. Migrationsziel-SSID steht (TP3); sec-media hat FT/802.11r=no (802.11r bricht Sonos).

Erhoben zero-dep über die Sonos-HTTP-API (:1400) vom Mac (VLAN 1, 10.40.41.82, en5) mit mcp/sonos/sonos-inv.py --seeds 10.40.40.199. Alle 10 Geräte S2 (SWGen=2). Sonos hat keine API zum WLAN-Umstellen — Migration passiert am Netz, nicht am Gerät.

Bestand (10 Sonos)

IP Modell (Nr.) Zone MAC SW Wifi Eth VLAN Status
10.40.40.199 SYMFONISK Bookshelf (S21) Arbeitszimmer (L) 34:7E:5C:32:37:96 86.7 0 1 40 ✅ wired (Omada P6)
10.40.40.200 SYMFONISK Bookshelf (S21) Arbeitszimmer (R) 34:7E:5C:32:33:B8 86.7 0 1 40 ✅ wired
10.40.41.193 SYMFONISK Table lamp (S20) Schlafzimmer (L) 78:28:CA:80:2A:F6 86.7 0 1 1 ⏳ wired → Port nach VLAN 40
10.40.41.194 SYMFONISK Table lamp (S20) Schlafzimmer (R) 78:28:CA:82:16:C2 86.7 0 1 1 ⏳ wired → Port nach VLAN 40
10.40.41.195 Sonos One SL (S22) Bad 48:A6:B8:14:FE:D0 95.0 1 0 1 ⏳ WLAN
10.40.41.196 Sonos One SL (S22) Kinderzimmer 48:A6:B8:16:38:AE 95.0 1 0 1 ⏳ WLAN
10.40.41.197 Sonos One SL (S22) Küche 48:A6:B8:14:FE:F2 95.0 1 0 1 ⏳ WLAN
10.40.41.199 Sonos Arc (S19) Wohnzimmer (LF,RF) 48:A6:B8:0B:63:10 95.0 1 0 1 ⏳ WLAN — HT-Coordinator
10.40.41.200 Sonos Amp (S16) Wohnzimmer (LR,RR) 48:A6:B8:69:69:7B 95.0 1 0 1 ⏳ WLAN — HT-Surrounds
10.40.41.201 Sonos Sub Wohnzimmer (SW) 94:9F:3E:49:59:EE 86.7 1 0 1 ⏳ WLAN — HT-Sub

Alle DHCP (Sonos kann kein statisches IP); VLAN-40-Paar hat dyn. Leases aus dhcp-v40.

Migrations-Klassen

  1. Fertig (VLAN 40, wired): Arbeitszimmer-Paar .40.199/.200.
  2. Wired, nur Port umhängen → VLAN 40: Schlafzimmer-Table-lamp-Paar .41.193/.194 (Wifi=0, Eth=1). Kamen via ALLNET/FB-Uplink (nicht direkter Omada-Access-Port) → Switch-Port lokalisieren (ALLNET MAC-Tabelle) und auf VLAN-40-Access setzen. = der „das schaff ich"-Teil.
  3. Echtes WLAN (der Schmerz) — 6 Geräte:
    • Standalone: Sonos One SL Bad / Kinderzimmer / Küche.
    • Home-Theater-Bond „Wohnzimmer": Arc + Amp + Sub (Arc = Coordinator; Amp/Sub als Satelliten an den Arc gebunden — beim Umzug zusammen behandeln). → Alle S2 ⇒ :1400/wifictrl (Remote-WLAN-Aus) nicht verfügbar. Sauberer Weg = TP3-Cutover (Media-SSID bzw. Per-MAC → VLAN 40); App-Re-Onboarding vermeidbar, wenn die Media-SSID die Geräte beim FB-WLAN-Abschalten selbst übernimmt. Alternativ kurzzeitig verkabeln.

Household-Partitionierung (Tooling-Gotcha)

ZoneGroupState ist pro VLAN partitioniert (Multicast quert VLANs nicht): VLAN 40 sieht nur .40.199/.200, VLAN 1 sieht nur .41.193–.201. → Tool braucht einen Seed je Partition (10.40.40.199 und ein VLAN-1-Gerät; lokales SSDP deckt VLAN 1 automatisch ab).

Werkzeug

mcp/sonos/sonos-inv.py (zero-dep, kein Daemon). Inventar:

./mcp/sonos/sonos-inv.py --seeds 10.40.40.199            # Tabelle
./mcp/sonos/sonos-inv.py --seeds 10.40.40.199 --json     # maschinenlesbar
./mcp/sonos/sonos-inv.py --seeds 10.40.40.199 --verify 40 # Exit!=0 wenn ein Gerät nicht in VLAN 40