mDNS е мултикаст DNS, който основно позволява на хостовете в LAN да откриват и комуникират помежду си без традиционен DNS сървър, а използваният порт е5353, следват DNS протокола и използват съществуващата DNS информационна структура, синтаксис и типове записи на ресурси. И не е посочен нов код за действие или отговор. В LAN мрежата устройството и устройството трябва да знаят IP адреса си, преди да комуникират помежду си; в повечето случаи IP адресът на устройството не е статичен IP адрес, а динамично присвоен IP адрес чрез DHCP протокола, как да се открие устройството, трябва да се покаже уменията си чрез MDNS, например: сега комуникацията между устройството за Интернет на нещата и приложението, било чрез излъчване, или чрез мултикаст – изпраща конкретна информация, заинтересованото устройство отговаря, за да се постигне откриване на LAN устройства, разбира се, mDNS е по-мощен от това.
Регистрация на услуги
Първо, създайте нов проект за .NET Core 3.1 и използвайте командата nuget, за да се обърнете към следния пакет:
Текущото име и адрес на услугата се откриват чрез излъчване, с следния код:
Откриване на услуги
Откриването на услуги, което можем да постигнем чрез .NET/C# код, е следното:
Можете също да активирате откриване на услуги, за да получавате всички излъчвания, кодът е следният:
Сървър: CentOS Linux версия 7.8.2003 (Core), чрез инсталиране на avahi и avahi-tools инструменти услугата също може да бъде открита, като командата за инсталация е следната:
avahi-daemon е сервизен демон, който работи на Linux операционна система и реализира търсене за мрежова Zeroconf услуга на клиентска машина. Тази услуга може да реализира спецификации за откриване на DNS услуги и DNS мултикаст за мрежата Zeroconf. Потребителската програма получава известия за открити мрежови услуги и ресурси чрез Linux D-Bus съобщения. Този демон работи с кеширане на потребителски програмни отговори, за да помогне за намаляване на мрежовия трафик, произтичащ от отговорите. Стартирайте услугата avahi-daemon.service със следната команда:
Можете да използвате командата avahi-browse след инсталиране на avahi-tools.
Можете да видите всички MDNS услуги в LAN с следната команда:
За да се запита определена услуга, командата е следната:
Ако затворите .NET Core приложението и изпратите заявка към услугата на друг сървър, ще бъде докладвана следната грешка:
+ eth0 IPv4 тест _itsvse_discovery._tcp локален Не успя да се разреши "тестът" на услугата от тип "_itsvse_discovery._tcp" в домейн "local": Достигна таймаут
Приложен е изходният код:
Туристи, ако искате да видите скритото съдържание на този пост, моля Отговор
(Край)
|