Questions sur le NAT et redirection de ports
Résolu
Adrael
Messages postés
19
Date d'inscription
Statut
Membre
Dernière intervention
-
pharelle -
pharelle -
Bonjour,
Voilà, je me pose les questions suivantes :
Mon ordinateur fait partie d'un réseau domestique centré sur une livebox, qui fait office de routeur NAT et de modem. Ainsi, si un ordinateur A ou un ordinateur B de mon réseau surfe sur internet, seule l'adresse ip de la livebox est visible. Mais :
- Comment se fait-il alors que si sur un poste A je consulte une page web toto.com, puis que sur un ordinateur B de ce même réseau je consulte ensuite la même page toto.com, celle-ci apparaisse dans le navigateur de B comme jamais visitée auparavant. (genre le lien reste bleu au lieu de pourpre) ?
La livebox doit bien marquer dans les paquets qui sortent des trucs pour qu'en retour elle sache à qui envoyer (A ou B) ?
- Mais si elle sait le faire toute seule pour internet (http port 80), pourquoi par exemple pour accéder à un serveur ftp depuis mon ordinateur A dois-je installer une règle de port forwarding dans la livebox (genre rediriger tout le traffic entrant du port 21 sur le port 21 de l'ordi A)? La livebox ne sait pas rediriger les paquets comme elle le faisait pour internet ?
Voilà, je me pose les questions suivantes :
Mon ordinateur fait partie d'un réseau domestique centré sur une livebox, qui fait office de routeur NAT et de modem. Ainsi, si un ordinateur A ou un ordinateur B de mon réseau surfe sur internet, seule l'adresse ip de la livebox est visible. Mais :
- Comment se fait-il alors que si sur un poste A je consulte une page web toto.com, puis que sur un ordinateur B de ce même réseau je consulte ensuite la même page toto.com, celle-ci apparaisse dans le navigateur de B comme jamais visitée auparavant. (genre le lien reste bleu au lieu de pourpre) ?
La livebox doit bien marquer dans les paquets qui sortent des trucs pour qu'en retour elle sache à qui envoyer (A ou B) ?
- Mais si elle sait le faire toute seule pour internet (http port 80), pourquoi par exemple pour accéder à un serveur ftp depuis mon ordinateur A dois-je installer une règle de port forwarding dans la livebox (genre rediriger tout le traffic entrant du port 21 sur le port 21 de l'ordi A)? La livebox ne sait pas rediriger les paquets comme elle le faisait pour internet ?
A voir également:
- Questions sur le NAT et redirection de ports
- Citez deux ports permettant de connecter directement un ordinateur à un écran (tv, vidéoprojecteur, etc.). - Guide
- Avertissement de redirection ✓ - Forum Logiciels
- Redirection dangereuse - Forum Virus
- Type nat echec ps4 ✓ - Forum PS4
- Les connexions au serveur « imap.gmail.com » sur les ports par défaut ont expiré. ✓ - Forum MacOS
7 réponses
Y'a deux choses a bien distinguer et tout se joue au niveau des ports et des adresses IP :
_ quand c'est toi qui effectu une requete, donc tu t'adresse a un serveur externe quel qu'il soit :
exemple : ta machine locale (192.168.0.1) effectue une requete vers le serveur ftp de free.fr et pour cela elle utilise un port source (en tcp) dynamique assigné au hasard par ta machine(par exemple 32112) et un port destination égal a 21 (ftp)
le paquet passe par le routeur NAT, celui ci va associer l'adresse locale 192.168.0.1 au port source 32112, ainsi quand le serveur ftp de free va répondre a te requete, il indiquera l'adresse IP de ta livebox mais avec un port destination égal a 32112, et la livebox saura que le port 32112 correspond a la précedente requete de 192.168.0.1 ainsi il transmettra a la bonne machine
_ quand quelqu'un de l'exterieur initie la requete, alors tu es un véritable serveur ! tes clients s'adresseront a toi depuis Internet en utilisant les ports destination qu'on utilise habituellement ( http: 80, ftp : 21, etc)
C'est donc a toi t'indiquer quel service (quel port bien connu) est associé a quelle serveur (adresse de tes machines)...
_ quand c'est toi qui effectu une requete, donc tu t'adresse a un serveur externe quel qu'il soit :
exemple : ta machine locale (192.168.0.1) effectue une requete vers le serveur ftp de free.fr et pour cela elle utilise un port source (en tcp) dynamique assigné au hasard par ta machine(par exemple 32112) et un port destination égal a 21 (ftp)
le paquet passe par le routeur NAT, celui ci va associer l'adresse locale 192.168.0.1 au port source 32112, ainsi quand le serveur ftp de free va répondre a te requete, il indiquera l'adresse IP de ta livebox mais avec un port destination égal a 32112, et la livebox saura que le port 32112 correspond a la précedente requete de 192.168.0.1 ainsi il transmettra a la bonne machine
_ quand quelqu'un de l'exterieur initie la requete, alors tu es un véritable serveur ! tes clients s'adresseront a toi depuis Internet en utilisant les ports destination qu'on utilise habituellement ( http: 80, ftp : 21, etc)
C'est donc a toi t'indiquer quel service (quel port bien connu) est associé a quelle serveur (adresse de tes machines)...
Bonjour,
La gestion des liens visités est interne au navigateur, elle n'a strictement rien à voir avec le modem. Si tu as deux navigateurs sur la même machine, tu constateras qu'en visitant toto.com avec le premier navigateur, le lien vers toto.com n'apparaitra même pas pourpre pour le second navigateur.
La seconde question jesépa :)
La gestion des liens visités est interne au navigateur, elle n'a strictement rien à voir avec le modem. Si tu as deux navigateurs sur la même machine, tu constateras qu'en visitant toto.com avec le premier navigateur, le lien vers toto.com n'apparaitra même pas pourpre pour le second navigateur.
La seconde question jesépa :)
Ok merci de ta réponse rapide ! En effet j'ai testé et ça concerne seulement le navigateur !
Mais si deux ordis A et B surfent en même temps, comment la livebox sait-elle à quelle machine redistribuer les paquets ?
Mais si deux ordis A et B surfent en même temps, comment la livebox sait-elle à quelle machine redistribuer les paquets ?
Ne mélange pas transition de paquets avec surf sur Internet. Une simple réseau sans Internet et ... des paquets transiteront également entre les machines :)
D'autre part, la Livebox, comme tout routeur normalement constitué, travaille sur les couches 1 2 et 3 du modèle OSI. La couche 3 étant l'adressage des paquets, c'est ce qui permet d'envoyer un paquet à telle ou telle machine. Mais si on envoie un même paquet à toutes les machines, même celles qui ne sont pas concernées, ça marche aussi, c'est ce que font les hubs qui travaillent sur la première couche uniquement.
Ca touche à la fin de ma connaissance dans ce domaine, j'espère que je me goure pas ;-)
D'autre part, la Livebox, comme tout routeur normalement constitué, travaille sur les couches 1 2 et 3 du modèle OSI. La couche 3 étant l'adressage des paquets, c'est ce qui permet d'envoyer un paquet à telle ou telle machine. Mais si on envoie un même paquet à toutes les machines, même celles qui ne sont pas concernées, ça marche aussi, c'est ce que font les hubs qui travaillent sur la première couche uniquement.
Ca touche à la fin de ma connaissance dans ce domaine, j'espère que je me goure pas ;-)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ahhhhh c'est donc ça !
Donc quel que soit le service (ftp, http, ...), la machine extérieure à laquelle on s'adresse émettra des paquets du type : ip dest : routeur, port dest : port source de la machine du réseau. Ca c'est pour le cas Réponse à une requête émise par l'ordi A ?
Dans le cas où c'est l'extérieur qui initie une requête c'est là qu'on utilise le port forwarding parce que le port dest est le port conventionnel ?
Je confondais en fait les deux cas ....
EDIT : oui même remarque que Nakos, que ce passe-t-il si le port source est le même pour deux postes différents ?
Donc quel que soit le service (ftp, http, ...), la machine extérieure à laquelle on s'adresse émettra des paquets du type : ip dest : routeur, port dest : port source de la machine du réseau. Ca c'est pour le cas Réponse à une requête émise par l'ordi A ?
Dans le cas où c'est l'extérieur qui initie une requête c'est là qu'on utilise le port forwarding parce que le port dest est le port conventionnel ?
Je confondais en fait les deux cas ....
EDIT : oui même remarque que Nakos, que ce passe-t-il si le port source est le même pour deux postes différents ?
Je me suis trompé:
Le routeur utilise ses propres ports sources pour transmettre les requetes... comme ca meme si deux machines utilise le meme port source (ce qui est rare tout de meme), aucun probleme pour le routeur qui utilisera deux ports bien distincts associé chacun au couple (ip,port) de l'emeteur.
Le routeur utilise ses propres ports sources pour transmettre les requetes... comme ca meme si deux machines utilise le meme port source (ce qui est rare tout de meme), aucun probleme pour le routeur qui utilisera deux ports bien distincts associé chacun au couple (ip,port) de l'emeteur.
C'est relativement simple, le routeur initie une connexion vers le site distant (toto.fr par exemple) et remplit donc sa table avec un nouveau port source et l'adresse destination.
Ok, ok merci pour vos réponses :)
Donc quand on dit http port 80, c'est uniquement le port de destination. Le port source est aléatoire. Le routeur change le port source et envoie la requête. Il faut donc qu'il ait une table de correspondance entre ces deux ports sources pour pouvoir ensuite restituer les paquets à l'ordi.
Donc quand on dit http port 80, c'est uniquement le port de destination. Le port source est aléatoire. Le routeur change le port source et envoie la requête. Il faut donc qu'il ait une table de correspondance entre ces deux ports sources pour pouvoir ensuite restituer les paquets à l'ordi.
Le port source qu'utilise le routeur pour relayer la requete n'est pas spécialement identique a celui utilisé par l'hote de départ, mais cela importe peut car le routeur lui, fait la correspondance entre le port qu'a utilisé l'hote source et celui que lui meme a utilisé dans la requete vers le serveur. Ainsi il arrive a associer la réponse du serveur a un couple (ip,port) a qui il transmettra les données.
Très bien. J'espère que Adrael en sait beaucoup plus maintenant.