OpenThread Border Router

GitHub에서 소스 보기

스레드 보더 라우터는 스레드 네트워크를 Wi-Fi 또는 이더넷과 같은 다른 IP 기반 네트워크에 연결합니다. 스레드 네트워크를 사용하려면 보더 라우터가 다른 네트워크에 연결해야 합니다.

OTBR 보더 에이전트 아키텍처

스레드 보더 라우터는 다음 기능을 최소한으로 지원합니다.

  • 스레드와 Wi-Fi/이더넷 네트워크 간의 양방향 IP 연결
  • mDNS (Wi-Fi/이더넷 링크) 및 SRP(스레드 네트워크)를 통한 양방향 서비스 검색입니다.
  • 스레드 기반 인프라로 IP 기반 링크를 통해 스레드 파티션을 병합합니다.
  • 인증하고 Thread 기기를 스레드 네트워크에 조인하기 위한 외부 스레드 수수료 (예: 휴대전화)
대화목록 인증

OpenThread의 Border Router 구현은 OpenThread Border Router (OTBR)라고 하며 RCP (무선 공동 프로세서) 설계를 지원합니다. 플랫폼을 선택할 때 RCP 사용의 이점을 고려하세요.

  • 추가 리소스: OpenThread는 일반적으로 802.15.4 SoC에서 제공하는 것보다 훨씬 많은 호스트 프로세서의 리소스를 활용할 수 있습니다.
  • 비용 효율성 향상: 802.15.4 SoC에서 리소스 요구사항을 최소화하면 보다 비용 효율적인 솔루션으로 이어질 수 있습니다.
  • 더 쉬운 디버그: 대부분의 처리가 호스트 프로세서에서 이루어지므로 호스트 프로세서에서 보다 높은 디버깅 도구를 활용할 수 있습니다.
  • 보다 안정적인 802.15.4 SoC 펌웨어: RCP는 하위 MAC 및 PHY만 구현하므로 802.15.4 SoC에 펌웨어 업데이트가 필요한 빈도가 줄어듭니다.
  • 호스트 IPv6 네트워크 스택과의 간편한 통합: 호스트에서 OpenThread를 실행하면 호스트 IPv6 스택과 더 직접적으로 통합됩니다.

기능 및 서비스

OTBR에는 다음과 같은 여러 기능이 포함되어 있습니다.

  • 구성 및 관리를 위한 웹 GUI
  • 외부 커밋을 지원하는 스레드 보더 에이전트
  • 스레드 네트워크의 IPv6 프리픽스를 가져오는 DHCPv6 프리픽스 위임
  • IPv6 네트워크에 연결하기 위한 NAT64
  • DNS64에서 스레드 기기가 IPv4 전용 서버에 대한 이름별 통신을 시작할 수 있음
  • OpenThread의 기본 제공 기능을 사용하는 스레드 인터페이스 드라이버
  • Docker 지원

보더 라우터 서비스

OTBR은 다음 서비스를 제공합니다.

  • mDNS 게시자 - 외부 감독관이 OTBR 및 관련 스레드 네트워크를 탐색하도록 허용
  • PSKc Generator — PSKc 키 생성용
  • 웹 서비스 - 스레드 네트워크 관리를 위한 웹 UI

보더 라우터 서비스용 서드 파티 구성요소에는 웹 UI의 프레임워크를 위한 간단한 웹 서버와 Material Design Lite가 포함됩니다.

OTBR 방화벽

OTBR은 iptablesipset를 사용하여 다음과 같은 인그레스 필터링 규칙을 구현합니다.

  • On-Link 주소 소스로 시작된 인바운드 패킷을 차단합니다(예: Off-Mesh Routable(OMR) 및 Mesh-Local 프리픽스 기반 주소).
  • 대상 주소가 OMR 주소 또는 도메인 유니캐스트 주소 (DUA)가 아닌 인바운드 유니캐스트 패킷을 차단합니다.
  • 소스 주소 또는 대상 주소가 Link-Local인 인바운드 유니캐스트 패킷을 차단합니다. 이 규칙은 커널에 의해 처리되며 명시적으로 설정되지 않습니다.