Ignus a écritÉvidemment, dans ce cas de figure, ton exemple est valide et logique, ton fichier hosts est lu avant la requête DNS, j'avais écrit plus en amont que l'o npouvait associer ip et dns d'un site dans son hosts pour accélérer le traitement (suppression explicite de la requête dns pour le site voulu), pas de phishing. Certains virus modifie le fichier hosts comme dans ton exemple pour du phishing justement, mais cela ne permet pas de s'approprier le dns!
Heing ?
Pour le côté virus, comme il faut les droits roots, tout ça, je n'pense pas que ça ait été particulièrement employé (après, je n'suis pas allé voir chacun des 800 et quelques virus référencés pour GNU/Linux dans le détail).
Sinon, ce n'est pas que le fichier hosts est lu avant la requête DNS : il en est la première étape, et la seule dans le cas où il apporte une réponse. Ce que fait le fichier hosts, c'est très exactement ce que fait le reste du système de noms de domaines : associer une IP à un nom. Et tu fais les réglages que tu veux.
Tu disais qu'il était impossible d'associer sa machine à un nom de domaine, or non seulement ce n'est pas impossible, mais c'est même précisément la base du fonctionnement du DNS.
Ignus a écritEn l'état et avec l'exemple du site fixubuntu, je ne vois rien de moins bon. En fait, je réagissais aux dires de sebsauvage.net qui déclare présomptueusement que 0.0.0.0 ou tout simplement o dans le hosts accélère le traitement, c'est inexacte pour moi puisque ton hosts et lu avant toutes requêtes DNS et que, c'est les performance de ta machine qui conditionne le traitement.
Quand tu déclares qu'un nom de domaine pointe vers une adresse valide (la tienne ou n'importe quelle autre), le système envoie une requête vers cette adresse, et attend une réponse. Quand tu déclares qu'il pointe vers une adresse invalide, il n'envoie pas de requête. Certes, les connexions réseaux vers la machine locale sont assez rapide, ce qui fait qu'on peut ne pas voir la différence en pratique, mais il n'empêche que, si tu penses qu'il est inexact de dire qu'envoyer une requête et attendre la réponse est plus long que de ne pas envoyer de requête… je n'sais pas, essaye de réfléchir ?
Ignus a écritComme le net fonctionne par une résolution d'adresse valide, l'exemple du 0.0.0.0 ou 0 n'est pas logique. Il y a de forte chance que ton serveur en soit affecté ou tout du moins que ce choix génère un énorme fichier d'erreur.
Heing ?
Quand ton hosts renvoie 0.0.0.0, le système n'envoie pas de requête. Un serveur web réagit aux requêtes qu'il reçoit. Il n'y a donc strictement aucune réaction d'un serveur web au fait que personne n'essaye de lui causer.
C'est en revanche quand tu fais pointer le nom sur une adresse locale que le serveur web (ou autre) est sollicité ; et c'est dans ce cas qu'il va te renvoyer une erreur indiquant qu'il ne comprend pas la requête (à moins que la requête ne corresponde aussi à quelque chose en local).
Ignus a écritEn soit 127.0.0.1 ou 0.0.0.0 ou 0 dans un hosts revient strictement au même, connexion impossible (l'association ip - dns non conforme à celle enregistrée par le serveur DNS sur lequel pointe un ip en hard)! Toutefois, l'un me semble plus respectueux du protocole que l'autre.
Eùh, non.
Il n'y a pas de vérification de conformité, ni d'appel à un autre serveur de nom, quand le fichier hosts renvoie une adresse. La requête DNS est effectuée la première fois que tu essayes de contacter un site par son nom ; ensuite, le système utilise l'adresse IP récupérée (c'est pour cela qu'il est nécessaire d'actualiser une ou deux fois la page après avoir fait la modif dans le fichier hosts : sinon, le navigateur garde l'IP précédente pendant la durée de mise en cache).
Ton système voit le nom, s'informe, d'une manière ou d'une autre (par son cache, par son fichier hosts, ou par une requête vers un serveur de nom), de l'IP à laquelle il doit s'adresser, puis communique avec cette IP. C'est tout. Et si l'IP qu'il a obtenu pointe sur la machine locale parce que le fichier hosts est défini comme ça, alors il envoie une requête vers la machine locale. C'est aussi simple que ça.
Eùh… on dirait que tu t'es contenté de chercher la présence du mot « obsolète » dans la page sans aller lire la phrase en question. Parce que ce qui est marqué, c'est :
la mise en place d'un serveur DNS rend obsolète le fichier /etc/hosts. Il est néanmoins conseillé de continuer à le mettre à jour.
Ce qui signifie (même si c'est mal formulé) qu'installer un serveur de nom sur ta machine locale fait que tu n'as plus besoin d'utiliser le fichier hosts, puisque tu as un mécanisme plus efficace à ta disposition. Ça ne parle en rien d'une supposée obsolescence du fichier hosts par lui-même par rapport au reste du système DNS.
Ignus a écritOui, le hosts sert principalement pour du réseau local en entreprise mais il peut filtrer des choses malgré tout puisqu'il est lu avant le DNS du réseau internet.
Non. Il sert à une machine locale et uniquement à elle. Pour filtrer un réseau d'entreprise, l'entreprise utilise un serveur DNS menteur sur son réseau (qui, hormis le fait qu'il soit menteur, ne diffère pas plus « du DNS du réseau Internet » (quoi que ça puisse signifier) que n'importe quel autre DNS).
Ignus a écritOu bien? 😃
Ou bien tu pourrais commencer par te renseigner sur la façon dont fonctionne le réseau avant de prendre les gens de haut avec des bêtises. Tiens, commence par
le blog de Bortz.