Je ne comprends vraiment pas comment je peux me connecter à un ordinateur spécifique de mon réseau sur un ordinateur d'un autre réseau via Internet. Par exemple, j'ai un cluster beowulf qui tourne en permanence chez moi. Je l'utilise pour des calculs difficiles comme le bruteforcing de mots de passe à partir d'une liste de mots. Supposons maintenant que je sois sur mon ordinateur portable, mais ailleurs, sur le réseau local de quelqu'un d'autre. Je connais l'IP externe du noeud maître du cluster beowulf, et c'est le seul noeud connecté à l'Internet parmi tous les noeuds. Cependant, lorsque j'obtiens l'IP externe de mon ordinateur de bureau sur le même réseau local que le cluster, j'obtiens la même IP externe. D'après ce que j'ai compris, l'IP externe sera la même pour tous les périphériques sur ce réseau local. L'IP externe du nœud maître du cluster beowulf, de mon bureau et de ma smart TV (par exemple) devrait être la même puisqu'ils passent tous par le même modem, n'est-ce pas ? Et le masque de sous-réseau détermine de quel nœud du réseau local (l'IP externe partagée entre tous les appareils) les données proviennent, n'est-ce pas ? Si c'est le cas, comment pourrais-je me connecter au nœud maître de la grappe via SSH pour lui envoyer des informations sur lesquelles travailler si mon bureau a également le port SSH 22 ouvert ? Si deux machines ou plus se trouvent sur un réseau local, que ces machines utilisent toutes SSH et que ce réseau local ne peut être référencé que par l'adresse IP externe partagée par les deux machines, comment puis-je spécifier à quelle machine de ce réseau local je veux me connecter ?
Réponses
Trop de publicités?Masques de sous-réseau
Le masque de sous-réseau ne sert qu'à regrouper les ordinateurs d'un réseau en sous-réseaux.
L'adresse IPv4 contient quatre octets, soit 32 bits au total. Supposons que vous ayez quelques ordinateurs sur votre réseau local et que ces IP et masques de sous-réseau leur soient attribués :
- IP
192.168.0.1
, masque255.255.255.0
- IP
192.168.0.6
, masque255.255.255.0
- IP
192.168.1.1
, masque255.255.255.248
- IP
192.168.1.6
, masque255.255.255.248
- IP
192.168.1.12
, masque255.255.255.248
Pour déterminer quels ordinateurs appartiennent à quel sous-réseau, nous devons appliquer le masque aux adresses IP :
-
Convertir les IP et les masques en binaire
- IP
11000000 10101000 00000000 00000001
, masque11111111 11111111 11111111 00000000
- IP
11000000 10101000 00000000 00000110
, masque11111111 11111111 11111111 00000000
- IP
11000000 10101000 00000001 00000001
, masque11111111 11111111 11111111 11111000
- IP
11000000 10101000 00000001 00000110
, masque11111111 11111111 11111111 11111000
- IP
11000000 10101000 00000001 00001100
, masque11111111 11111111 11111111 11111000
- IP
-
Effectuer une opération logique "et", c'est-à-dire copier
1
bits lorsque l'IP et le masque ont tous deux1
et remplir les trous avec0
s1. 11000000 10101000 00000000 00000001 & 11111111 11111111 11111111 00000000 ------------------------------------- = 11000000 10101000 00000000 00000000 2. 11000000 10101000 00000000 00000110 & 11111111 11111111 11111111 00000000 ------------------------------------- = 11000000 10101000 00000000 00000000 3. 11000000 10101000 00000001 00000001 & 11111111 11111111 11111111 11111000 ------------------------------------- = 11000000 10101000 00000001 00000000 4. 11000000 10101000 00000001 00000110 & 11111111 11111111 11111111 11111000 ------------------------------------- = 11000000 10101000 00000001 00000000 5. 11000000 10101000 00000001 00001100 & 11111111 11111111 11111111 11111000 ------------------------------------- = 11000000 10101000 00000001 00001000
-
Convertir les résultats en décimales
192.168.0.0
192.168.0.0
192.168.1.0
192.168.1.0
192.168.1.8
-
Il s'agit des adresses de sous-réseau de nos ordinateurs. Si des ordinateurs ont des adresses de sous-réseau identiques, ils appartiennent au même sous-réseau.
- Les ordinateurs 1 et 2 appartiennent à un même sous-réseau
- Les ordinateurs 3 et 4 appartiennent à un autre sous-réseau.
- L'ordinateur 5 appartient à un troisième sous-réseau
Les sous-réseaux n'ont d'importance qu'à l'intérieur de votre réseau local, c'est-à-dire les ordinateurs connectés à un réseau local. interrupteur . Le commutateur est ensuite connecté à un routeur qui achemine les paquets réseau entre le commutateur et un modem. Vous disposez probablement de ces trois éléments dans un seul appareil.
Commutateur, routeur et modem
-
Commutateur - permet de connecter plus de deux ordinateurs ensemble. Vous ne pouvez pas simplement souder plusieurs câbles réseau et les connecter à plusieurs ordinateurs, vous devez utiliser un commutateur.
-
Modem - assure la conversion bidirectionnelle entre différentes normes de réseau. Votre fournisseur d'accès à Internet utilise des normes de réseau différentes de celles des réseaux locaux courants. Vous avez donc besoin d'un modem qui traduira ses paquets de réseau dans votre format et vos paquets dans le leur.
-
Routeur - routeurs itinéraire paquets entre deux réseaux. Vous ne pouvez pas simplement connecter deux commutateurs de réseaux différents l'un à l'autre, vous avez besoin d'un routeur entre eux. Le routeur a une adresse IP dans chaque réseau auquel il est connecté.
Votre réseau ressemble un peu à ceci :
+-----------------------------------------+
||
PC1+---------+|
|||
|+--------++--------++-------+|
PC2+-------+Switch+---+Router+---+Modem+-------+ISP
|+--------++--------++-------+|
|||
PC3+---------+|
||
+-----------------------------------------+
Comment fonctionne le routage ?
Les ordinateurs de gauche ont trois adresses IP, disons :
- 192.168.0.1
- 192.168.0.2
- 192.168.0.3
Il y a également l'adresse de votre routeur côté LAN.
Mais sur le côté droit, vous n'avez qu'une seule adresse IP, appelée "IP publique". Il s'agit de l'adresse Internet du routeur. Lorsque quelqu'un de l'extérieur veut parler à un ordinateur de votre réseau, comment peut-il spécifier à quel ordinateur il veut s'adresser ?
La réponse est : il ne peut pas. Vous ne pouvez pas commencer à parler à un ordinateur de votre réseau depuis l'extérieur. Les internautes ne peuvent communiquer qu'avec votre routeur.
Ce type de réseau serait toutefois assez inutile, et il semble que l'on puisse télécharger des données sur l'internet. Comment cela fonctionne-t-il ? Cela fonctionne parce que vous avez initié la connexion. Lorsqu'un ordinateur du réseau tente de communiquer avec le monde extérieur, le routeur affecte l'un de ses ports Internet à un port de cet ordinateur. Si quelqu'un répond à ce port, le routeur sait où il doit transmettre ces paquets. Cette technique s'appelle la traduction d'adresses de réseau (NAT).
Comment se connecter aux ordinateurs de votre réseau depuis l'extérieur ?
Vous ne pouvez pas le faire sans configurer correctement votre routeur, car c'est l'ordinateur à l'intérieur de votre réseau qui doit initier la connexion. Cela ne fonctionnerait que si l'ordinateur à l'autre bout a une IP publique, ce qui est peu probable. Le réseau ressemble probablement à ceci :
+----------------+ +-----------------------+
| | | |
| Your cluster | | Other network |
| | | |
| PC1 +---+ | | +---+ Other PC |
| | | +----------------+ | | |
| | | | | | | The computer |
| PC2 +-------------+ THE INTERNET +-------------+ you're using |
| | | | | | | to connect |
| | | +----------------+ | | |
| PC3 +---+ | | +---+ Other PC |
| | | |
+----------------+ +-----------------------+
Ces deux réseaux ont des routeurs à leur frontière et ces deux routeurs utilisent le NAT, de sorte que l'établissement d'une connexion en amont ne fonctionnera pas.
Comment se connecter à votre cluster ?
Vous devez configurer transfert de port dans votre routeur.
La redirection de port lie de manière permanente l'un des ports Internet du routeur à un port de l'un de vos ordinateurs.
Par exemple, vous pouvez transférer le port 5432 de votre routeur vers le port 22 (port SSH par défaut) du PC1 de votre cluster. Vous pouvez alors vous connecter en SSH à votre IP publique sur le port 5432 et vous connecterez en fait à PC1 sur le port 22.
Si vous souhaitez vous connecter à un autre PC de votre cluster, vous avez deux possibilités :
-
Transférer un autre port vers une autre machine
-
Utiliser PC1. Le PC1 est connecté à votre réseau local et peut communiquer avec d'autres ordinateurs du réseau local sans routage ni NAT. Vous pouvez vous connecter en SSH à l'ordinateur PC1 via le port transféré, puis vous connecter en SSH de l'ordinateur PC1 à l'ordinateur PC2. Cette méthode est moins efficace que la connexion directe, mais elle ne nécessite aucune configuration supplémentaire.
Je pense que vous devriez vous renseigner sur le fonctionnement du sous-réseau IPv4, car vous n'avez pas le bon bout du bâton, et ensuite vous renseigner sur le NAT-PMP. Cependant, en résumé :
Vous avez deux réseaux, l'internet et votre réseau. Ils sont complètement séparés, à l'exception du routeur NAT qui se trouve au milieu. Lorsque vous souhaitez vous connecter au monde extérieur (c'est-à-dire à un sous-réseau autre que le vôtre), votre ordinateur contacte la "passerelle" ou "route par défaut". Il s'agit de votre routeur NAT. Le routeur transmet alors le trafic entre votre ordinateur et l'internet en utilisant un ensemble de règles internes et temporaires décrivant la connexion.
Pour vous connecter à votre réseau depuis l'extérieur, vous devez mettre en place des règles de mappage de ports NAT. Votre adresse IP externe n'est rien d'autre qu'une adresse IP identifiant le port WAN de votre routeur, sa connexion à l'internet, que tous vos ordinateurs partagent à l'aide de la NAT. À l'aide de l'interface de votre routeur, vous devez définir des règles permettant de rediriger le trafic vers certains ports de l'interface WAN de votre routeur vers des services de votre réseau interne.
Par exemple, vous avez trois ordinateurs - 192.168.0.100, 192.168.0.101, 192.168.0.102, sous-réseau masqué 255.255.255.0. Ces trois ordinateurs utilisent tous SSH sur le port 22. Votre adresse IP externe est 123.4.5.6.
Pour accéder aux trois serveurs SSH distincts, vous devez associer trois ports externes aux trois combinaisons d'adresses IP et de ports internes.
123.4.5.6:22222 -> 192.168.0.100:22
123.4.5.6:22223 -> 192.168.0.101:22
123.4.5.6:22224 -> 192.168.0.102:22
Cette fonctionnalité est intégrée à votre routeur NAT - vous devriez pouvoir trouver des instructions spécifiques pour configurer cette fonctionnalité pour votre modèle de routeur. Je vous recommande toutefois de vous documenter d'abord !
HTH !