الاطّلاع على المصدر على GitHub
يوفر OpenThread وظائف خادم وخادم SRP، ما يمكّن الأجهزة من تسجيل الخدمات المستندة إلى نظام أسماء النطاقات باستخدام تحديث نظام أسماء النطاقات القياسي الذي يتم إرساله كحزم أحادي البث. تعمل هذه الوظيفة على تفعيل اكتشاف الخدمة المستند إلى نظام أسماء النطاقات.
يقدّم هذا الدليل مهامًا أساسية تستخدم بعض الطلبات الأكثر شيوعًا التي تتضمّن srp server
وsrp client
.
أوامر خادم SRP
للاطّلاع على قائمة تضمّ طلبات srp server
، اكتب help
:
srp server help
addrmode
auto
disable
domain
enable
help
host
lease
seqnum
service
state
Done
أوامر عميل SRP
للاطّلاع على قائمة تضمّ طلبات srp client
، اكتب help
:
srp client help
autostart
callback
help
host
keyleaseinterval
leaseinterval
service
start
state
stop
ttl
Done
مرجع أوامر واجهة سطر الأوامر
للحصول على أوصاف وبناء جميع الأوامر، ارجع إلى مرجع أوامر CLI. تبدأ أوامر خادم SRP أبجديًا بـ خادم srp (تفعيل، إيقاف). تبدأ أوامر عميل SRP أبجديًا بالبدء التلقائي لعميل srp (get).
الدرس التطبيقي حول ترميز جهاز توجيه حدود سلسلة المحادثات
يتضمن الدرس التطبيقي حول ترميز جهاز توجيه الحدود OpenThread معلومات حول كيفية إعداد الجهاز النهائي لعميل SRP.
نظرة عامة على بعض أوامر SRP الأساسية
يمكن استخدام خادم SRP وأوامر العميل بالتسلسل لتنفيذ مهام SRP النموذجية:
-
تفعِّل
srp server enable
خادم SRP بعد إنشاء شبكة Thread. -
srp client host name
: يحدّد اسم المضيف لكي يستخدمه العميل.يعمل
srp client host address (set)
إما على تفعيل وضع عنوان عميل المضيف التلقائي أو ضبط قائمة عناوين عميل المضيف بشكل صريح.يضيف
srp client service add
خدمة باسم مثيل معيّن واسم خدمة ورقم منفذ.تفعِّل
srp client autostart enable
وضع التشغيل التلقائي. يمكنك أيضًا بدء تشغيل البرنامج يدويًا عن طريق تشغيلsrp client start
.
-
يقدم
srp client host
وsrp client service
حالة بشأن ما إذا تم تسجيل مضيف العميل وخدمة العميل بنجاح في عقدة العميل أم لا.يوفِّر كل من
srp server host
وsrp server service
حالة المضيف والخدمة على عقدة الخادم.
-
يزيل
srp client service remove
خدمة مع الاحتفاظ باسم الخدمة. -
يزيل
srp client host remove
المضيف وجميع الخدمات المسجّلة.
أمثلة على استخدام خادم SRP وأوامر العميل
تستخدم هذه الأمثلة أوامر CLI الأساسية لإعداد شبكة Thread، وتشغيل خادم وعميل SRP، والتحقق من حالة الخادم، وإزالة خدمة. تُستخدم عينة البيانات لأغراض توضيحية.
بدء خادم SRP
ابدأ عقدة خادم SRP:
./output/simulation/bin/ot-cli-ftd 1
عليك إعداد شبكة Thread ثم تفعيل خادم SRP من خلال تنفيذ الأمر
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
بدء برنامج SRP
ابدأ عقدة عميل SRP:
./output/simulation/bin/ot-cli-ftd 2
انضم إلى شبكة Thread وقم بتعيين اسم مضيف العميل وعنوانه وتسجيل خدمة:
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
Doneكما هو موضّح أعلاه، استخدِم الأمر
srp client autostart enable
لتفعيل وضع البدء التلقائي في البرنامج. يراقب العميل بيانات الشبكة لاكتشاف خوادم SRP المتاحة داخل شبكة Thread، ثم يبدأ العميل تلقائيًا.في حال بدء تشغيل العميل يدويًا، قم بتشغيل ما يلي وتضمين عنوان SRP والمنفذ:
srp client start fded:5114:8263:1fe1:68bc:ec03:c1ad:9325 49154
Doneخادم SRP الذي يستمع إلى منفذ UDP هو
c002(49154)
في المثال أعلاه.
التحقّق من حالة الخدمة
تحقَّق مما إذا تم تسجيل المضيف والخدمة بنجاح في عقدة العميل:
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تأكَّد من أنّ الناتج يعرض
state:Registered
لكل من أوامر المضيف والخدمة، كما في المثال أعلاه.يمكنك التحقّق من المضيف والخدمة في عقدة الخادم:
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تأكَّد من أنّ الناتج يعرض
deleted: false
لكل من الأمرينsrp server host
وsrp server service
، كما في المثال أعلاه.
إزالة الخدمة
أزِل الخدمة من خلال عقدة العميل:
srp client service remove my-service _ipps._tcp
Doneتأكَّد من خلال عقدة الخادم من أنه تمت إزالة الخدمة:
srp server service
my-service._ipps._tcp.default.service.arpa. deleted: true Doneيتم إدراج إدخال الخدمة في الإخراج بسبب عدم إزالة اسم الخدمة.
إزالة اسم المضيف والخدمة
إزالة المضيف وجميع خدماته المسجَّلة:
srp client host remove 1
Doneتأكّد في عقدة الخادم من عدم إدراج أي إدخالات للمضيف أو الخدمة:
srp server host
Donesrp server service
Done >