docs(sacn): Netzseite durchprobiert - Multicast bleibt aus, Verdacht liegt bei der Lampe

Vier UniFi-Varianten getestet (Multicast-zu-Unicast, IGMP-Snooping, Querier), in
jeder kam Multicast nicht an und Unicast sofort. Dazu die Einschraenkung, die
beim ersten Freispruch der Firmware unterging: sacn.multicast meldet nur den
Rueckgabewert von IP_ADD_MEMBERSHIP, und die SDK-Funktion fuer den
Hardware-Filter kann ERR_OK liefern, ohne den Filter gesetzt zu haben.
This commit is contained in:
Michael Sauer
2026-09-20 02:58:04 +02:00
parent 60b662ff20
commit d82df96655
+33 -7
View File
@@ -46,14 +46,40 @@ Dass mDNS funktioniert, widerspricht dem nicht: `224.0.0.251` liegt im link-loka
`224.0.0.0/24`, den Switches und Access Points per Norm von der IGMP-Filterung ausnehmen und `224.0.0.0/24`, den Switches und Access Points per Norm von der IGMP-Filterung ausnehmen und
immer fluten. `239.255.0.1` unterliegt dagegen der Filterung. immer fluten. `239.255.0.1` unterliegt dagegen der Filterung.
Anzusehen waeren im UniFi-Setup fuer das IoT-Netz: **Netzseite in derselben Nacht durchprobiert - ohne Erfolg:**
- WLAN-Einstellungen: "Multicast and Broadcast Control" bzw. "Block LAN to WLAN Multicast | Zustand im UniFi | Multicast kommt an? |
and Broadcast" - ist das aktiv, faellt die Gruppe weg, solange sie nicht ausdruecklich |---|---|
erlaubt ist. | Snooping aus, Multicast-zu-Unicast aus, kein Blocker (Ausgangslage) | nein |
- Netzwerk-Einstellungen: IGMP Snooping - entweder auf diesem VLAN abschalten (dann wird | Multicast-zu-Unicast an | nein |
geflutet) oder sicherstellen, dass ein Querier laeuft. Snooping ohne Querier ist der | zusaetzlich IGMP-Snooping an, Querier "Aus (Drittanbieter)" | nein |
klassische Weg, Multicast unbemerkt verschwinden zu lassen. | zusaetzlich Querier "Primaer/Failover" | nein |
| dasselbe, danach frischer Beitritt der Lampe erzwungen | nein (`multicast: true` gemeldet) |
Unicast funktionierte in jeder dieser Varianten sofort. Der Multicast- und Broadcast-Blocker
war durchgehend aus, Geraete- und L3-Isolierung ebenfalls.
**Damit zeigt der Verdacht auf die Lampe.** Wichtig fuer den naechsten Versuch: Das Feld
`sacn.multicast` ist NICHT so aussagekraeftig, wie es aussieht. Es meldet nur, dass
`IP_ADD_MEMBERSHIP` erfolgreich zurueckkam. Die SDK-Funktion, die den Hardware-Filter des
W600 programmiert (`ethernetif_igmp_mac_filter` in
`sdk/Src/Network/lwip2.0.3/netif/ethernetif.c`), steigt jedoch ganz oben mit
```c
if (netif != tls_get_netif())
return ERR_OK;
```
aus - sie meldet also Erfolg, OHNE den Filter gesetzt zu haben, wenn die Schnittstelle nicht
die vom SDK als aktuell gefuehrte ist. Dann nimmt der Chip die Frames nie an.
Naechste Schritte, wenn es weitergeht:
1. Serielle Konsole an eine Lampe haengen und mitlesen, was beim Beitritt passiert.
2. `imr_interface` einmal mit `INADDR_ANY` statt der STA-IP versuchen - das aendert, welches
netif lwIP waehlt, und koennte den Ausstieg oben umgehen.
3. `sacn.multicast` ehrlicher machen: aktuell behauptet es einen Erfolg, den das SDK nur
zurueckmeldet, aber nicht garantiert.
Zwei Fehlversuche auf dem Weg dorthin, damit sie niemand wiederholt: Zwei Fehlversuche auf dem Weg dorthin, damit sie niemand wiederholt: