kurz wird schwierig aber ich versuch es mal
notwendiges Hintergrundwissen:
Shellys senden ihre Nachrichten über den eigenen Zustand per CoAp (constrained application protocol), das basiert auf UDP (user datagram protocol).
UDP Kommunikation findet generell entweder per Unicast (an ein einzelnes Gerät), per Broadcast (an alle Geräte im gleichen Netz) oder per Multicast (an eine bestimmte Gruppe von Geräten im Netz) statt.
Um Multicast-Nachrichten gezielt an bestimmte Geräte senden zu können wurde IGMP geschaffen (Internet group management protocol) und über die Jahre auch weiterentwickelt.
Primäres Ziel dabei: Daten sollen nur die Clients bekommen, die damit auch etwas anfangen können.
Je nach IGMP-Version haben die gesendeten Daten entsprechende Kennzeichen (Header), so dass ein Netzwerk-Gerät (Router, Switch, AccessPoint..) sie entsprechend gruppieren und filtern kann.
Die Shellys senden ihre Nachrichten wie weiter oben geschrieben über CoAp. CoAp-Nachrichten nutzen zwar Multicast, haben aber keinen entsprechenden IGMP(v3)-Header.
Das Bespiel:
Der Shelly sendet seine Nachricht an die CoAp-Multicast-Adresse.
Der Switch sieht: Hey, da kommt ein Multicast-Datenpaket, guckt sich das Paket an und stellt fest:
a) es hat keinen IGMP(v3)-Header, also muss es eine andere Art von Multicast sein.
b) CoAp? nie von gehört..
und muss sich jetzt entscheiden zwischen:
- Lass ich es trotzdem durch?
- oder muss ich es blockieren?
Ich hoffe das war halbwegs verständlich
Ob der Netgear-Switch CoAp als Protokoll nun kennt oder eben nicht, hab ich selbst noch nicht getestet. Könnte ich bei Gelegenheit aber nachholen.
Edit: OK, es ging nicht kurz