Un outil Python simple et pratique pour convertir des masques de sous-réseau au format décimal (ex: 255.255.255.0) en notation CIDR (ex: /24).
- Conversion de masques : Transforme les masques de sous-réseau en notation CIDR
- Traitement de fichiers Excel : Lit et traite des fichiers Excel contenant des adresses IP et des masques
- Presse-papier : Traite directement les données copiées depuis Excel
- Conversion manuelle : Interface interactive pour des conversions à la volée
- Format complet IP/CIDR : Combine automatiquement l'adresse IP avec le masque converti
pip install pandas openpyxl- Téléchargez le fichier
calcmask.py - Installez les dépendances :
pip install pandas openpyxl
- Exécutez le programme :
python calcmask.py
Le programme propose trois modes d'utilisation :
Convertit un fichier Excel contenant :
- Colonne A : Adresses IP
- Colonne B : Masques de sous-réseau
- Colonne C : Résultats en notation CIDR (générée automatiquement)
# Dans le menu interactif
Choisissez l'option 1
# Ou directement dans le code :
process_excel_file("monfichier.xlsx")- Copiez vos données depuis Excel (colonnes A et B)
- Choisissez l'option 2 dans le menu
- Les résultats sont automatiquement copiés dans le presse-papier
Mode interactif pour convertir des adresses IP et masques un par un :
Adresse IP (ex: 10.58.0.0): 192.168.1.0
Masque (ex: 255.255.0.0): 255.255.255.0
Résultat: 192.168.1.0/24
| Masque de sous-réseau | Notation CIDR |
|---|---|
| 255.255.255.0 | /24 |
| 255.255.0.0 | /16 |
| 255.255.255.128 | /25 |
| 255.0.0.0 | /8 |
| Adresse IP + Masque | Résultat |
|---|---|
| 10.58.0.0 + 255.255.0.0 | 10.58.0.0/16 |
| 192.168.1.0 + 255.255.255.0 | 192.168.1.0/24 |
| 172.16.0.0 + 255.240.0.0 | 172.16.0.0/12 |
| A (Adresse IP) | B (Masque) | C (Résultat) |
|---|---|---|
| 10.58.0.0 | 255.255.0.0 | 10.58.0.0/16 |
| 192.168.1.0 | 255.255.255.0 | 192.168.1.0/24 |
| 172.16.0.0 | 255.240.0.0 | 172.16.0.0/12 |
Le fichier de sortie conserve la même structure avec la colonne C générée automatiquement.
Vous pouvez également utiliser les fonctions directement dans votre code :
from calcmask import mask_to_cidr, ip_to_cidr, process_excel_file
# Convertir un masque seul
cidr = mask_to_cidr('255.255.255.0') # Retourne 24
# Convertir IP + masque
result = ip_to_cidr('192.168.1.0', '255.255.255.0') # Retourne '192.168.1.0/24'
# Traiter un fichier Excel
df = process_excel_file('input.xlsx', 'output.xlsx')Convertit un masque de sous-réseau en notation CIDR.
- Paramètre :
mask(str) - Masque au format "xxx.xxx.xxx.xxx" - Retour : Nombre de bits (int) ou None en cas d'erreur
Combine une adresse IP et un masque en notation CIDR.
- Paramètres :
ip(str) - Adresse IPmask(str) - Masque de sous-réseau
- Retour : Chaîne au format "IP/CIDR" ou None
Traite un fichier Excel complet.
- Paramètres :
input_file(str) - Chemin du fichier d'entréeoutput_file(str, optionnel) - Chemin du fichier de sortie
- Retour : DataFrame pandas avec les résultats
Traite les données copiées depuis le presse-papier.
- Retour : DataFrame pandas avec les résultats
Le programme gère les cas d'erreur suivants :
- Masques invalides
- Fichiers Excel mal formatés
- Problèmes de lecture du presse-papier
- Colonnes manquantes
Libre d'utilisation et de modification.
Script utilitaire pour la conversion de masques réseau.
⭐ Si ce projet vous est utile, donnez-lui une étoile sur GitHub ! ⭐
Made with ❤️ by LAB-INFO