mDNS — це мультикастний DNS, який головним чином дозволяє хостам у локальній мережі знаходити та спілкуватися між собою без традиційного DNS-сервера, а використовується порт5353, дотримуватися протоколу DNS і використовувати існуючу структуру інформації DNS, синтаксис і типи записів ресурсів. І жодного нового коду дій чи відповіді не вказано. У локальній мережі пристрій і пристрій повинні знати 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. Користувацька програма отримує сповіщення про виявлені мережеві сервіси та ресурси через повідомлення на D-Bus на Linux. Цей демон працює з кешуванням відповідей користувацьких програм, щоб зменшити мережевий трафік, що виникає через відповіді. Запустіть сервіс avahi-daemon.service за допомогою наступної команди:
Ви можете скористатися командою avahi-browse після встановлення avahi-tools.
Ви можете переглядати всі сервіси MDNS у локальній мережі за допомогою наступної команди:
Для запиту до заданої служби команда виглядає так:
Якщо ви закриєте додаток .NET Core і зробите запит до сервісу на іншому сервері, буде зафіксована така помилка:
+ тест eth0 IPv4 _itsvse_discovery._tcp локально Не вдалося розв'язати сервісний 'тест' типу '_itsvse_discovery._tcp' у домені 'local': Тайм-аут досягнуто
Додається вихідний код:
Туристи, якщо ви хочете побачити прихований контент цього допису, будь ласка Відповідь
(Кінець)
|