Outils pour utilisateurs

Outils du site


netadmin:mdns

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
netadmin:mdns [2022/01/24 23:51] yoannnetadmin:mdns [2022/01/25 14:16] (Version actuelle) yoann
Ligne 4: Ligne 4:
 ====== mDNS ====== ====== mDNS ======
  
-Initialement développé par Apple via son protocole ''Bonjour'', c'est aujourd'hui un standard [[ https://tools.ietf.org/html/rfc6762 | RFC6762 ]].+Initialement développé par Apple via son protocole ''Rendez-vous'' ou ''Bonjour'', c'est aujourd'hui un standard
 +  * [[ https://tools.ietf.org/html/rfc6762 | RFC6762 ]] 
 +  * [[ https://tools.ietf.org/html/rfc6763 | RFC6763 ]] 
 + 
 +Il existe plusieurs implémentations: 
 +  * avahi pour les systèmes GNU/Linux 
 +  * jmDNS implémentation du protocole en Java 
 +  * Bonjour pour MACOS et Windows 
 + 
 +avahi-daemon est le processus principal en charge des traitements liés au protocole. Il / Lu'utilisateur peut interagir avec le service via la ligne de commande ou via D-Bus.
  
 mDNS utilise la même syntaxe que DNS (commandes et structure des requêtes) mais ne nécessite pas qu'un serveur DNS soit paramétré. Pour la résolution des noms, les machines créent leurs propres enregistrements DNS dans un cache local. mDNS utilise la même syntaxe que DNS (commandes et structure des requêtes) mais ne nécessite pas qu'un serveur DNS soit paramétré. Pour la résolution des noms, les machines créent leurs propres enregistrements DNS dans un cache local.
Ligne 44: Ligne 53:
 avahi-resolve --name my-host.local avahi-resolve --name my-host.local
 </code> </code>
 +
 ==== Découverte de services via mDNS ==== ==== Découverte de services via mDNS ====
 +
 +Les services peuvent être découverts en utilisant la commande avahi-browse
 +
 +<code bash>
 +# Syntaxe
 +# avahi-browse [options] service-type 
 +</code>
 +
 +Quelques options usuelles:
 +  * **-a** tous types de services
 +  * **-r** résoudre automatiquement les services
 +  * **-p** affiche la sortie 
 +  * **-t** se termine après une passe de découverte. Par défaut la commande reste en écoute et en recherche active du service.
 +
 +Pour rechercher et résoudre tous les serveurs CoAP:
 +<code bash>
 +avahi-browse -rt _coap._udp
 +</code>
 +
 +L'utilitaire **mdns-scan** permet également d'identifier les services publiés sur le réseau local.
 +
 +
 +===== Publier un service =====
 +
 +La commande avahi-publish-service permet de publier un service:
 +
 +<code bash>
 +# Syntaxe
 +# avahi-publish-service SERVICE-NAME _APPLICATION-
 +PROTOCOL._TRANPOSRT-PROTOCOL PORT “DESCRIPTION” --sub SUBPROTOCOL
 +
 +# Exemple
 +</code>
  
 ===== Sécurité ===== ===== Sécurité =====
Ligne 53: Ligne 96:
 nmap -Pn -sU -p5353 --script=dns-service-discovery <server-public-IP> nmap -Pn -sU -p5353 --script=dns-service-discovery <server-public-IP>
 </code> </code>
 +
 +
 +A tester, nettoyage du cache par envoi d'un signal kill au daemon avahi
 +<code bash>
 +# a adapter a systemd
 +avahi-daemon --kill
 +</code>
 +
 +Avahi copie les enregistrements en cache dans le journal syslog lorsqu'il reçoit le signal **SIGUSR1**:
 +<code bash>
 +systemctl kill -s USR1 avahi-daemon.service
 +</code>
 +
 +
 ===== Références ===== ===== Références =====
  
   * https://stevessmarthomeguide.com/multicast-dns/   * https://stevessmarthomeguide.com/multicast-dns/
   * https://www.ionos.fr/digitalguide/serveur/know-how/multicast-dns/   * https://www.ionos.fr/digitalguide/serveur/know-how/multicast-dns/
 +  * https://askubuntu.com/questions/972630/what-is-mdns-is-it-possible-to-make-mdns-query-without-mdns-service-running
netadmin/mdns.1643068279.txt.gz · Dernière modification : 2022/01/24 23:51 de yoann