Chuẩn bị mạng Thread và thiết bị Joiner

Xem mã nguồn trên GitHub

Trong hướng dẫn này, hãy tìm hiểu cách sử dụng giao diện người dùng web OTBR để tạo Mạng luồng. Sau đó, hãy chọn một nền tảng được hỗ trợ và tạo một thiết bị Joiner.

Để thiết lập Bộ định tuyến biên, hãy tham khảo phần Bản dựng và cấu hình Bộ định tuyến biên OpenThread.

Hình thành mạng Thread

Giao diện người dùng đồ hoạ web

Bạn nên tạo mạng Luồng thông qua giao diện người dùng web của OTBR. Khi làm như vậy, hãy thay đổi tất cả giá trị mặc định trên tuỳ chọn trình đơn Form (Biểu mẫu), ngoại trừ Tiền tố trên lưới.

Ghi lại Cụm mật khẩu đã sử dụng. Cụm mật khẩu này là Thông tin xác thực của uỷ viên và được dùng (cùng với Mã số định danh cá nhân mở rộng và Tên mạng) để tạo Khoá được chia sẻ trước cho uỷ viên (PSKc). Bạn cần có PSKc để xác thực Thread Commissioner (thiết bị bên ngoài) với mạng.

Thủ công

Bạn cũng có thể tạo mạng Thread theo cách thủ công trên dòng lệnh của OpenThread POSIX, bằng cách sử dụng ot-ctl.

  1. Khởi chạy tập dữ liệu hoạt động mới:

    sudo ot-ctl dataset init new
    Done
    

  2. Đặt thông tin xác thực mạng:

    sudo ot-ctl dataset panid 0xdead
    Done
    

    sudo ot-ctl dataset extpanid dead1111dead2222
    Done
    
    sudo ot-ctl dataset networkname OpenThreadGuide
    Done
    
    sudo ot-ctl dataset networkkey 11112233445566778899DEAD1111DEAD
    Done
    
  3. Tạo PSKc được mã hoá bằng mã thập lục phân bằng cách sử dụng Cụm mật khẩu (Thông tin xác thực của uỷ viên), Mã số định danh cá nhân mở rộng (PAN) và Tên mạng bằng công cụ Trình tạo PSKc trên OTBR. Hãy nhớ sử dụng cùng một Mã PAN mở rộng và Tên mạng được dùng trong tập dữ liệu hoạt động:

    cd ~/ot-br-posix/build/otbr/tools
    ./pskc j01Nme DEAD1111DEAD2222 OpenThreadGuide
    198886f519a8fd7c981fee95d72f4ba7
    

  4. Đặt PSKc:

    sudo ot-ctl dataset pskc 198886f519a8fd7c981fee95d72f4ba7
    Done
    

  5. Xác nhận tập dữ liệu đang hoạt động, đặt tiền tố trên lưới và tạo mạng Thread:

    sudo ot-ctl dataset commit active
    Done
    

    sudo ot-ctl prefix add fd11:22::/64 pasor
    Done
    
    sudo ot-ctl ifconfig up
    Done
    
    sudo ot-ctl thread start
    Done
    
    sudo ot-ctl netdata register
    Done
    
  6. Xác nhận cấu hình mạng:

    sudo ot-ctl state
    leader
    Done
    

    sudo ot-ctl pskc
    198886f519a8fd7c981fee95d72f4ba7
    Done
    

Chuẩn bị thiết bị của người tham gia

Tạo và cài đặt ROM một thiết bị bằng OpenThread để hoạt động với vai trò là Joiner. Để biết thông tin tổng quan về cách xây dựng OpenThread, hãy xem Hướng dẫn xây dựng.

Sử dụng tuỳ chọn bản dựng -DOT_JOINER=ON để bật vai trò Người tham gia.

Bạn có thể tìm thấy hướng dẫn cụ thể về cách tạo các nền tảng được hỗ trợ bằng GNU Autotools trong thư mục nền tảng của mỗi ví dụ.

Khi uỷ quyền cho một Trình kết hợp, bạn cần hiểu rõ các thuật ngữ và khái niệm sau:

  • Thông tin xác thực thiết bị tham gia: Bạn cần cung cấp Cụm mật khẩu để uỷ quyền cho một thiết bị, chẳng hạn như J01NU5. Cụm mật khẩu này tách biệt với Thông tin xác thực của uỷ viên mà bạn đã tạo khi tạo mạng Luồng và có các yêu cầu khác:

    • Phải là một chuỗi gồm tất cả ký tự chữ-số viết hoa (0-9 và A-Y, ngoại trừ I, O, Q và Z để dễ đọc), có độ dài từ 6 đến 32 ký tự.

    Thông tin xác thực thiết bị tham gia cũng có thể được gọi là Cụm mật khẩu tham gia, Mật khẩu người tham gia hoặc PSKd. Cụm mật khẩu này dùng để xác thực thiết bị trong quá trình Uỷ quyền luồng. Bạn cũng có thể dùng mã này với giá trị EUI64 của thiết bị để tạo một Mã QR duy nhất.

  • PSKd: Khoá được chia sẻ trước cho người tham gia. PSKd là Thông tin xác thực thiết bị tham gia khi được mã hoá đặc biệt ở dạng nhị phân.

  • EUI-64: Giá trị nhận dạng duy nhất mở rộng 64 bit, ví dụ: 0000b57fffe15d68. Đây là IEEE EUI-64 do nhà sản xuất chỉ định cho thiết bị Joiner, dùng để tạo mã QR và nhận dạng duy nhất một thiết bị.

Sau khi thiết bị Joiner đã sẵn sàng, hãy lấy IEEE EUI-64 do nhà sản xuất chỉ định. Sử dụng lệnh eui64 trong OpenThread CLI:

eui64
0000b57fffe15d68
Done

Chọn loại uỷ viên

OpenThread Commissioner cung cấp OT Commissioner CLI để uỷ quyền cho một thiết bị từ bên ngoài.

CLI của OT Commission chạy trên cùng một máy chủ như OTBR. Trong hướng dẫn tiếp theo, hãy tìm hiểu cách sử dụng OT Commissioner CLI để kết nối với bộ định tuyến biên và uỷ quyền cho một thiết bị mới.