OpenThread cung cấp cả chức năng máy chủ SRP và ứng dụng khách, cho phép các thiết bị để đăng ký các dịch vụ dựa trên DNS bằng Bản cập nhật DNS tiêu chuẩn được gửi dưới dạng unicast gói tin. Chức năng này bật tính năng Khám phá dịch vụ dựa trên DNS.
Hướng dẫn này cung cấp các tác vụ cơ bản sử dụng một số srp server
phổ biến hơn
và srp client
.
Lệnh máy chủ SRP
Để xem danh sách các lệnh srp server
, hãy nhập help
:
srp server help
addrmode
auto
disable
domain
enable
help
host
lease
seqnum
service
state
Done
Lệnh máy khách SRP
Để xem danh sách các lệnh srp client
, hãy nhập help
:
srp client help
autostart
callback
help
host
keyleaseinterval
leaseinterval
service
start
state
stop
ttl
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 máy chủ SRP bắt đầu theo thứ tự bảng chữ cái với máy chủ srp (bật,tắt). Các lệnh ứng dụng SRP bắt đầu theo thứ tự bảng chữ cái với tự động bắt đầu (get) của ứng dụng srp.
Lớp học lập trình về Bộ định tuyến đường viền luồng
Lớp học lập trình về OpenThread Border Router bao gồm thông tin về cách thiết lập thiết bị cuối của ứng dụng SRP.
Thông tin tổng quan về một số lệnh SRP cơ bản
Các lệnh máy khách và máy chủ SRP có thể được dùng theo trình tự để thực hiện các tác vụ SRP thông thường:
-
srp server enable
bật máy chủ SRP sau khi bạn tạo mạng Thread. -
srp client host name
đặt tên máy chủ sẽ được ứng dụng sử dụng.srp client host address (set)
bật chế độ địa chỉ máy khách tự động lưu trữ hoặc đặt danh sách địa chỉ máy khách lưu trữ một cách rõ ràng.srp client service add
thêm một dịch vụ có tên thực thể cụ thể là dịch vụ tên và số cổng.srp client autostart enable
giúp bật chế độ tự động bắt đầu. Bạn cũng có thể làm theo cách thủ công khởi động ứng dụng bằng cách chạysrp client start
.
-
srp client host
vàsrp client service
cung cấp trạng thái về việc máy chủ lưu trữ và dịch vụ ứng dụng khách đã được đăng ký thành công trên nút ứng dụng khách.srp server host
vàsrp server service
cung cấp trạng thái máy chủ lưu trữ và dịch vụ trên nút máy chủ.
-
srp client service remove
sẽ xoá một dịch vụ nhưng giữ lại tên dịch vụ. -
srp client host remove
sẽ xoá máy chủ lưu trữ và tất cả các dịch vụ đã đăng ký.
Ví dụ về cách sử dụng máy chủ SRP và lệnh ứng dụng
Những ví dụ này sử dụng các lệnh CLI cơ bản để thiết lập mạng Thread, bắt đầu máy chủ SRP và ứng dụng khách, xác minh trạng thái máy chủ rồi xoá một dịch vụ. Dữ liệu mẫu được sử dụng nhằm mục đích minh hoạ.
Khởi động máy chủ SRP
Khởi động nút máy chủ SRP:
./output/simulation/bin/ot-cli-ftd 1
Thiết lập một mạng Thread, sau đó bật máy chủ SRP bằng cách chạy lệnh
srp server enable
:dataset init new
Donedataset
Active Timestamp: 1 Channel: 22 Channel Mask: 0x07fff800 Ext PAN ID: 8d6ed7a05a28fb3b Mesh Local Prefix: fded:5114:8263:1fe1::/64 Network Key: 7fcbae4153cc2955c28440c15d4d4219 Network Name: OpenThread-f7af PAN ID: 0xf7af PSKc: b658e40f174e3a11be149b302ef07a0f Security Policy: 672, onrc Donedataset commit active
Doneifconfig up
Donethread start
Donestate
leader Doneipaddr
fded:5114:8263:1fe1:0:ff:fe00:fc00 fded:5114:8263:1fe1:0:ff:fe00:c000 fded:5114:8263:1fe1:68bc:ec03:c1ad:9325 fe80:0:0:0:a8cd:6e23:df3d:4193 Donesrp server enable
Done
Khởi động ứng dụng SRP
Khởi động nút Ứng dụng SRP:
./output/simulation/bin/ot-cli-ftd 2
Tham gia mạng Thread, đặt tên và địa chỉ của máy khách, và đăng ký dịch vụ:
dataset networkkey 7fcbae4153cc2955c28440c15d4d4219
Donedataset commit active
Doneifconfig up
Donethread start
Donestate
child Doneipaddr
fded:5114:8263:1fe1:0:ff:fe00:c001 fded:5114:8263:1fe1:44f9:cc06:4a2d:534 fe80:0:0:0:38dd:fdf7:5fd:24e Donesrp client host name my-host
Donesrp client host address fded:5114:8263:1fe1:44f9:cc06:4a2d:534
Donesrp client service add my-service _ipps._tcp 12345
Donesrp client autostart enable
DoneNhư đã trình bày ở trên, hãy dùng lệnh
srp client autostart enable
để bật chế độ tự động bắt đầu trên máy khách. Máy khách giám sát dữ liệu mạng để phát hiện máy chủ SRP có sẵn trong mạng Thread, sau đó máy khách tự khởi động.Nếu khởi động ứng dụng theo cách thủ công, hãy chạy lệnh sau và đưa vào địa chỉ SRP và cổng:
srp client start fded:5114:8263:1fe1:68bc:ec03:c1ad:9325 49154
DoneMáy chủ SRP đang nghe cổng UDP là
c002(49154)
trong ví dụ trên.
Xác minh trạng thái dịch vụ
Kiểm tra xem máy chủ và dịch vụ đã được đăng ký thành công trên nút ứng dụng hay chưa:
srp client host
name:"my-host", state:Registered, addrs:[fded:5114:8263:1fe1:44f9:cc06:4a2d:534] Donesrp client service
instance:"my-service", name:"_ipps._tcp", state:Registered, port:12345, priority:0, weight:0 DoneĐảm bảo rằng kết quả cho thấy
state:Registered
cho cả lệnh của máy chủ lưu trữ và lệnh dịch vụ, như trong ví dụ trên.Kiểm tra máy chủ lưu trữ và dịch vụ trên nút máy chủ:
srp server host
my-host.default.service.arpa. deleted: false addresses: [fded:5114:8263:1fe1:44f9:cc06:4a2d:534] Donesrp server service
my-service._ipps._tcp.default.service.arpa. deleted: false port: 12345 priority: 0 weight: 0 ttl: 7200 lease: 7200 key-lease: 1209600 TXT: [] host: my-host.default.service.arpa. addresses: [fded:5114:8263:1fe1:44f9:cc06:4a2d:534] DoneĐảm bảo kết quả cho thấy
deleted: false
cho cảsrp server host
vàsrp server service
, như trong ví dụ ở trên.
Xoá dịch vụ
Xoá dịch vụ qua nút ứng dụng:
srp client service remove my-service _ipps._tcp
DoneXác nhận qua nút máy chủ rằng dịch vụ đã bị xoá:
srp server service
my-service._ipps._tcp.default.service.arpa. deleted: true DoneMục nhập dịch vụ được liệt kê trong đầu ra vì tên dịch vụ là chưa bị xoá.
Xoá tên máy chủ và dịch vụ
Xoá máy chủ lưu trữ và tất cả các dịch vụ đã đăng ký của máy chủ đó:
srp client host remove 1
DoneXác nhận trên nút máy chủ rằng không có mục nhập nào của máy chủ lưu trữ hoặc dịch vụ được liệt kê:
srp server host
Donesrp server service
Done >