Kiểm thử kết nối với một tài nguyên CoAP bảo mật bằng OT CLI

Xem nguồn trên GitHub

OpenThread cung cấp cả chức năng máy khách và máy chủ CoAP bảo mật, cho phép các thiết bị để kết nối với các tài nguyên trên máy chủ Secure CoAP và để quan sát từng tài nguyên cho một thay đổi trong trạng thái hiện tại.

Secure CoAP sử dụng Giao thức Bảo mật tầng truyền tải Datagram (DTLS) để thiết lập tính bảo mật, kết nối hai đầu.

Tác nhân CoAP bảo mật được cung cấp trong CLI có thể hoạt động như máy khách Secure CoAP hoặc máy chủ CoAP bảo mật.

Hướng dẫn này cung cấp các tác vụ cơ bản sử dụng một số lệnh CoAP bảo mật (coaps) phổ biến hơn.

Lệnh CoAP bảo mật

Để xem danh sách các lệnh CoAP bảo mật, hãy nhập help:

coaps help
connect
delete
disconnect
get
isclosed
isconnactive
isconnected
post
psk
put
resource
set
start
stop
x509
Done

Tham chiếu lệnh CLI

Để biết nội dung mô tả và cú pháp của tất cả các lệnh, hãy tham khảo Tài liệu tham khảo về lệnh CLI. Các lệnh CoAP an toàn bắt đầu theo thứ tự bảng chữ cái với kết nối với nhau.

Ví dụ về cách sử dụng máy chủ CoAP bảo mật và lệnh máy khách

Ví dụ này sử dụng các lệnh CLI cơ bản để khởi động máy chủ và ứng dụng khách CoAP bảo mật, tạo tài nguyên kiểm thử trên máy chủ Secure CoAP và có máy khách Secure CoAP tương tác với tài nguyên. Dữ liệu mẫu được sử dụng chỉ mang tính minh hoạ.

Định cấu hình bộ mật mã DTLS

Giao diện dòng lệnh (CLI) coaps cung cấp các lệnh pskx509 có thể dùng với khoá PSK và Chứng chỉ X.509. Để biết cú pháp và ví dụ về lệnh, hãy tham khảo coaps pskcoaps x509.

Thiết lập máy chủ CoAP bảo mật

Trên nút máy chủ CoAP bảo mật, hãy thực hiện các bước sau:

  1. Khởi động tác nhân Secure CoAP.

    coaps start
    Done
    
  2. Tạo tài nguyên kiểm thử.

    coaps resource test-resource
    Done
    

Thiết lập ứng dụng CoAP bảo mật

Trên nút ứng dụng Secure CoAP, hãy thực hiện các bước sau:

  1. Khởi động tác nhân Secure CoAP:

    coaps start
    Done
    
  2. Chạy lệnh connect để khởi chạy một phiên DTLS với một ứng dụng ngang hàng:

    coaps connect fdde:ad00:beef:0:9903:14b:27e0:5744
    Done
    coaps connected
    
  3. Chạy lệnh get để lấy thông tin về tài nguyên:

    coaps get test-resource
    Done
    coaps response from fdde:ad00:beef:0:9903:14b:27e0:5744 with payload: 68656c6c6f576f726c6400
    

    Phần cuối cùng trong phản hồi của máy chủ là từ khoá with payload:, theo sau theo tất cả byte tải trọng ở định dạng số thập lục phân. Trong ví dụ này, with payload: 68656c6c6f576f726c6400 cho biết rằng tải trọng hiện tại cho tài nguyên là giá trị thập lục phân 68656c6c6f576f726c6400. Giá trị này sẽ chuyển đổi thành chuỗi helloWorld. Để biết thêm thông tin về cách sử dụng tuỳ chọn payload, hãy tham khảo bài đăng về đề cao.

  4. Bạn có thể sửa đổi tài nguyên bằng lệnh put:

    coaps put test-resource con hellothere
    Done
    coaps response from fdde:ad00:beef:0:9903:14b:27e0:5744
    

    Trong ví dụ này, con có nghĩa là bạn muốn có một thông báo đáng tin cậy, thu được bằng thông báo có thể xác nhận (con) để gửi tới máy chủ Secure CoAP. Lựa chọn mặc định là gửi tin nhắn không thể xác nhận (non-con).

    Chuỗi hellothere là một ví dụ về cách sử dụng payload (không bắt buộc) khi typecon hoặc non-con. Để biết thêm thông tin, hãy tham khảo số lượng đồng nhất.

    Máy chủ phản hồi bằng địa chỉ IPv6 để cho biết yêu cầu đã được xử lý.

Phản hồi được gửi tới máy chủ CoAP bảo mật

Trên máy chủ, kết quả từ ví dụ này sẽ tương tự như sau:

coaps request from fdde:ad00:beef:0:9e68:576f:714c:f395 GET
coaps response sent
coaps request from fdde:ad00:beef:0:9e68:576f:714c:f395 PUT with payload: 68656c6c6f7468657265
coaps response sent

Giá trị payload của 68656c6c6f7468657265 là chuỗi hellothere được chuyển đổi thành chuỗi byte mã ASCII.