Mémo du package d'adresse IP Python

paquet ipaddress

http://docs.python.jp/3/library/ipaddress.html Ajouté dans Python 3.3. Il y a un port arrière.

Déterminez si l'hôte_distant est "adresse IPv4", "adresse IPv6" ou "Autre".

python


import ipaddress

def type_of_remote_host(remote_host):
    try:
        addr = ipaddress.ip_address(unicode(address))
        if addr.version == 4:
            return 'ipv4addr'
        else:
            return 'ipv6addr'

    except ValueError:
        return 'other'

Conversion mutuelle entre adresses IPv6 redondantes et abrégées

python


import ipaddress

ipaddress.ip_address(u'2001:0db8:0000:0000:0000:0000:0000:9abc').compressed
# => u'2001:db8::9abc'

ipaddress.ip_address(u'2001:db8::9abc').exploded
# => '2001:0db8:0000:0000:0000:0000:0000:9abc'

Obtenez le nom d'hôte pour la recherche inversée à partir de l'adresse IP

python


import ipaddress

## IPv4
'.'.join(reversed('192.168.0.1'.split('.')))+'.in-addr.arpa.'
# => '1.0.168.192.in-addr.arpa.'

## IPv6
'.'.join(reversed(ipaddress.ip_address(u'2001:db8::9abc').exploded.replace(':','')))+'.ip6.arpa.'
# => 'c.b.a.9.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa.'

Recommended Posts

Mémo du package d'adresse IP Python
Mémo de raclage Python
Note d'apprentissage Python_000
Notes d'apprentissage Python
Notes de débutant Python
Note d'apprentissage Python_006
notes de python C ++
Note d'apprentissage Python_005
Notes de grammaire Python
Note sur la bibliothèque Python
notes personnelles python
mémo pandas python
Note d'apprentissage Python_001
notes d'apprentissage python
Notes d'installation de Python3.4
notes personnelles en python manquantes
Mémo du package de test Python
notes d'utilisation du décorateur python
Notes sur le format Python Pickle
Premier mémo divers sur Python
Matlab => Notes de migration Python
Comparaison du gestionnaire de packages Python
Remarques sur l'affectation Python3
Notes sur l'utilisation de sous-processus Python
Remarque sur la gestion des packages Anaconda
Python essayer / sauf mémo
python> Lien> Package PyUserInput |
Notes sur le flacon de framework Python
mémo python utilisant l'opérateur perl-ternaire
Mémo d'apprentissage O'Reilly python3 Primer
Gestion des packages Python avec IntelliJ
Notes Python à oublier bientôt
python * args, ** kwargs Notes d'utilisation
notes python pour l'utilisation de variables spéciales perl
Notes sur l'expression régulière de la théorie Python
Mémo Python Tkinter (pour moi)
[Python] Notes sur l'analyse des données
Notes d'apprentissage sur l'analyse des données Python
Remarques sur l'installation de Python sur votre Mac
Obtenez des notes Evernote en Python
Remarques sur l'installation de Python sur CentOS
Un enregistrement de patcher un package python
Notes sur Python et les types de dictionnaire
Remarques sur la gestion des packages avec conda
Python
Notes de grammaire minimales pour écrire Python
Remarques sur l'utilisation de MeCab depuis Python
GPyOpt, un package d'optimisation bayésienne en Python
Notes personnelles pour le traitement d'images python
Résumé personnel de l'outil de gestion de packages Python
Visualisez les dépendances des packages python avec graphviz
Notes personnelles de prétraitement des données Python Pandas
Mémo d'automatisation de saisie par Python débutant
Mémo pour moi graphique csv python
Remarques sur l'installation de Python à l'aide de PyEnv
Notes pour l'entrée / sortie de fichier Python
Notes sur l'utilisation de rstrip avec python.
Remarques sur l'accès à dashDB à partir de python