Convertir le masque de réseau de notation CIDR en notation décimale à points en Python

La méthode pour convertir le masque de réseau de la notation décimale à points (ABCD) en notation CIDR est Publié plus tôt, mais il doit être converti en sens inverse. J'étais pressé par, alors je l'ai écrit.

Notez qu'aucun traitement d'erreur n'est effectué, donc si vous passez un masque de réseau étrange, une valeur étrange sera renvoyée. S'il vous plaît soyez prudente.

code

import socket
import struct

def mask2cidr(mask):
    """Convert netmask from Dotted address to CIDR."""
    return bin(struct.unpack('!L', socket.inet_pton(socket.AF_INET, mask))[0])[2:].index('0')

tester

>>> mask2cidr('255.255.255.0')
24
>>> mask2cidr('255.255.240.0')
20
>>> mask2cidr('255.255.255.192')
26

référence

Recommended Posts

Convertir le masque de réseau de notation CIDR en notation décimale à points en Python
Convertir la notation CIDR en Python
Convertir un float exponentiel en str en Python
Convertir Markdown en PDF en Python
Convertir décimal en n-aire [python]
Convertir un fichier psd en png en Python
Convertir de Markdown en HTML en Python
Convertir une URL absolue en URL relative en Python
Convertir le fichier FBX en ASCII <-> BINARY en Python
Convertissez des PDF en images en masse avec Python
Convertir le code de maillage cubique en WKT en Python
Notation de classe en Python
Convertir la date et l'heure zonées en temps Unixtime dans Python2.7
Comment convertir / restaurer une chaîne avec [] en python
[Python] Convertit les nombres décimaux en nombres binaires, octaux et hexadécimaux
Convertir le tableau NumPy "ndarray" en lilt en Python [tolist ()]
Comment convertir des nombres à virgule flottante en nombres binaires en Python
Convertissez l'image au format .zip en PDF avec Python
Convertir l'API asynchrone de style callback en async / await en Python
Convertir / renvoyer des objets de classe au format JSON en Python
[Python] Création d'une méthode pour convertir la base en 1 seconde
python, php, ruby Comment convertir un décimal en n
Convertir le type d'entité Webpay en type Dict (récursivement en Python)
[python] Convertir la date en chaîne
Pour vider stdout en Python
[Python] Convertir la liste en Pandas [Pandas]
Connectez-vous au site Web en Python
Convertir le projet Scratch en Python
[Python] Convertir Shift_JIS en UTF-8
Convertir l'adresse IP en décimal
Parler avec Python [synthèse vocale]
Comment développer en Python
Convertir le code python 3.x en python 2.x
Publier sur Slack en Python
Convertir l'image passée à Jason Stay Samlike en Python en ASCII Art
Convertir un fichier Excel en texte en Python à des fins de comparaison
Déterminez le format de la date et de l'heure avec Python et convertissez-le en Unixtime
[Python] Comment faire PCA avec Python
Notation inclusive dans l'argument de la fonction Python
Comment collecter des images en Python
Comment utiliser SQLite en Python
Workflow pour convertir une formule (image) en python
Dans la commande python, python pointe vers python3.8
Convertir la liste en DataFrame avec python
Lisez le binaire big endian en Python et convertissez-le en ndarray
Essayez de calculer Trace en Python
Comment convertir 0,5 en 1056964608 en un seul coup
Python> liste> Convertir une double liste en une seule liste
Comment utiliser Mysql avec python
Comment envelopper C en Python
Comment utiliser ChemSpider en Python
6 façons d'enchaîner des objets en Python
Comment utiliser PubChem avec Python
[Python] Convertit les nombres naturels en nombres ordinaux
Comment gérer le japonais avec Python
Python> tuple> Convertir un double tuple en un seul tuple
Une alternative à `pause` en Python
J'ai écrit un code pour convertir quaternion en angle de graissage de type z-y-x avec Python
Que faire s'il y a un décimal dans python json .dumps
J'ai essayé de créer un programme qui convertit les nombres hexadécimaux en nombres décimaux avec python