Comment arrêter de calculer les masques de sous-réseau dans sa tête et commencer à vivre
Chaque équipe a cette personne qui répond « combien d'adresses dans /26 ? » à la vitesse d'une calculatrice et vous dit instantanément si 10.0.13.37 fait partie de la plage 10.0.12.0/22. Ce n'est pas moi. Chaque fois que j'ai besoin de travailler avec un réseau, j'ouvre Python et je commence à cliquer sur les bits. Jusqu'à ce que je tombe sur cidr.xyz.
Qu'est-ce que c'est exactement
cidr.xyz est une calculatrice CIDR et un visualiseur de sous-réseau créé par un développeur connu sous le nom de yuvadm. Le projet existe depuis un moment : le dépôt a été créé en décembre 2015, et depuis, il a accumulé environ 850 étoiles et 238 forks. Le service lui-même est hébergé sur cidr.xyz et fonctionne entièrement dans le navigateur.
L'idée est rafraîchissante de simplicité : vous entrez une adresse IP et un masque (soit en notation CIDR, soit au format classique 255.255.255.0), et la page affiche instantanément tout ce que vous pouvez extraire de cette paire. La première ligne après la saisie est un suffixe CIDR prêt à l'emploi que vous pouvez copier directement dans votre configuration.
Ce que montre la calculatrice
Permettez-moi de parcourir un exemple. Nous saisissons 10.0.13.37 avec le masque /22. La sortie nous donne :
- Adresse réseau et adresse de diffusion
- Première et dernière adresse d'hôte utilisable
- Nombre d'hôtes dans le sous-réseau
- Adresse et masque en binaire, bit par bit
- Masque générique (ce
0.0.3.255sans lequel vous ne pouvez pas écrire d'ACL) - Format « plage de tout » — la chaîne familière pour les configs pfSense ou Cisco
- Masque binaire sous forme décimale
Cela ressemble à la description de n'importe quel ipcalc, mais il y a une chose qui distingue cidr.xyz d'une centaines d'outils similaires — la visualisation. Sous les champs de saisie, une grille de bits est dessinée : 32 bits d'adresse et 32 bits de masque, séparés en octets. Les bits responsables du réseau et de l'hôte sont mis en évidence par différentes couleurs.
Et c'est à ce moment que la révélation frappe. Avant, je savais que /22 signifie 22 bits réseau, mais je gardais cela dans ma tête comme une connaissance abstraite. Sur cidr.xyz, vous pouvez voir la frontière entre les parties réseau et hôte sauter lorsque vous faites glisser le masque de /24 à /21. Vous comprenez immédiatement pourquoi 10.0.13.37/22 signifie le réseau 10.0.12.0 — le troisième octet 13 en binaire est 00001101, et avec un masque /22, les six premiers bits du troisième octet sont gelés par le réseau, les six bits restants sont attribués aux hôtes. Aucun tableau ne vous procure ce sentiment de « ah, c'est donc ça ».
À qui c'est destiné
En premier lieu, ceux qui se préparent à des entretiens ou à des certifications. Les questions sur le VLSM et la subdivision des réseaux apparaissent dans le CCNA, et la compréhension de l'arithmétique des bits y est vraiment nécessaire.
Deuxièmement, les admins et les SRE qui travaillent avec des configs. Vérifier rapidement que le masque générique pour une ACL est calculé correctement, que la plage 172.16.0.0/12 se termine effectivement à 172.31.255.255 — c'est une tâche de dix secondes.
Troisièmement, tous les autres qui rencontrent le réseau une fois par mois et une fois par mois oublient comment ça marche. Je suis dans cette catégorie.
Sous le capot
Le projet est écrit en TypeScript, utilisant React et Next.js. Le README est minimal à l'extrême — juste deux sections — mais c'est suffisant pour exécuter une copie locale :
npm install
npm run dev
Après cela, l'outil est disponible à localhost:3000, et vous pouvez explorer le code ou le personnaliser vous-même. Par exemple, je pensais sérieusement à ajouter le calcul du nombre de sous-réseaux lors d'une division par un nombre donné. C'est ce cas rare où la base de code est si compacte que vous pouvez réellement soumettre une pull request en une soirée.
Le déploiement est automatisé : la branche master est déployée via Cloudflare Workers. Licence MIT, donc si vous voulez, vous pouvez le forker ou l'intégrer quelque part.
Un peu de critique
Il n'y a pas de barril de miel sans une cuillerée de goudron. Les fonctionnalités sont adaptées à IPv4 — la calculatrice n'accepte pas les adresses IPv6. Si vous vivez dans le monde de fd00::/8, cet outil ne vous sera pas utile. La visualisation binaire devient aussi parfois écrasante : d'un coup d'œil à la table de bits clignotante, il est facile de se retrouver au mauvais endroit. Et oui, 850 étoiles ce n'est pas un million — le projet est connu dans des cercles restreints, mais pas oublié : le dernier commit sur la branche master était récent, le dépôt est vivant.
Est-ce que ça vaut le coup d'essayer
Absolument oui, si vous : vous préparez pour un entretien réseau ; faites des configs pour des équipements réseau ; voulez enfin comprendre visuellement comment un masque de sous-réseau découpe l'espace d'adressage. Ajoutez simplement cidr.xyz à vos favoris à côté du traducteur — ça vous sera utile.
Et si vous voulez quelque chose de plus, forkez le dépôt et ajoutez le support IPv6. Vu la compacité du code, c'est une tâche de week-end parfaitement réalisable.
Projets similaires