Fois (n.) La fréquence Fluffy a dit bonjour deux fois. Bonjour bonjour !
ZeroConf et l’implémentation “Bonjour”
description
Transcript of ZeroConf et l’implémentation “Bonjour”
![Page 1: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/1.jpg)
Johan BLEUZEN / 211
ZeroConf et l’implémentation
“Bonjour”
Exposé IR3
![Page 2: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/2.jpg)
Johan BLEUZEN / 212
SommaireI. ZeroConf et Apple “Bonjour”
1. ZeroConf2. Principes de bases3. Apple “Bonjour”4. Utilisations de “Bonjour”
II. Les services de “Bonjour”1. IPv4 Lien-Local2. multicastDNSI. DNS Service Discovery
1. Pour aller plus loin...1. Autres services ZeroConf2. Autres implémentations3. Conclusion
I. Références
![Page 3: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/3.jpg)
Johan BLEUZEN / 213
ZeroConf et Apple “Bonjour”
![Page 4: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/4.jpg)
Johan BLEUZEN / 21 4
ZeroConf
• ZeroConf était un groupe de travail de l’IETF
• Objectifs :✴ Fournir un réseau sans configuration✴ Ne pas nécessiter d’intervention humaine✴ Ne pas interférer avec les réseaux existants.
• Le groupe de travail a été clos en 2004
![Page 5: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/5.jpg)
Johan BLEUZEN / 21 5
Principes de bases
• Pour monter un réseau normal :✴ DHCP : Obtenir une adresse IP✴ DNS : Résoudre les noms des machines✴ Interventions manuelles
• Principes de ZeroConf :✴ Affectation automatique d’adresse IP✴ Résolution des noms de domaines✴ Découverte de services
![Page 6: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/6.jpg)
Johan BLEUZEN / 21 6
• Ancêtres de Bonjour :✴ En 1980, les premiers macintosh dispose d’un
outils simple de communication pour monter un réseau
✴ Avec l’arrivée d’Ethernet, Apple améliore cet outils pour les réseaux Ethernet.
• Pour Mac OS 10.2, Apple développe sa propre implémentation de ZeroConf => “Bonjour”
Apple “Bonjour”
![Page 7: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/7.jpg)
Johan BLEUZEN / 21 7
• Compatible avec Ethernet et le Wifi
• Une pièce angulaire de Mac OS X
• Très facile de monter un réseau fiable avec “Bonjour”
• Multi-plateforme (Windows, Linux)
Utilisations de “Bonjour”
![Page 8: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/8.jpg)
Johan BLEUZEN / 218
Les services de “Bonjour”
![Page 9: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/9.jpg)
Johan BLEUZEN / 21 9
IPv4 Lien-Local (1)
• Service d’attribution des adresse IP.
• Ce n’est pas un service récent
• Compatible avec IPv4 et IPv6✴ format @IP en IPv4 : 169.254.***.***
• Les conflits d’adresses sont détectés tout le temps
![Page 10: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/10.jpg)
Johan BLEUZEN / 21 10
• Fonctionnement :
Envoi d’une requête ARPwho-has 169.254.2.1 en broadcast
Envoi d’une requête ARPwho-has 169.254.1.1 en broadcast
Attribution automatique de l’ adresse169.254.1.1
Attribution automatique de l’ adresse169.254.2.1
IPv4 Lien-Local (2)
Changement de l’adresse attribuée
Utilisation de l’adresse 169.254.2.1
@ Libre
@ Utilisée
QuickTime™ et undécompresseur GIFsont requis pour visionner cette image.
Configuration OK
![Page 11: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/11.jpg)
Johan BLEUZEN / 21 11
multicastDNS (1)• Service de résolution de noms
• Implémentation des travaux d’Apple
• Permet de résoudre les noms du domaine “local.”
• Utilise un cache DNS spécial
• Ne fonctionne que sur le réseau local
• Améliore le fonctionnalités de DNS (optimisations)
• Détection et résolution des conflits
![Page 12: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/12.jpg)
Johan BLEUZEN / 21 12
• Fonctionnement :
Traitement normal
multicastDNS (2)
NomadeIP:
169.254.1.1
La machine Nomade veut faire un ping sur la machine Fixe
ping Fixe.local
mDNS fait une requête DNS sur le domaine local s’il ne connaît pas le nom et remplace par l’adresse
IP en cacheping 169.254.1.2
FixeIP:
169.254.1.2
QuickTime™ et undécompresseur GIFsont requis pour visionner cette image.
![Page 13: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/13.jpg)
Johan BLEUZEN / 21 13
• Service de découverte de services
• Implémentation des travaux d’Apple
• Liste des services accessibles est géré par DNS-SD.org
• Très pratique pour les développeurs
• Il utilise mDNS pour transiter les données sur le réseau
DNS Service Discovery (1)
![Page 14: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/14.jpg)
Johan BLEUZEN / 21 14
• Stockage de la liste des services✴ Même fonctionnement que les DNS mais
adapté
INSTANCE
SERVICE
DNS Service Discovery (2)
_INSTANCE._SERVICE._DOMAIN. (Exemple : _ftp._tcp.)
DOMAIN
RACINE
![Page 15: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/15.jpg)
Johan BLEUZEN / 21 15
• Fonctionnement :
DNS Service Discovery (3)
Mise à jour des services accessibles par tous les hôtes
Nomade FixeLa machine Fixe enregistrele service HTTP auprès de DNS-SD
La machine Nomade indique à l’utilisateur que le service est
accessible
QuickTime™ et undécompresseur GIFsont requis pour visionner cette image.
![Page 16: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/16.jpg)
Johan BLEUZEN / 2116
Pour aller plus loin...
![Page 17: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/17.jpg)
Johan BLEUZEN / 21 17
Autre services ZeroConf• Résolutions de noms :
✴ LLMNR est un draft soutenue par Microsoft• Résoud tous les domaines• Utilise peu le multicast• Très proche du DNS classique
• Découverte de service✴ SLP est une norme de l’IETF
• Très peu utilisé• Utilise le style de requête LDAP• Complexe à mettre en place
✴ SSDP est un draft proposé par UPNP Forum• Utilisé sur Windows pour les
périphériques UPNP
![Page 18: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/18.jpg)
Johan BLEUZEN / 21 18
Implémentation connues
• “Avahi” est l’implémentation utilisée pour les systèmes Linux et BSDs qui remplace “Howl”
• “Howl” était une implémentation linux de mDNS
• “Windows CE 5” implémente la version de microsoft du service de résolution de noms LLMNR
![Page 19: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/19.jpg)
Johan BLEUZEN / 21 19
• Inconvénients :✴ Pollution du réseau exponentielle✴ La sécurité n’est pas une priorité
☹
• Point positifs :✴ Ca marche tout de suite et facilement✴ Plus besoin de faire de configuration✴ Compatible avec toutes sortes d’appareil✴ Multi-plateformes✴ Plus facile de retenir des noms que des IPs
☺
Conclusion
• L’avenir :✴ Compatible avec les nouveaux protocoles
(IPv6)
☞
![Page 20: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/20.jpg)
Johan BLEUZEN / 21 20
Ressources• Site officiel du groupe Zero Configuration
Network :✴ http://www.zeroconf.org/
• Apple Developper Connection :✴ http://developer.apple.com/networking/bonjour
/index.html✴ http://developer.apple.com/documentation/Dar
win/Reference/ManPages/man1/dns-sd.1.html
• Wikipédia :✴ http://en.wikipedia.org/wiki/ZeroConf✴ http://en.wikipedia.org/wiki/Bonjour_%28softw
are%29
• La documentation Ubuntu :✴ http://doc.ubuntu-fr.org/zeroconf?s=avahi
![Page 21: ZeroConf et l’implémentation “Bonjour”](https://reader034.fdocuments.net/reader034/viewer/2022051401/56814c06550346895db90480/html5/thumbnails/21.jpg)
Johan BLEUZEN / 2121
Questions...