OpenThread هر دو عملکرد سرور SRP و کلاینت را ارائه می دهد و دستگاه ها را قادر می سازد تا خدمات مبتنی بر DNS را با استفاده از به روز رسانی استاندارد DNS ارسال شده به عنوان بسته های unicast ثبت کنند. این قابلیت کشف سرویس مبتنی بر DNS را فعال می کند.
این راهنما وظایف اساسی را ارائه می دهد که از برخی از رایج ترین دستورات 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
برای توضیحات و نحو تمام دستورات، به مرجع فرمان CLI مراجعه کنید. دستورات سرور SRP بر اساس حروف الفبا با سرور srp (فعال، غیرفعال) شروع می شود. دستورات کلاینت SRP بر اساس حروف الفبا با srp client autostart (get) شروع می شود.
آزمایشگاه کد روتر مرزی
کد لبه OpenThread Border Router شامل اطلاعاتی در مورد نحوه راه اندازی دستگاه پایان مشتری SRP است.
مروری بر برخی از دستورات اولیه SRP
دستورات سرور SRP و کلاینت را می توان به ترتیب برای انجام کارهای معمولی SRP استفاده کرد:
srp server enable
سرور SRP را پس از ایجاد شبکه Thread فعال می کند.کلاینت SRP را راه اندازی کنید .
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 Client را راه اندازی کنید:
./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پورت UDP شنود سرور SRP در مثال بالا
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 >