210 likes | 377 Views
ZeroConf et l’implémentation “Bonjour”. Exposé IR3. Sommaire. ZeroConf et Apple “Bonjour” ZeroConf Principes de bases Apple “Bonjour” Utilisations de “Bonjour” Les services de “Bonjour” IPv4 Lien-Local multicastDNS DNS Service Discovery Pour aller plus loin...
E N D
ZeroConf et l’implémentation “Bonjour” • Exposé IR3
Sommaire • ZeroConf et Apple “Bonjour” • ZeroConf • Principes de bases • Apple “Bonjour” • Utilisations de “Bonjour” • Les services de “Bonjour” • IPv4 Lien-Local • multicastDNS • DNS Service Discovery • Pour aller plus loin... • Autres services ZeroConf • Autres implémentations • Conclusion • Références
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
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
Apple “Bonjour” • 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”
Utilisations de “Bonjour” • 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)
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
@ Libre @ Utilisée IPv4 Lien-Local (2) • Fonctionnement : Attribution automatique de l’ adresse 169.254.1.1 Attribution automatique de l’ adresse 169.254.2.1 Changement de l’adresse attribuée Envoi d’une requête ARP who-has 169.254.2.1 en broadcast Envoi d’une requête ARP who-has 169.254.1.1 en broadcast Utilisation de l’adresse 169.254.2.1 Configuration OK
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
multicastDNS (2) • Fonctionnement : Nomade IP: 169.254.1.1 Fixe IP: 169.254.1.2 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 cache ping 169.254.1.2 Traitement normal
DNS Service Discovery (1) • 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
RACINE DOMAIN SERVICE INSTANCE DNS Service Discovery (2) • Stockage de la liste des services • Même fonctionnement que les DNS mais adapté • _INSTANCE._SERVICE._DOMAIN. • (Exemple : _ftp._tcp.)
DNS Service Discovery (3) • Fonctionnement : Nomade Fixe La machine Fixe enregistre le service HTTP auprès de DNS-SD Mise à jour des services accessibles par tous les hôtes La machine Nomade indique à l’utilisateur que le service est accessible
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
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
L’avenir : • Compatible avec les nouveaux protocoles (IPv6) ☞ ☺ ☹ • 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
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/Darwin/Reference/ManPages/man1/dns-sd.1.html • Wikipédia : • http://en.wikipedia.org/wiki/ZeroConf • http://en.wikipedia.org/wiki/Bonjour_%28software%29 • La documentation Ubuntu : • http://doc.ubuntu-fr.org/zeroconf?s=avahi