Maison  >  Article  >  développement back-end  >  Explication détaillée du module de traitement des adresses IP Python

Explication détaillée du module de traitement des adresses IP Python

小云云
小云云original
2017-12-12 09:18:112475parcourir

Cet article explique principalement le module de traitement des adresses IP Python. IPy Ce module peut facilement gérer les adresses IPv4 et IPv6. L'article suivant présente principalement des informations pertinentes sur le module de traitement des adresses IP du fonctionnement et de la maintenance automatisés de Python. L'introduction est très détaillée et a une certaine valeur d'apprentissage de référence pour les études ou le travail de chacun. Les amis qui en ont besoin peuvent y jeter un œil ci-dessous.

Module pratique de traitement des adresses IP IPy

Dans la planification des adresses IP, il s'agit de calculer un grand nombre d'adresses IP, y compris le réseau segment, masque de réseau, adresse de diffusion, nombre de sous-réseaux, type IP, etc.

Ne vous inquiétez pas, le module Ipy vient à votre secours. Le module Ipy peut très bien nous aider à mener à bien le travail de planification IP de manière efficace.

Fonction : Aidez-nous à terminer efficacement le travail de planification IP

Installation :

wget https://pypi.python.org/packages/source/I/IPy/IPy-0.81.tar.gz --no-check-certificate
tar -zxvf Ipy-0.81.tar.gz
cd IPy-0.81
python setup.py install

Traitement de base de l'adresse IP et du segment de réseau :

Utilisation :

#from IPy import IP
#ip_1 = IP('192.168.1.0/24')
#print(ip_1.len()) # 输出192.168.1.0/24网段的IP个数
#for a in ip_1: 
# print(a) # 输出192.168.1.0/24网段的所有IP清单

Conversion d'adresse IP :

#from IPy import IP 
#ip_2 = IP('192.168.1.1') 
#ip_2.reverseNames() # 反响解析地址格式
#ip_2.iptype() # 查看IP地址类型
#ip_2.int() # 将格式转换为整型格式
#ip_2.strHex() # 将格式转换为16进制格式
#ip_2.strBin() # 将格式转换为2进制格式 
#print(IP(0x8188808)) # 将16进制转化为IP格式

Conversion des segments de réseau IP :

#from IPy import IP
# 输出192.168.1.0/24 
#print(IP('192.168.1.0').make_net('255.255.255.0')) 
#print(IP('192.168.1.0/255.255.255.0',make_net=True)) 
#print(IP('192.168.1.0-192.168.1.255',make_net=True)) 
# 通过strNormal() 方法指定上述三种格式的输出: 
#print(IP('192.168.1.0/24').strNormal(0)) # 参数(wantprefixlen)为0,无返回,输出192.168.1.0
#print(IP('192.168.1.0/24').strNormal(1)) # 参数(wantprefixlen)为1,prefix格式,输出192.168.1.0/24 
#print(IP('192.168.1.0/24').strNormal(2)) # 参数(wantprefixlen)为2,decimalnetmask格式,输出192.168.1.0/255.255.255.0 
#print(IP('192.168.1.0/24').strNormal(3)) # 参数(wantprefixlen)为3,lastIP格式,输出192.168.1.0-192.168.1.255

Méthode de calcul multi-réseaux :

Fonction : comparez deux segments de réseau pour l'inclusion, le chevauchement, etc., tels que 192.168.1.0/24 et 192.168.1.0/25 ; 192.168.0.0/24 et 192.168.1.0/24

Utilisation :

#from IPy import IP
#IP(&#39;192.168.0.0/24&#39;)<IP(&#39;192.168.1.0/24&#39;)
# 判断IP地址和网段是否包含于另一个网段中
#&#39;192.168.1.1&#39; in IP(&#39;192.168.1.0/24&#39;) 
# 判断两个网段是否存在重叠,使用overlaps()方法 
#IP(&#39;192.168.0.0/23&#39;).overlaps(&#39;192.168.1.0/24&#39;) # 返回1,表示重叠 
#IP(&#39;192.168.1.0/24&#39;).overlaps(&#39;192.168.2.0/24&#39;) # 返回0,表示没有重叠

Selon l'adresse IP d'entrée ou l'adresse du segment réseau, renvoie l'adresse réseau, l'adresse de diffusion, l'analyse de réponse d'adresse, le sous- Numéro de réseau, type IP et autres informations :

#from IPy import IP 
#ip_inp=raw_input(&#39;输入IP地址或网段地址&#39;)
#ip=IP(ip_inp)
#if len(ip)>1: # 是一个网段
# print(&#39;网络地址是:%s&#39; %ip.net())
# print(&#39;子网掩码是:%s&#39; %ip.netmask())
# print(&#39;广播地址是:%s&#39; %ip.broadcast())
# print(&#39;地址反向解析:%s&#39; %ip.reverseName()[0])
# print(&#39;网络子网数为:%s&#39; %sip.len()) 
#else: # 是一个IP地址 
# print(&#39;IP地址反向解析:%s&#39; %ip.reverseName()[0])
#
#print(&#39;16进制地址:%s&#39; %ip.strHex())
#print(&#39;2进制地址:%s&#39; %ip.strBin())
#print(&#39;IP地址类型:%s&#39; %ip.iptype())

Recommandations associées :

Python implémente la sortie avec la couleur Analyse de cas de chaîne

Code Python pour implémenter un algorithme génétique

Exemple détaillé du concept de passage par valeur de référence Python

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn