Découpage en sous-réseaux

Exemples :

Découper

Le tableau est copié avec des tabulations : il se colle tel quel dans un tableur.

Transparence

Tout est calculé dans votre navigateur, par les scripts listés ci-dessous. Ce que vous saisissez ne quitte jamais cette page.

Garanti par votre navigateur
La politique de sécurité du contenu (CSP) de cette page n’autorise qu’une destination, la mesure d’audience du site (connect-src https://stats.r-no.fr, voir plus bas), et interdit tout envoi de formulaire (form-action 'none'). Vous pouvez lire cette politique en haut du code source de la page.
Mesure d’audience
Comme toutes les pages du site, celle-ci compte sa visite avec Umami, installé sur le serveur de R-no lui-même (stats.r-no.fr). Il reçoit l’adresse de la page, sans paramètres ni ancre, le site d’où vous venez (son nom de domaine seulement), votre navigateur, votre système, votre langue et la taille de votre écran, ainsi que le pays, la région et la ville déduits de votre adresse IP, qui n’est pas conservée. Il ne reçoit jamais ce que vous saisissez, ni le résultat de l’outil. Aucun cookie, rien d’enregistré dans votre navigateur ; si votre navigateur demande à ne pas être suivi (Do Not Track), rien n’est mesuré. Les données sont effacées au bout de 25 mois.
  • /commun/mesure.js : le filtre appliqué avant chaque envoi, écrit pour R-no Toolbox. 1.4 kB
    SHA-256 225eec74fd12623d82fc05ee7d222be629ce454d081c129e8d1e249ed37ee716
  • https://stats.r-no.fr/m.js : le script de suivi d’Umami, libre (MIT), servi par le serveur de mesure. Son empreinte n’est pas affichée ici : elle change à chaque version d’Umami, et vous ne pouvez pas vérifier depuis votre navigateur qu’il s’agit du code publié. Pour cette partie, il faut faire confiance à R-no.
Ce qui est conservé
Aucun cookie, et rien dans l’adresse. Ce que vous saisissez n’est pas conservé. La langue est donnée par l’adresse elle-même (/en/ ou /fr/) : rien n’est conservé pour s’en souvenir. Comme tout site web, le serveur note le téléchargement de la page et de ses fichiers dans ses journaux d’accès (adresse IP, date et heure, adresse demandée, nom du navigateur). Il ne reçoit jamais ce que vous saisissez.
Le code qui s’exécute ici
  • app.js: le calculateur de sous-réseaux, écrit pour R-no Toolbox. Non minifié, sans bibliothèque tierce. IPv4 et IPv6 suivent le même calcul, sur des entiers de 32 et 128 bits (BigInt). 26.8 kB
    SHA-256 651f8d0835ec88d1d51ab8b29cccab166ebf1033eb1f0c7753a3700a98417cb8
  • textes.js: les messages en français de l’outil, affichés par son script (le reste de la page française est écrit dans son HTML à la construction du site). Il ne fait que définir des textes, sans aucune logique. 7.8 kB
    SHA-256 e70c1d63cacb4ccac67931829f0602e5999aef0840b317e043fc98a779b00de1
  • /commun/langue.js: l’aide à la traduction, la même sur toutes les pages du site. Elle lit la langue de la page et donne à l’outil ses messages dans cette langue. Elle ne conserve rien. 1.6 kB
    SHA-256 80f76f69773ef628d36d09bf8387cfedebda4529210d7120649b6f5603310631
Comment ça marche
Sous-réseaux égaux : le nombre demandé est arrondi à la puissance de 2 supérieure, puisqu’un réseau ne se coupe qu’en deux moitiés. Selon les besoins (VLSM) : chaque ligne reçoit le plus petit bloc qui offre assez d’hôtes utilisables, et les blocs sont placés les uns à la suite des autres, du plus grand au plus petit. Chacun commence ainsi sur une adresse bien alignée, sans espace perdu entre eux ; ce qui reste à la fin est donné en blocs CIDR.
Testé
Le calcul est couvert par des tests automatiques, lancés à chaque déploiement : arrondi, /31 et /32, réseaux trop petits, IPv6, lecture des besoins, et refus des saisies mal formées. Les tests vérifient aussi, sur des milliers de cas tirés au hasard, que les sous-réseaux sont alignés, ne se chevauchent jamais, restent dans le réseau, et qu’avec les blocs libres ils le couvrent exactement.
Vérifiez vous-même
Téléchargez un script et comparez son empreinte avec celle affichée ci-dessus :
curl -s https://r-no.fr/ip/split/app.js | shasum -a 256
Limites
Jusqu’à 65 536 sous-réseaux (un /48 IPv6 en /64) et 256 lignes de besoins ; le tableau montre les 256 premiers sous-réseaux, les boutons de copie les donnent tous. Les besoins sont placés du plus grand au plus petit, pas dans l’ordre de saisie. L’outil ne garde pas de marge de croissance : si un sous-réseau peut grandir, demandez plus d’hôtes. En IPv4, les hôtes utilisables excluent les adresses de réseau et de diffusion, sauf en /31 et /32 (RFC 3021).