Comment le routeur sait-il à quel appareil envoyer des paquets? [dupliquer]

15

ma question ne concerne pas comment il se déplace sur Internet, mais comment il se déplace via le routeur vers un certain appareil. Tous les appareils connectés à un routeur dans un réseau domestique ont la même IP externe. Supposons que le périphérique A charge une page et que les paquets sont envoyés depuis une source externe vers le routeur car les paquets connaissent l'IP externe du périphérique A et ils peuvent accéder au routeur. Mais maintenant, comment se rend-il au périphérique A? Comment le routeur sait-il l'envoyer vers le périphérique A au lieu du périphérique B?

Je pense que cela implique le NAT, mais je cherche juste une explication logique de ce que le NAT fait pour accomplir cela.


la source
Je ne peux pas vous donner de réponse très précise, mais le routeur garde une trace de l'endroit où va une demande et qui l'a envoyée. Lorsque la source externe répond, le routeur vérifie simplement quel périphérique a tenté de contacter la source externe initialement et transmet la réponse à ce périphérique. Si vous avez besoin de plus d'informations, consultez NAT.
Jack Humphries
Cette question appartient à
Superuser.com

Réponses:

11

Lorsque vous établissez une connexion vers un site externe, le routeur utilise à chaque fois un numéro de port source différent ... il utilise ensuite ce numéro de port source (sur lequel les données retournent) comme clé pour rechercher sur quelle machine votre réseau interne d'où provient la demande. C'est ce qu'on appelle la traduction d'adresses PORT (par opposition à la traduction d'adresses réseau, qui consiste à disposer de plusieurs adresses réseau pour votre routeur).

Michael Bray
la source
1
cela expliquerait des choses comme les connexions TCP, mais certaines applications sont sans connexion. Qu'en est-il des paquets UDP? Que se passe-t-il si vous hébergez un serveur sur 1 appareil, même s'il utilise TCP pour la connexion, il ne pourra pas initialiser une connexion sans que le routeur sache sur quel appareil se trouve le serveur.
1
Pour les connexions UDP, vous devez généralement prédéfinir un port sur votre routeur qui peut être utilisé pour router vers un périphérique spécifique. Il s'agit de la fonction de "redirection de port" des routeurs, qui peut être utilisée soit pour les paquets UDP entrants (soit en réponse à un message sortant ou à un nouveau paquet entrant) ainsi que pour les paquets TCP entrants (par exemple, ceux initiés par un client distant à la place de votre propre PC.)
Michael Bray
1

Normalement, tous les appareils du réseau domestique ont une adresse interne différente (adresse privée, toujours 192.168.0.1 ~ 192.168.0.255).

Lorsqu'un paquet est envoyé à partir du réseau domestique (disons périphérique A: 192.168.0.123), lorsqu'il passe par le routeur, le routeur traduira l'adresse privée en adresse externe du routeur (supposons qu'il s'agit du 140.191.2.5), et le routeur l'enregistrera également cartographie dans son NAT.

Lorsque la réponse est de retour, le routeur mappant le NAT et trouve la source d'origine est le périphérique A.

de sorte que le dispositif A finit par recevoir le paquet.

Ceci est juste un concept, pour plus de détails, veuillez consulter wiki: NAT.

NCola.L
la source