ZeroConf et l'implémentation "Bonjour"
Le service "IPv4 Local Link"
Ce service n'est pas récent puisqu'il existait déjà sur Mac OS 9 ainsi que sous Windows 98.
Cependant aucun document offciel ne présentait les fonctionnalités précises. Le groupe de travail ZeroConf a donc rédigé la
RFC 3927 décrit les
spécifications de ce service.
Objectif du service
Ce service doit permettre à n'importe quelle machine de s'attribuer automatiquement une adresse IP valide. La RFC 3927 présente le fonctionnement de ce service seulement pour le protocole IPv4. Cependant aujourd'hui, le protocole IPv6 commence à être utilisé, ainsi une RFC (-> 2462) a été publiée pour prendre en compte ce nouveau protocole.
Fonctionnement
Les principes et le fonctionnement de ce service sont relativement simples. En effet, l'ordinateur va choisir aléatoirement
une adresse IP dans la gamme d'adresse suivante : "169.254.***.***".
Une fois cette adresse sélectionnée, l'hôte va effectuer un test pour vérifier que l'adresse IP n'est pas déjà utilisée.
Pour faire ce test, il envoie une simple requête ARP afin de demander si
l'adresse sélectionnée est utilisée.
Le paquet ARP à envoyer contient deux informations importantes, l'adresse
qui a été sélectionnée et le temps d'attente avant l'attribution de l'IP. La machine va envoyer cette requete sur l'adresse de
broadcast de la gamme d'adresse :"169.254.255.255". Au bout de ce délai, si la machine n'a pas reçu de réponses
ARP de conflits, alors cela veut dire que l'adresse est disponible, alors
la machine va annoncer quelle va utiliser cette adresse.
En théorie, il peut donc y avoir 65536 adresses disponibles pour le réseau.
Une animation présentant le principe d'attribution d'adresse avec IPv4 Local Link est accessible.
Gestion des conflits
Ce protocole est donc capable de "s'autogérer" seul. C'est à dire qu'avec cette méthode, la résolution des conflits qui peuvent se produire sont résolus automatiquement. Voici une liste de différentes raisons qui peuvent provoquer des conflits :
- Démarrage (ou reboot) d'une machine,
- Réveil d'une machine en veille,
- Monter une interface qui n'était pas active,
- Arrivée d'une nouvelle machine dans un réseau sans fil par exemple.
Ainsi à chaque fois que ces évenements se produiront, un test de disponibilité de l'adresse IP utilisée devra être effectuée afin d'assurer l'unicité de l'adresse IP sur le réseau.
Autre protocole...
Il n'existe pas beaucoup de protocoles similaires à IPv4ll, cependant on peut noter l'existance de APIPA, qui est l'implémentation de Microsoft utilisés sur les systèmes d'exploitation Windows.