Les sous-réseaux IP existent pour permettre aux routeurs de choisir les destinations appropriées pour les paquets. Vous pouvez utiliser les sous-réseaux IP pour diviser des réseaux plus importants pour des raisons logiques (pare-feu, etc.) ou physiques (domaines de diffusion plus petits, etc.).
En clair, les routeurs IP utilisent vos sous-réseaux IP pour prendre des décisions de routage. Comprenez comment ces décisions fonctionnent, et vous pourrez comprendre comment planifier les sous-réseaux IP.
Compter jusqu'à 1
Si vous maîtrisez déjà la notation binaire (base 2), vous pouvez sauter cette section.
Pour ceux d'entre vous qui restent : Honte à vous de ne pas maîtriser la notation binaire !
Oui, c'est peut-être un peu dur. Il est vraiment, vraiment facile d'apprendre à compter en binaire, et d'apprendre des raccourcis pour convertir le binaire en décimal et inversement. Vous devriez vraiment savoir comment le faire.
Compter en binaire est très simple car il suffit de savoir compter jusqu'à 1 !
Pensez au "compteur kilométrique" d'une voiture, sauf que, contrairement à un compteur kilométrique traditionnel, chaque chiffre ne peut compter que de 0 à 1. Lorsque la voiture sort de l'usine, le compteur kilométrique indique "00000000".
Lorsque vous avez parcouru votre premier kilomètre, l'odomètre indique "00000001". Jusqu'ici, tout va bien.
Lorsque vous avez parcouru votre deuxième kilomètre, le premier chiffre de l'odomètre repasse à "0" (puisque sa valeur maximale est "1") et le deuxième chiffre de l'odomètre repasse à "1", ce qui donne "00000010". Cela ressemble au nombre 10 en notation décimale, mais c'est en fait 2 (le nombre de kilomètres parcourus par la voiture jusqu'à présent) en notation binaire.
Lorsque vous avez parcouru le troisième kilomètre, l'odomètre indique "00000011", puisque le premier chiffre de l'odomètre tourne à nouveau. Le nombre "11", en notation binaire, est identique au nombre décimal 3.
Enfin, après avoir parcouru le quatrième kilomètre, les deux chiffres (qui indiquaient "1" à la fin du troisième kilomètre) reviennent à la position zéro, et le troisième chiffre remonte à la position "1", ce qui donne "00000100". C'est la représentation binaire du nombre décimal 4.
Vous pouvez mémoriser tout ça si vous voulez, mais vous n'avez besoin que de comprendre comment le petit odomètre "roule" au fur et à mesure que le nombre qu'il compte augmente. C'est exactement le même fonctionnement que celui d'un odomètre décimal traditionnel, sauf que chaque chiffre ne peut être que "0" ou "1" sur notre "odomètre binaire" fictif.
Pour convertir un nombre décimal en binaire, vous pouvez faire avancer le compteur kilométrique, tic-tac par tic-tac, en comptant à haute voix jusqu'à ce que vous l'ayez fait tourner un nombre de fois égal au nombre décimal que vous voulez convertir en binaire. Ce qui est affiché sur l'odomètre après tout ce comptage et ce roulement serait la représentation binaire du nombre décimal auquel vous avez abouti.
Puisque vous comprenez comment le compteur kilométrique avance, vous comprendrez également comment il recule. Pour reconvertir en décimal un nombre binaire affiché sur le compteur kilométrique, vous pouvez faire reculer le compteur kilométrique d'un cran à la fois, en comptant à voix haute jusqu'à ce que le compteur affiche "00000000". Une fois le comptage et le recul terminés, le dernier chiffre que vous prononcerez à haute voix sera la représentation décimale du nombre binaire de départ du compteur.
La conversion de valeurs entre le binaire et le décimal de cette manière serait la suivante très fastidieux. Vous pourriez le faire, mais ce ne serait pas très efficace. Il est plus facile d'apprendre un petit algorithme pour le faire plus rapidement.
Une petite parenthèse : Chaque chiffre d'un nombre binaire est appelé un "bit". C'est le "b" de "binaire" et le "it" de "digit". Un bit est un b nary dig il .
La conversion d'un nombre binaire, comme par exemple "1101011", en décimal est un processus simple avec un petit algorithme très pratique.
Commencez par compter le nombre de bits dans le nombre binaire. Dans ce cas, il y en a 7. Faites 7 divisions sur une feuille de papier (dans votre esprit, dans un fichier texte, etc.) et commencez à les remplir de droite à gauche. Dans la case la plus à droite, entrez le chiffre "1", car nous commencerons toujours par "1". Dans l'emplacement suivant à gauche, entrez le double de la valeur de l'emplacement de droite (donc, "2" dans l'emplacement suivant, "4" dans l'emplacement suivant) et continuez jusqu'à ce que tous les emplacements soient remplis. (Vous finirez par mémoriser ces chiffres, qui sont des puissances de 2, à force de le faire. Je me débrouille bien jusqu'à 131 072 dans ma tête, mais j'ai généralement besoin d'une calculatrice ou de papier après cela).
Ainsi, vous devriez avoir les éléments suivants sur votre papier dans vos petites fentes.
64 | 32 | 16 | 8 | 4 | 2 | 1 |
Transcrivez les bits du nombre binaire sous les fentes, comme ceci :
64 | 32 | 16 | 8 | 4 | 2 | 1 |
1 1 0 1 0 1 1
Maintenant, ajoutez quelques symboles et calculez la réponse au problème :
64 | 32 | 16 | 8 | 4 | 2 | 1 |
x 1 x 1 x 0 x 1 x 0 x 1 x 1
--- --- --- --- --- --- ---
+ + + + + + =
En faisant tous les calculs, vous devriez arriver à :
64 | 32 | 16 | 8 | 4 | 2 | 1 |
x 1 x 1 x 0 x 1 x 0 x 1 x 1
--- --- --- --- --- --- ---
64 + 32 + 0 + 8 + 0 + 2 + 1 = 107
C'est ça. "1101011" en décimal est 107. C'est juste des étapes simples et des maths faciles.
La conversion du décimal en binaire est tout aussi facile et repose sur le même algorithme de base, exécuté en sens inverse.
Disons que nous voulons convertir le nombre 218 en binaire. En commençant à droite d'une feuille de papier, écrivez le nombre "1". Vers la gauche, doublez cette valeur (donc "2") et continuez à vous déplacer vers la gauche de la feuille en doublant la dernière valeur. Si le nombre que vous êtes sur le point d'écrire est supérieur au nombre converti, arrêtez d'écrire. Sinon, continuez à doubler le nombre précédent et à écrire. (Convertir un grand nombre, comme 34 157 216 092, en binaire en utilisant cet algorithme peut être un peu fastidieux mais c'est certainement possible).
Donc, vous devriez avoir sur votre papier :
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Vous avez arrêté d'écrire les nombres à 128 parce que doubler 128, ce qui donnerait 256, serait plus grand que le nombre à convertir (218).
En commençant par le nombre le plus à gauche, écrivez "218" au-dessus du nombre (128) et demandez-vous : "218 est-il supérieur ou égal à 128 ?" Si la réponse est oui, rayez un "1" sous "128". Au-dessus de "64", écrivez le résultat de 218 moins 128 (90).
En regardant "64", demandez-vous : "Est-ce que 90 est plus grand ou égal à 64 ?" C'est le cas, donc vous écrivez un "1" sous "64", puis vous soustrayez 64 de 90 et vous écrivez le résultat au-dessus de "32" (26).
Mais lorsque vous arrivez à "32", vous constatez que 32 n'est pas supérieur ou égal à 26. Dans ce cas, écrivez un "0" sous "32", copiez le nombre (26) de au-dessus de "32" à au-dessus de "16", puis continuez à vous poser la même question avec le reste des nombres.
Quand vous aurez fini, vous devriez avoir :
218 90 26 26 10 2 2 0
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
1 1 0 1 1 0 1 0
Les chiffres en haut de la page ne sont que des notes utilisées dans les calculs et ne signifient pas grand-chose pour nous. En bas, cependant, vous voyez un nombre binaire "11011010". Bien sûr, 218, converti en binaire, est "11011010".
En suivant ces procédures très simples, vous pouvez convertir des données binaires en décimales et inversement, sans calculatrice. Les mathématiques sont très simples et les règles peuvent être mémorisées avec un peu de pratique.
Fractionnement des adresses
Pensez au routage IP comme à la livraison de pizzas.
Lorsqu'on vous demande de livrer une pizza au "123 Main Street", il est très clair pour vous, en tant qu'humain, que vous voulez vous rendre au bâtiment numéroté "123" dans la rue appelée "Main Street". Il est facile de savoir que vous devez vous rendre dans le bloc 100 de Main Street, car le numéro du bâtiment se situe entre 100 et 199 et la plupart des blocs urbains sont numérotés en centaines. Vous "savez" simplement comment diviser l'adresse.
Les routeurs livrent des paquets, pas des pizzas. Leur travail est le même que celui d'un conducteur de pizza : Amener la cargaison (les paquets) aussi près que possible de la destination. Un routeur est connecté à deux sous-réseaux IP ou plus (pour être utile). Un routeur doit examiner les adresses IP de destination des paquets et décomposer ces adresses de destination en leurs composants "nom de rue" et "numéro de bâtiment", tout comme le livreur de pizza, afin de prendre des décisions concernant la livraison.
Chaque ordinateur (ou "hôte") d'un réseau IP est configuré avec une adresse IP et un masque de sous-réseau uniques. Cette adresse IP peut être divisée en un composant "numéro de bâtiment" (comme "123" dans l'exemple ci-dessus) appelé "ID hôte" et un composant "nom de rue" (comme "Rue Principale" dans l'exemple ci-dessus) appelé "ID réseau". Pour nos yeux humains, il est facile de voir où se trouvent le numéro de bâtiment et le nom de la rue dans "123 Main Street", mais il est plus difficile de voir cette division dans "10.13.216.41 avec un masque de sous-réseau de 255.255.192.0".
Les routeurs IP "savent simplement" comment décomposer les adresses IP en ces éléments pour prendre des décisions de routage. Comme la compréhension de l'acheminement des paquets IP repose sur la compréhension de ce processus, nous devons également savoir comment décomposer les adresses IP. Heureusement, il est assez facile d'extraire l'identifiant de l'hôte et l'identifiant du réseau d'une adresse IP et d'un masque de sous-réseau.
Commencez par écrire l'adresse IP en binaire (utilisez une calculatrice si vous n'avez pas encore appris à le faire dans votre tête, mais notez comment le faire - c'est vraiment, vraiment facile et cela impressionne le sexe opposé lors des soirées) :
10. 13. 216. 41
00001010.00001101.11011000.00101001
Écrivez également le masque de sous-réseau en binaire :
255. 255. 192. 0
11111111.11111111.11000000.00000000
En écrivant côte à côte, vous pouvez voir que le point du masque de sous-réseau où les "1" s'arrêtent "s'aligne" sur un point de l'adresse IP. C'est le point où l'ID du réseau et l'ID de l'hôte se séparent. Donc, dans ce cas :
10. 13. 216. 41
00001010.00001101.11011000.00101001 - IP address
11111111.11111111.11000000.00000000 - subnet mask
00001010.00001101.11000000.00000000 - Portion of IP address covered by 1s in subnet mask, remaining bits set to 0
00000000.00000000.00011000.00101001 - Portion of IP address covered by 0s in subnet mask, remaining bits set to 0
Les routeurs utilisent le masque de sous-réseau pour "masquer" les bits couverts par des 1 dans l'adresse IP (en remplaçant les bits qui ne sont pas "masqués" par des 0) afin d'extraire l'ID du réseau :
10. 13. 192. 0
00001010.00001101.11000000.00000000 - Network ID
De même, en utilisant le masque de sous-réseau pour "masquer" les bits couverts par des 0 dans l'adresse IP (en remplaçant les bits qui ne sont pas "masqués" par des 0), un routeur peut extraire l'ID de l'hôte :
0. 0. 24. 41
00000000.00000000.00011000.00101001 - Portion of IP address covered by 0s in subnet mask, remaining bits set to 0
Il n'est pas aussi facile pour nos yeux humains de voir la "rupture" entre l'ID du réseau et l'ID de l'hôte qu'entre le "numéro de l'immeuble" et le "nom de la rue" dans les adresses physiques lors de la livraison d'une pizza, mais l'effet final est le même.
Maintenant que vous pouvez diviser les adresses IP et les masques de sous-réseau en ID d'hôte et ID de réseau, vous pouvez router les IP comme le fait un routeur.
Plus de terminologie
Vous verrez des masques de sous-réseau écrits partout sur Internet et dans le reste de cette réponse sous la forme (IP/numéro). Cette notation est connue sous le nom de notation "Classless Inter-Domain Routing" (CIDR). "255.255.255.0" est composé de 24 bits avec des 1 au début, et il est plus rapide d'écrire cela sous la forme "/24" que sous la forme "255.255.255.0". Pour convertir un numéro CIDR (comme "/16") en un masque de sous-réseau décimal en points, il suffit d'écrire ce nombre de 1, de le diviser en groupes de 8 bits et de le convertir en décimal. (Un "/16" correspond à "255.255.0.0", par exemple).
À l'époque, les masques de sous-réseau n'étaient pas spécifiés, mais plutôt dérivés en examinant certains bits de l'adresse IP. Une adresse IP commençant par 0 - 127, par exemple, avait un masque de sous-réseau implicite de 255.0.0.0 (appelée adresse IP de "classe A").
Ces masques de sous-réseau implicites ne sont plus utilisés aujourd'hui et je ne recommande pas d'apprendre à les connaître, sauf si vous avez la malchance d'avoir affaire à un très vieil équipement ou à de vieux protocoles (comme RIPv1) qui ne supportent pas l'adressage IP sans classe. Je ne vais pas mentionner davantage ces "classes" d'adresses car elles sont inapplicables aujourd'hui et peuvent prêter à confusion.
Certains périphériques utilisent une notation appelée "masques de remplacement". Un "wildcard mask" n'est rien d'autre qu'un masque de sous-réseau avec tous les 0 là où il y aurait des 1, et les 1 là où il y aurait des 0. Le "wildcard mask" d'un /26 est :
11111111.11111111.11111111.11000000 - /26 subnet mask
00000000.00000000.00000000.00111111 - /26 "wildcard mask"
Les "masques de remplacement" sont généralement utilisés pour faire correspondre les identifiants d'hôtes dans les listes de contrôle d'accès ou les règles de pare-feu. Nous n'en parlerons pas davantage ici.
Comment fonctionne un routeur
Comme je l'ai déjà dit, les routeurs IP ont un travail similaire à celui d'un livreur de pizza, en ce sens qu'ils doivent amener leur cargaison (paquets) à destination. Lorsqu'on lui présente un paquet destiné à l'adresse 192.168.10.2, un routeur IP doit déterminer laquelle de ses interfaces réseau est la plus à même de rapprocher ce paquet de sa destination.
Disons que vous êtes un routeur IP, et que vous avez des interfaces connectées à votre numéro :
- Ethernet0 - 192.168.20.1, masque de sous-réseau /24
- Ethernet1 - 192.168.10.1, masque de sous-réseau /24
Si vous recevez un paquet à livrer avec une adresse de destination de "192.168.10.2", il est assez facile de dire (avec vos yeux humains) que le paquet doit être envoyé par l'interface Ethernet1, car l'adresse de l'interface Ethernet1 correspond à l'adresse de destination du paquet. Tous les ordinateurs connectés à l'interface Ethernet1 auront des adresses IP commençant par "192.168.10.", car l'ID réseau de l'adresse IP attribuée à votre interface Ethernet1 est "192.168.10.0".
Pour un routeur, ce processus de sélection de route se fait en construisant une table de routage et en consultant cette table chaque fois qu'un paquet doit être livré. Une table de routage contient l'ID du réseau et les noms des interfaces de destination. Vous savez déjà comment obtenir un ID de réseau à partir d'une adresse IP et d'un masque de sous-réseau, vous êtes donc sur la bonne voie pour construire une table de routage. Voici notre table de routage pour ce routeur :
- ID du réseau : 192.168.20.0 (11000000.10101000.00010100.00000000) - Masque de sous-réseau 24 bits - Interface Ethernet0
- ID du réseau : 192.168.10.0 (11000000.10101000.00001010.00000000) - Masque de sous-réseau 24 bits - Interface Ethernet1
Pour notre paquet entrant destiné à "192.168.10.2", il nous suffit de convertir l'adresse de ce paquet en binaire (comme les humains -- le routeur l'obtient en binaire sur le fil pour commencer) et de tenter de la faire correspondre à chaque adresse de notre table de routage (jusqu'au nombre de bits du masque de sous-réseau) jusqu'à ce que nous trouvions une entrée.
- Destination du paquet entrant : 11000000.10101000.00001010.00000010
En comparant ça aux entrées de notre table de routage :
11000000.10101000.00001010.00000010 - Destination address for packet
11000000.10101000.00010100.00000000 - Interface Ethernet0
!!!!!!!!.!!!!!!!!.!!!????!.xxxxxxxx - ! indicates matched digits, ? indicates no match, x indicates not checked (beyond subnet mask)
11000000.10101000.00001010.00000010 - Destination address for packet
11000000.10101000.00001010.00000000 - Interface Ethernet1, 24 bit subnet mask
!!!!!!!!.!!!!!!!!.!!!!!!!!.xxxxxxxx - ! indicates matched digits, ? indicates no match, x indicates not checked (beyond subnet mask)
L'entrée pour Ethernet0 correspond bien aux 19 premiers bits, mais ensuite elle ne correspond plus. Cela signifie qu'il ne s'agit pas de la bonne interface de destination. Vous pouvez voir que l'interface Ethernet1 correspond à 24 bits de l'adresse de destination. Ah, ha ! Le paquet est destiné à l'interface Ethernet1.
Dans un routeur réel, la table de routage est triée de telle sorte que les masques de sous-réseau les plus longs sont vérifiés en premier (c'est-à-dire les routes les plus spécifiques), et numériquement de telle sorte que dès qu'une correspondance est trouvée, le paquet peut être acheminé et aucune autre tentative de correspondance n'est nécessaire (ce qui signifie que 192.168.10.0 serait listé en premier et que 192.168.20.0 n'aurait jamais été vérifié). Ici, nous simplifions un peu les choses. Les structures de données et les algorithmes sophistiqués rendent les routeurs IP plus rapides, mais les algorithmes simples produisent les mêmes résultats.
Routes statiques
Jusqu'à présent, nous avons parlé de notre routeur hypothétique comme ayant des réseaux directement connectés à lui. Ce n'est évidemment pas ainsi que le monde fonctionne réellement. Dans l'analogie du chauffeur de pizza, il arrive que le chauffeur ne soit pas autorisé à entrer plus loin dans le bâtiment que la réception, et qu'il doive remettre la pizza à quelqu'un d'autre pour qu'elle soit livrée au destinataire final (suspendez votre incrédulité et soyez indulgent avec moi pendant que je développe mon analogie, s'il vous plaît).
Commençons par appeler notre routeur des exemples précédents "Routeur A". Vous connaissez déjà la table de routage de RouterA comme :
- ID du réseau : 192.168.20.0 (11000000.10101000.00010100.00000000) - masque de sous-réseau /24 - Interface RouterA-Ethernet0
- ID du réseau : 192.168.10.0 (11000000.10101000.00001010.00000000) - masque de sous-réseau /24 - Interface RouterA-Ethernet1
Supposons qu'il y ait un autre routeur, "Routeur B", avec les adresses IP 192.168.10.254/24 et 192.168.30.1/24 assignées à ses interfaces Ethernet0 et Ethernet1. Il possède la table de routage suivante :
- ID du réseau : 192.168.10.0 (11000000.10101000.00001010.00000000) - masque de sous-réseau /24 - Interface RouterB-Ethernet0
- ID du réseau : 192.168.30.0 (11000000.10101000.00011110.00000000) - masque de sous-réseau /24 - Interface RouterB-Ethernet1
Dans un joli dessin ASCII, le réseau ressemble à ça :
Interface Interface
Ethernet1 Ethernet1
192.168.10.1/24 192.168.30.254/24
__________ V __________ V
| | V | | V
----| ROUTER A |------- /// -------| ROUTER B |----
^ |__________| ^ |__________|
^ ^
Interface Interface
Ethernet0 Ethernet0
192.168.20.1/24 192.168.10.254/24
Vous pouvez voir que le routeur B sait comment "accéder" à un réseau, 192.168.30.0/24, que le routeur A ne connaît pas.
Supposons qu'un PC avec l'adresse IP 192.168.20.13 attaché au réseau connecté à l'interface Ethernet0 du routeur A envoie un paquet au routeur A pour livraison. Notre paquet hypothétique est destiné à l'adresse IP 192.168.30.46, qui est un périphérique attaché au réseau connecté à l'interface Ethernet1 du routeur B.
Avec la table de routage présentée ci-dessus, aucune des entrées de la table de routage du routeur A ne correspond à la destination 192.168.30.46, le routeur A renverra donc le paquet au PC émetteur avec le message "Destination network unreachable".
Pour que le routeur A soit "conscient" de l'existence du réseau 192.168.30.0/24, nous ajoutons l'entrée suivante à la table de routage du routeur A :
- ID du réseau : 192.168.30.0 (11000000.10101000.00011110.00000000) - masque de sous-réseau /24 - Accessible via 192.168.10.254
De cette façon, le routeur A a une entrée dans la table de routage qui correspond à la destination 192.168.30.46 de notre paquet d'exemple. Cette entrée de table de routage dit effectivement "Si vous recevez un paquet destiné à 192.168.30.0/24, envoyez-le à 192.168.10.254 car il sait comment le traiter". Il s'agit de l'action analogue à celle de "remettre la pizza à la réception" que j'ai mentionnée plus tôt - transmettre le paquet à quelqu'un d'autre qui sait comment le rapprocher de sa destination.
L'ajout d'une entrée dans une table de routage "à la main" est appelé "route statique".
Si le routeur B veut livrer des paquets au réseau 192.168.20.0 avec le masque de sous-réseau 255.255.255.0, il aura également besoin d'une entrée dans sa table de routage :
- ID du réseau : 192.168.20.0 (11000000.10101000.00010100.00000000) - masque de sous-réseau /24 - Accessible via : 192.168.10.1 (adresse IP du routeur A dans le réseau 192.168.10.0)
Cela créerait un chemin de livraison entre le réseau 192.168.30.0/24 et le réseau 192.168.20.0/24 à travers le réseau 192.168.10.0/24 entre ces routeurs.
Vous devez toujours vous assurer que les routeurs situés de part et d'autre d'un tel "réseau interstitiel" possèdent une entrée de table de routage pour le réseau "distant". Si le routeur B de notre exemple n'avait pas d'entrée dans la table de routage pour le réseau "distant" 192.168.20.0/24 attaché au routeur A, notre paquet hypothétique provenant du PC à 192.168.20.13 serait arrivera au périphérique de destination 192.168.30.46, mais toute réponse que 192.168.30.46 essaiera de renvoyer sera renvoyée par le routeur B comme "Réseau de destination inaccessible". Une communication unidirectionnelle n'est généralement pas souhaitable. Veillez toujours à penser au trafic circulant dans les deux des directions quand on pense à la communication dans les réseaux informatiques.
Vous pouvez tirer un grand profit des routes statiques. Les protocoles de routage dynamique tels que EIGRP, RIP, etc., ne sont rien de plus qu'un moyen pour les routeurs d'échanger des informations de routage entre eux qui pourraient, en fait, être configurées avec des routes statiques. Cependant, l'un des grands avantages de l'utilisation des protocoles de routage dynamique par rapport aux routes statiques est que les protocoles de routage dynamique peuvent dynamiquement ) et, en tant que tel, l'utilisation d'un protocole de routage dynamique peut aboutir à une configuration qui "contourne" les défaillances ou les goulets d'étranglement dans l'infrastructure du réseau. (Les protocoles de routage dynamique sont WAY en dehors de la portée de cette réponse, cependant).
Vous ne pouvez pas y arriver d'ici
Dans le cas de notre exemple de Routeur A, que se passe-t-il lorsqu'un paquet destiné à "172.16.31.92" arrive ?
En regardant la table de routage du routeur A, aucune interface de destination ou route statique ne correspond aux 24 premiers bits de 172.18.31.92 (qui est 10101100.00010010.00011111.01011100, soit dit en passant).
Comme nous le savons déjà, le routeur A renverrait le paquet à l'expéditeur via un message "Destination network unreachable".
Disons qu'il y a un autre routeur (Routeur C) situé à l'adresse "192.168.20.254". Le routeur C a une connexion à l'Internet !
Interface Interface Interface
Ethernet1 Ethernet1 Ethernet1
192.168.20.254/24 192.168.10.1/24 192.168.30.254/24
__________ V __________ V __________ V
(( heap o )) | | V | | V | | V
(( internet )) ----| ROUTER C |------- /// -------| ROUTER A |------- /// -------| ROUTER B |----
(( w00t! )) ^ |__________| ^ |__________| ^ |__________|
^ ^ ^
Interface Interface Interface
Ethernet0 Ethernet0 Ethernet0
10.35.1.1/30 192.168.20.1/24 192.168.10.254/24
Ce serait bien si le routeur A pouvait acheminer les paquets qui ne correspondent à aucune interface locale jusqu'au routeur C afin que ce dernier puisse les envoyer sur Internet. Entrez la route "passerelle par défaut".
Ajoutez une entrée à la fin de notre table de routage comme ceci :
- ID du réseau : 0.0.0.0 (00000000.00000000.00000000.00000000) - masque de sous-réseau /0 - Routeur de destination : 192.168.20.254
Lorsque nous essayons de faire correspondre "172.16.31.92" à chaque entrée de la table de routage, nous tombons sur cette nouvelle entrée. C'est un peu déroutant, au début. Nous cherchons à faire correspondre les bits zéro de l'adresse de destination avec... attendez... quoi ? Faire correspondre les bits zéro ? Donc, nous ne cherchons pas de correspondance du tout. Cette entrée de la table de routage dit, en gros, "Si vous arrivez ici, plutôt que d'abandonner la livraison, envoyez le paquet au routeur à 192.168.20.254 et laissez-le s'en occuper".
192.168.20.254 est une destination nous DO savoir comment livrer un paquet à. Lorsque nous sommes confrontés à un paquet destiné à une destination pour laquelle nous n'avons pas d'entrée spécifique dans la table de routage, cette entrée "passerelle par défaut" correspondra toujours (puisqu'elle correspond aux bits zéro de l'adresse de destination) et nous donne un endroit "de dernier recours" où nous pouvons envoyer les paquets pour qu'ils soient livrés. Vous entendrez parfois la passerelle par défaut appelée "passerelle de dernier recours".
Pour qu'une route de passerelle par défaut soit efficace, elle doit faire référence à un routeur qui est joignable à l'aide des autres entrées de la table de routage. Si vous essayez de spécifier une passerelle par défaut de 192.168.50.254 dans le routeur A, par exemple, la livraison à une telle passerelle par défaut échouera. En effet, 192.168.50.254 n'est pas une adresse vers laquelle le routeur A sait livrer des paquets en utilisant l'une des autres routes de sa table de routage, et une telle adresse serait donc inefficace comme passerelle par défaut. Ceci peut être énoncé de manière concise : La passerelle par défaut doit être définie sur une adresse déjà atteignable en utilisant une autre route dans la table de routage.
Les routeurs réels stockent généralement la passerelle par défaut en tant que dernière route dans leur table de routage, de sorte qu'elle correspond aux paquets après qu'ils n'ont pas réussi à correspondre à toutes les autres entrées de la table.
Urbanisme et routage IP
Le découpage d'un sous-réseau IP en sous-réseaux IP plus petits s'apparente à la planification urbaine. Dans l'urbanisme, le zonage est utilisé pour s'adapter aux caractéristiques naturelles du paysage (rivières, lacs, etc.), pour influencer les flux de circulation entre les différentes parties de la ville et pour séparer les différents types d'utilisation des sols (industriels, résidentiels, etc.). Le sous-réseau IP est à peu près le même.
Il y a trois raisons principales pour lesquelles on peut sous-réserver un réseau :
-
Il se peut que vous souhaitiez communiquer sur différents supports de communication différents. Si vous avez une connexion WAN T1 entre deux bâtiments, des routeurs IP peuvent être placés aux extrémités de ces connexions pour faciliter la communication sur le T1. Les réseaux à chaque extrémité (et éventuellement le réseau "interstitiel" sur le T1 lui-même) seraient affectés à des sous-réseaux IP uniques afin que les routeurs puissent décider quel trafic doit être envoyé sur la ligne T1.
-
Dans un réseau Ethernet, vous pouvez utiliser le sous-réseau pour limiter la quantité de trafic de diffusion dans une partie donnée du réseau. Les protocoles de la couche application utilisent la capacité de diffusion d'Ethernet à des fins très utiles. Cependant, à mesure que le nombre d'hôtes sur le même réseau Ethernet augmente, le pourcentage de trafic de diffusion sur le fil (ou dans l'air, dans le cas d'un réseau Ethernet sans fil) peut augmenter au point de créer des problèmes pour la distribution du trafic non diffusé. (Autrefois, le trafic de diffusion pouvait submerger l'unité centrale des hôtes en les obligeant à examiner chaque paquet de diffusion. C'est moins probable aujourd'hui). Le trafic excessif sur Ethernet commuté peut également prendre la forme d'une "inondation de trames vers des destinations inconnues". Cette situation est causée par l'incapacité d'un commutateur Ethernet à garder la trace de chaque destination sur le réseau et c'est la raison pour laquelle les réseaux Ethernet commutés ne peuvent pas s'étendre à un nombre infini d'hôtes. L'effet de l'inondation de trames vers des destinations inconnues est similaire à l'effet d'un excès de trafic de diffusion, pour les besoins du sous-réseau.
-
Vous pouvez vouloir "contrôler" les types de trafic circulant entre différents groupes d'hôtes. Vous avez peut-être des périphériques de serveur d'impression et vous souhaitez que seuls les ordinateurs de serveur de mise en file d'attente d'impression autorisés puissent leur envoyer des travaux. En limitant le trafic autorisé à circuler vers le sous-réseau des périphériques de serveur d'impression, les utilisateurs ne peuvent pas configurer leurs PC pour parler directement aux périphériques de serveur d'impression afin de contourner la comptabilité d'impression. Vous pouvez placer les périphériques de serveur d'impression dans un sous-réseau qui leur est propre et créer une règle dans le routeur ou le pare-feu attaché à ce sous-réseau pour contrôler la liste des hôtes autorisés à envoyer du trafic aux périphériques de serveur d'impression. (Les routeurs et les pare-feu peuvent généralement prendre des décisions sur la façon de livrer ou non un paquet en se basant sur les adresses de source et de destination du paquet. Les pare-feu sont généralement une sous-espèce de routeur avec une personnalité obsessionnelle. Ils peuvent être très, très préoccupés par la charge utile des paquets, alors que les routeurs ne tiennent généralement pas compte des charges utiles et se contentent de livrer les paquets).
Lors de l'aménagement d'une ville, vous pouvez planifier l'intersection des rues et utiliser des rues à sens unique ou sans issue pour influencer les flux de circulation. Vous pouvez souhaiter que la rue principale soit longue de 30 pâtés de maisons et que chaque pâté de maisons comporte jusqu'à 99 bâtiments. Il est assez facile de planifier la numérotation des rues de façon à ce que chaque pâté de maisons de la rue principale ait une série de numéros de rue augmentant de 100 pour chaque pâté de maisons. Il est très facile de savoir quel doit être le "numéro de départ" de chaque bloc suivant.
Lors de la planification de sous-réseaux IP, il s'agit de construire le bon nombre de sous-réseaux (rues) avec le bon nombre d'identifiants d'hôtes disponibles (numéros de bâtiments) et d'utiliser des routeurs pour connecter les sous-réseaux les uns aux autres (intersections). Les règles relatives aux adresses de source et de destination autorisées spécifiées dans les routeurs permettent de contrôler davantage le flux de trafic. Les pare-feu peuvent agir comme des flics obsessionnels du trafic.
Dans le cadre de cette réponse, la construction de nos sous-réseaux est notre seule préoccupation majeure. Au lieu de travailler en décimal, comme pour l'urbanisme, on travaille en binaire pour décrire les limites de chaque sous-réseau.
Suite de l'article : Comment fonctionne le sous-réseau IPv4 ?
(Oui ... nous avons atteint la taille maximale d'une réponse (30000 caractères)).
1 votes
Cette réponse en deux parties explique tout ce que vous vouliez savoir sur le calcul des adresses IPv4, et plus encore.
0 votes
C'est tout simplement trop pour être absorbé sur un écran d'ordinateur. J'ai créé un PDF imprimable pour ceux qui veulent lire ceci sur un banc sous un arbre.