Afficher le code source sur GitHub
Un routeur de bordure Thread connecte un réseau Thread à d'autres réseaux IP, tels que le Wi-Fi ou Ethernet. Un réseau Thread nécessite un routeur de bordure pour se connecter à d'autres réseaux.
Un routeur de bordure Thread accepte au minimum les fonctions suivantes:
- Connectivité IP bidirectionnelle entre les réseaux Thread et Wi-Fi/Ethernet
- Détection de services bidirectionnelles via mDNS (sur une connexion Wi-Fi/Ethernet) et SRP (sur un réseau Thread).
- Thread-over-infrastructure qui fusionne les partitions Thread sur des liens IP.
- Mise en service externe Thread (par exemple, un téléphone mobile) pour authentifier un appareil Thread et le joindre à un réseau Thread.
L'implémentation d'un routeur de bordure par OpenThread s'appelle OpenThread Border Router (OTBR), compatible avec une conception de co-processeur radio (RCP). Lorsque vous choisissez votre plate-forme, tenez compte des avantages suivants de l'utilisation de RCP:
- Plus de ressources: OpenThread peut tirer parti des ressources du processeur hôte, qui est généralement bien plus qu'un SoC 802.15.4.
- Plus économique: réduisez les besoins en ressources sur le SoC 802.15.4, ce qui peut aboutir à une solution plus rentable.
- Plus facile à déboguer: comme la majeure partie du traitement s'effectue sur le processeur hôte, vous pouvez utiliser des outils de débogage plus performants sur le processeur hôte.
- Micrologiciel 802.15.4 plus stable: le RCP n'implémente que la sous-MAC et le PHY, ce qui réduit la fréquence à laquelle le SoC 802.15.4 nécessite des mises à jour du micrologiciel.
- Intégration simplifiée à la pile réseau IPv6 hôte: l'exécution d'OpenThread sur l'hôte permet une intégration plus directe à la pile IPv6 hôte.
Fonctionnalités et services
OTBR inclut plusieurs fonctionnalités, y compris:
- IUG Web pour la configuration et la gestion
- Thread Border Agent pour prendre en charge la mise en service externe
- Délégation du préfixe DHCPv6 pour obtenir des préfixes IPv6 pour un réseau Thread
- NAT64 pour la connexion aux réseaux IPv4
- DNS64 pour permettre aux appareils Thread d'initier des communications par nom à un serveur IPv4 uniquement
- Pilote d'interface Thread utilisant la fonctionnalité intégrée d'OpenThread
- Compatibilité avec Docker
Services de routeur de frontières
OTBR fournit les services suivants:
- Éditeur mDNS : permet à un commissaire externe de découvrir un service OTBR et son réseau Thread associé
- Générateur PSKc : pour générer des clés PSKc
- Service Web : interface utilisateur Web pour la gestion d'un réseau Thread
Les composants tiers pour Border Router Services incluent un serveur Web simple et Material Design Lite pour le framework de l'interface utilisateur Web.
Pare-feu OTBR
OTBR utilise iptables
et ipset
pour implémenter les règles de filtrage d'entrée suivantes:
- Bloquer les paquets entrants initiés avec des sources d'adresses On-Link, par exemple des adresses OMR (out-mesh routable) et des préfixes de maillage local.
- Bloquer les paquets unicast entrants dont l'adresse de destination n'est pas une adresse OMR ou une adresse unicast de domaine (DUA).
- Bloquer les paquets unicast entrants dont l'adresse source ou de destination est Link-Local. Notez que cette règle est gérée par le noyau et n'est pas explicitement définie.