- par
- TheLight
- le
- 14/08/2012 à 17:36
- catégorie
- Réseau
Un peu de technique
Avant d’aller plus loin dans les explications, faisons un bref éclaircissement sur ce qu’est exactement un serveur DNS. Pour faire simple, un Domain Name System ; ou plus communément appelé Serveur de Résolution de noms ; permet de transformer une adresse Internet littérale en une adresse IP.
En effet sur Internet, tous les ordinateurs et serveurs connectés possèdent une adresse IP permettant de les identifier individuellement. Ainsi, pour que les utilisateurs puissent accéder à un site Internet quelconque, ce dernier doit donc être hébergé sur un serveur web repéré par une adresse IP unique sur le réseau.
Prenons par exemple le cas typique du moteur de recherche de Google. Il est enfantin d’obtenir l’adresse IP du serveur web ou il est hébergé en spécifiant la commande « ping google.fr
» dans un invite de commandes, ce qui vous donnera « 173.194.67.64 » (cette adresse IPV4 est évidemment susceptible de changer dans le temps, il faut bien que les ingénieurs de Google s’occupent …). De ce fait en tapant dans la barre d’adresse de votre navigateur favori la chaine http://173.194.67.64 … Surprise vous arriverez directement sur le site de Google, stupéfiant non ?
Attention quand même ça ne marche pas à tous les coups, la plupart du temps les sites Web ; hébergés sous Apache le plus souvent ; n’acceptent pas cette manipulation. En effet il est très courant qu’un serveur Web héberge plusieurs sites Internet, qui auront donc la même adresse IP (C’est le cas pour Kergoz-Panic qui est hébergé chez OVH). Par exemple si vous tentez d’accéder à Kergoz-Panic directement via son IP dans un navigateur avec la manipulation précédente, vous serez sauvagement redirigés vers la page d’accueil d’OVH !
Alors pourquoi ça ne marche pas ? L’explication est que l’entête « HOST » requis dans le protocole HTTP 1.1 ne pourra pas être renseigné correctement puisque vous n’êtes pas préalablement passé par l’intermédiaire d’un serveur DNS. En effet ce champ permet de préciser le site web concerné par la requête, et qui est absolument nécessaire dans le cas d’un serveur hébergeant plusieurs sites à la même adresse IP. De ce fait sans passer par un serveur DNS, il sera impossible pour votre navigateur de trouver où est localisé le site Kergoz-Panic sur le serveur d’hébergement OVH avec cette technique, il fallait y penser …
Toutefois nous venons de le voir, certains sites peuvent être contactés directement avec leur adresse IP dans une barre d’adresse, mais là le problème est tout autre. En effet la plupart des sites hébergent divers types de contenus comme des images, des bannières ou des vidéos qui nécessitent elles-mêmes d’être chargées sur votre machine. Sans serveur DNS, il est fort probable que vos pages ne s’affichent pas correctement, ces éléments étant stockés la plupart du temps sur des serveurs dispatchés sur le réseau et donc avec des noms de domaines distincts impossibles à résoudre pour votre seule machine!
Notez également que lorsque vous accédez à un site internet de manière classique, votre ordinateur va stocker de manière temporaire les informations obtenues auprès du serveur DNS contacté pour une durée variable dans son cache DNS. Cela a pour effet d’empêcher la multiplication de requêtes DNS inutiles et ainsi de surcharger ces pauvres serveurs qui traitent déjà plusieurs centaines de millions de requêtes hebdomadairement.
Prenons à présent un cas concret, que se passe-t-il vraiment lorsque vous tentez d’accéder au moteur de recherche Google dans un navigateur Web ?
- Avant toute chose, votre machine ; oui on va supposer ici que c’est la vôtre ; va préalablement jeter un œil dans son cache DNS histoire de regarder si une correspondance entre le site www.google.fr et une adresse IP existe. Pas de chance le cache est vide, quel hasard !
- Votre machine va alors contacter un serveur DNS afin de répondre à cette question philosophique « Mais quelle adresse IP se cache-t-il derrière cette chaine de caractères incompréhensible pour moi pauvre machine remplie de diodes et de Lithium que je suis ? ». Le serveur DNS fourni par votre fournisseur d’accès se chargera aimablement de résoudre ce périlleux problème (je vous passe les détails) et renverra finalement à votre machine l’adresse IP correspondant au site www.google.fr , c’est-à-dire 173.194.67.64.
- Après avoir enregistré la correspondance www.google.fr - 173.194.67.64 dans son cache DNS, votre machine va alors envoyer une requête HTTP ; avec le champ « HOST » correctement repli ; à destination du serveur Web de Google dont on connaît à présent l’adresse IP. Ce dernier nous renverra finalement une page au format HTML correspondant à la page du moteur de recherche tant attendue.
C’est beau le progrès …
Mais revenons à nos moutons, et OpenDNS dans tout ça ? En fait le principe de OpenDNS est de se substituer au serveur DNS par défaut fourni par votre FAI et d’intervenir entre le moment ou vous tapez une adresse dans votre navigateur et où celui-ci peut accéder au site Web souhaité une fois son adresse IP obtenue. Grâce à des règles de filtrages évoluées et une base de données conséquente, il est possible de configurer ce nouveau DNS pour décider de filtrer ; par exemple ; les différents sites pornographiques du Web ! Lorsqu’un utilisateur de votre réseau souhaitera alors consulter le site www.bukkakebigtitsyouporn.com, le serveur OpenDNS ne lui délivrera pas l’adresse IP attendue, mais une autre adresse IP redirigeant l’utilisateur vers une page du genre :
Plutôt frustrant non ? Vous pouvez même accompagner cette page d’un petit message et d’un logo personnalisé, la cerise sur le gâteau en somme !
« Weegee is watching you. »
« Okay sa m’a l’air pas mal tout ça ! Maaaaiiis comment je dois m’y prendre pour l’installer ? Et puis c’est vraiment fiable à 100% ce machin ? » Réponse bientôt !
Commentaires
Aucun commentaire n’a encore été posté sur cet article.