par tomtom » 30 Juil 2003 09:52
Decortiquons un peu.
<BR>
<BR>SUpposons que je tape dans monbrowser :
<BR>
<BR><!-- BBCode auto-link start --><a href="http://www.grosbedos.fr" target="_blank">http://www.grosbedos.fr</a><!-- BBCode auto-link end --> (hum ca doit etre unpeu dur à deposer ça <IMG SRC="images/smiles/icon_wink.gif"> )
<BR>
<BR>Etape 1 :
<BR>verification du cache de mon pc. Hote inconnu
<BR>
<BR>Etape 2 : requete à mon dns : 172.16.2.1 : "quel est l'adresse de <!-- BBCode auto-link start --><a href="http://www.grosbedos.fr" target="_blank">www.grosbedos.fr</a><!-- BBCode auto-link end --> ??"
<BR>
<BR>Etape 3 : hote inconnu. envoi d'une requete au dns de mon provider : "quel est l'adresse de <!-- BBCode auto-link start --><a href="http://www.grosbedos.fr" target="_blank">www.grosbedos.fr</a><!-- BBCode auto-link end --> ??"
<BR>
<BR>Etape 4 :
<BR>... cas 1 : Ce dns connait l'adresse (cache) et il me la renvoit)
<BR>
<BR>... cas 2 : Ce dns ne connait pas l'adresse, mais il a en cache l'adresse du dns autorité de la zone "grosbedos.fr ." Suivant sa config, soit il retourne à mon dns l'adresse de ton NS, soit il fait lui-même la requete vers ton NS : "ns1.grosbedos.fr" et l'adresse de ton NS, qui est FORCEMMENT ton ip publique.
<BR>
<BR>
<BR>etape 5 (si cas 2) :
<BR>Mon DNS a reçu l'adress de "NS1.grosbedos.fr", il emmet une requete DNS vers NS1.dns.fr (ton ip publique) : "quel est l'adresse de <!-- BBCode auto-link start --><a href="http://www.grosbedos.fr" target="_blank">www.grosbedos.fr</a><!-- BBCode auto-link end --> ??"
<BR>(si le dns de mon provider etait en recursif, c'est lui qui ferait cette requette mais c'est peu probable)
<BR>
<BR>etape 6
<BR>Un paquet de requete DNS (udp port 53 a priori) arrive sur l'interface RED de ton IPCop, contenant la requete. En toute logique, tu as du configurer un transfert de ports vers l'adresse de ton serveur DNS en DMZ, disons 192.168.0.5. Ce paquet est transféré vers lui.
<BR>
<BR>etape 7
<BR>Ton DNS est autorité sur la zone grosbedos.fr. et il va repondre à cette requete. Il va lire le fichier de zone que tu as ecrit, et chercher une entrée "www". S'il la trouve, il la renvoie à mon DNS. Sinon, il renvoie une erreur "hote inexistant <!-- BBCode auto-link start --><a href="http://www.grosbedos.fr" target="_blank">www.grosbedos.fr</a><!-- BBCode auto-link end -->". Dans notre cas, tu as configuré une entrée "www". Et selon toute logique, tu as mis l'adresse publique de IPCop comme correspondance !
<BR>
<BR>etape 8 :
<BR>Mon DNS me retourne (enfin) ton adresse. Mon browser peut envoyer un paquet de connexion sur le port 80 de l'adresse qu'il a reçue : ton IP publique.
<BR>Evidemment, par le transfert de ports, ce paquet est envoyé à ton serveur web. La connexion est etablie....
<BR>
<BR>
<BR>Ou est le problème que tu cites ???
<BR>
<BR>etape 1 : je tape grosbedos.fr au lieu de <!-- BBCode auto-link start --><a href="http://www.grosbedos.fr" target="_blank">www.grosbedos.fr</a><!-- BBCode auto-link end -->
<BR>
<BR>toutes les autres atapes sont identiques jusqu'à l'atape 7. Là, que se passe-t-il ? Tout depend s'il y a un enregistrement canonique de zone. C'est quasiment tout le temps le cas. un exemple :
<BR> IN A 10.0.1.3
<BR>sans nom d'hote. Si le serveur trouve cet enregistrement il va repondre. Sinon, il ne devrait pas repondre.7Si le serveur repond ce doit bien sur etre avec ton ip publique.
<BR>
<BR>
<BR>Je te fais remarquer au passage que quasiment tous les sites repondent sans les www. ex : yahoo.com, ixus.net, free.fr, wanadoo.fr ......
<BR>
<BR>
<BR>
<BR>
<BR>Voila, un autre bon moyen est de créer dans ton serveur web des serveurs virtueles pour qu'il ne reponde que sur <!-- BBCode auto-link start --><a href="http://www.grosbedos.fr" target="_blank">www.grosbedos.fr</a><!-- BBCode auto-link end --> et affiche une page d'erreur sinon, voire rien du tout....
<BR>
<BR>Voila, j'espère que ça a un peu eclairé...
<BR>
<BR>T.
<BR>
<BR>
One hundred thousand lemmings can't be wrong...