21
Johan BLEUZEN / 21 1 ZeroConf et l’implémentation “Bonjour” Exposé IR3

ZeroConf et l’implémentation “Bonjour”

  • Upload
    teo

  • View
    52

  • Download
    0

Embed Size (px)

DESCRIPTION

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... - PowerPoint PPT Presentation

Citation preview

Page 1: ZeroConf et  l’implémentation “Bonjour”

Johan BLEUZEN / 211

ZeroConf et l’implémentation

“Bonjour”

Exposé IR3

Page 2: ZeroConf et  l’implémentation “Bonjour”

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”

Johan BLEUZEN / 213

ZeroConf et Apple “Bonjour”

Page 4: ZeroConf et  l’implémentation “Bonjour”

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”

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”

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”

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”

Johan BLEUZEN / 218

Les services de “Bonjour”

Page 9: ZeroConf et  l’implémentation “Bonjour”

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”

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”

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”

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”

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”

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”

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”

Johan BLEUZEN / 2116

Pour aller plus loin...

Page 17: ZeroConf et  l’implémentation “Bonjour”

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”

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”

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”

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”

Johan BLEUZEN / 2121

Questions...