A Thread Border Router connects a Thread network to other IP-based networks, such as Wi-Fi or Ethernet. A Thread network requires a Border Router to connect to other networks.
A Thread Border Router minimally supports the following functions:
- End-to-end IP connectivity via routing between Thread devices and other external IP networks
- External Thread Commissioning (for example, a mobile phone) to authenticate and join a Thread device to a Thread network
OpenThread's implementation of a Border Router is called OpenThread Border Router (OTBR).
- Choose a platform:
- Build and configure OTBR
- Learn about tools and scripts included with OTBR
To go straight to the code, see the OpenThread Border Router GitHub repository.
You can contribute to the ongoing development of OpenThread by submitting bug reports and feature requests to the Issue Tracker.
Features and services
OTBR includes a number of features, including:
- Web GUI for configuration and management
- Thread Border Agent to support external commissioning
- DHCPv6 Prefix Delegation to obtain IPv6 prefixes for a Thread network
- NAT64 for connecting to IPv4 networks
- DNS64 to allow Thread devices to initiate communications by name to an IPv4-only server
- Thread interface driver using
A Border Agent relays Mesh Commissioning Protocol (MeshCoP) messages between a Commissioner and a Thread network to support External Thread Commissioning in authenticating and joining Thread devices to a Thread network. For communication with an external Commissioner, the Border Agent uses standard UDP sockets.
In the NCP design, where Thread functions are offloaded to an NCP and OTBR runs on the host side, the Border Agent runs on the NCP:
The Border Agent implemented in OTBR utilizes the following third-party components:
- libcoap — An open-source C implementation of CoAP
- mbed TLS — Supports DTLS communication with an external Commissioner
Border Router Services
OTBR provides the following services:
- mDNS Publisher — Allows an External Commissioner to discover an OTBR and its associated Thread network
- PSKc Generator — For generation of PSKc keys
- Web Service — Web UI for management of a Thread network
- WPAN Controller — DBus operations for control of the WPAN interface
Third-party components for Border Router Services include Simple Web Server and Material Design Lite for the framework of the web UI.