Git Product home page Git Product logo

borderrouter's Introduction

Build Status Coverage Status


OpenThread Border Router

Per the Thread 1.1.1 Specification, 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
Thread Certified Component

OpenThread's implementation of a Border Router is called OpenThread Border Router (OTBR). OTBR is a Thread Certified Component on the Raspberry Pi 3B with a Nordic nRF52840 NCP.

OTBR includes a number of features, including:

  • Web UI for configuration and management
  • Thread Border Agent to support an External Commissioner
  • 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 wpantund
  • Docker support

More information about Thread can be found at threadgroup.org. Thread is a registered trademark of the Thread Group, Inc.

Getting started

The quickest way to get started with OTBR is to try the Docker version. Run OTBR in a Docker container on any Linux-based system or a Raspberry Pi 3B, using either a physical or emulated NCP. See the Docker Support guide on openthread.io for more info.

OTBR also runs directly on supported platforms like the Raspberry Pi 3B. If you're interested in building and configuring OTBR directly, or to learn more about the OTBR architecture, then see the rest of our end-user documentation at openthread.io.

Note: For users in China, end-user documentation is available at openthread.google.cn.

If you're interested in contributing to OpenThread Border Router, read on.

Contributing

We would love for you to contribute to OpenThread Border Router and help make it even better than it is today! See our Contributing Guidelines for more information.

Contributors are required to abide by our Code of Conduct and Coding Conventions and Style Guide.

We follow the philosophy of Scripts to Rule Them All.

Versioning

OpenThread Border Router follows the Semantic Versioning guidelines for release cycle transparency and to maintain backwards compatibility. OpenThread Border Router's versioning is independent of the Thread protocol specification version but will clearly indicate which version of the specification it currently supports.

License

OpenThread Border Router is released under the BSD 3-Clause license. See the LICENSE file for more information.

Please only use the OpenThread name and marks when accurately referencing this software distribution. Do not use the marks in a way that suggests you are endorsed by or otherwise affiliated with Nest, Google, or The Thread Group.

Need help?

There are numerous avenues for OpenThread support:

The openthread-users Google Group is the recommended place for users to discuss OpenThread and interact directly with the OpenThread team.

OpenThread

To learn more about OpenThread, see the OpenThread repository.

borderrouter's People

Contributors

bukepo avatar ciaranwoodward avatar duaneellis-ti avatar gjc13 avatar hubertmis avatar jwhui avatar nealjack avatar ptone avatar sjlongland avatar thcu-gp avatar toxxin avatar vyrastas avatar xiaom-github avatar zhangle2016 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.