HomeKit-Zugriff über getrennte VLANs durch Multicast Forwarding

Geräte

  • Firewall: FortiGate 40F
  • Wifi: UniFi AC Pro Accesspoints
  • Switch: HPE Aruba 2530-8G-PoE
  • Schalter: Shelly Relais mit Open Source HomeKit Firmware
  • Licht: Philips Hue (Bridge + Lampen)
  • Tür: Robin ProLine Doorbell
Home App Zugriff in das segmentierte IoT VLAN

Aufbau

Konfiguration

1. Enable Multicast Forwarding

Fortigate CLI

get system settings

multicast-forward   : enable

multicast-ttl-notchange: enable

Fortigate GUI

  • „Multicast Enhancement“ IGMPv3 im UniFi Controller muss nicht aktiviert werden, wenn Multicast Forwarding auf der ForitGate verwendet wird

2. MultiCast Policy

  • Multicast von und zu VLAN 1 (LAN / PRIVAT) und VLAN 2 (IOT)
  • mDNS spielt bei der HomeKit Kommunikation eine wichtige Rolle
  • Catch All Regeln zum Troubleshooting aktivieren

3. Firewall Policy

  • Firewall Regeln zwischen den Netzen und Geräten
  • Die verwendeten Ports habe ich meistens über das Firewall-Log herausgesucht

Hinweise

  • Wenn vorhanden: vorab Apple TV ausschalten um sicher zu gehen, dass die HomeKit-Geräte nicht über das Internet mit der Apple TV Box als HomeKit-Zentrale kommunizieren
  • Wichtig: Wenn man mehrere iOS Geräte im Netzwerk hat kann es sein, dass das Gerät zum Hinzufügen in der Home App auf dem anderen erscheint!

Probleme

  • Robin Klingel hängt bzw. ist verzögert und sendet keine Benachrichtigung aufs Smartphone
    • Workaround: Neuaufbau der IPv4 Sessions durch öffnen der Home App
      • danach funktioniert die Robin Doorbell wieder normal
    • Test: Robin Doorbell im VLAN 1 behebt die Probleme
    • To Do: Das HomeKit-Protokoll baut ein eigenständiges IPv6 Kommunikationsnetz auf. Durch die Trennung wird nur IPv4 über die Firewall geroutet. Eine zusätzliche IPv6 Konfiguration der Firewall könnte das Problem lösen.

Troubleshooting

Logging

FortiGate GUI => Log & Report => Multicast Traffic

FortiGate GUI => Log & Report => Forward Traffic

Debugging

FortiGate CLI# diagnose sys mcast-session list

Packet Capture

FortiGate GUI => Network => Packet Capture

Links

https://docs.fortinet.com/document/fortigate/6.4.4/administration-guide/968606/configuring-multicast-forwarding

https://kb.fortinet.com/kb/documentLink.do?externalID=FD45560

https://medium.com/@gepeto42/using-homekit-devices-across-vlans-and-subnets-aa5ae1024939