Heim > Artikel > Backend-Entwicklung > Detaillierte Erläuterung des Python-IP-Adressverarbeitungsmoduls
In diesem Artikel wird hauptsächlich das Python-IP-Adressverarbeitungsmodul IPy erläutert. Dieses Modul kann problemlos IPv4- und IPv6-Adressen verarbeiten. Der folgende Artikel stellt hauptsächlich relevante Informationen zum IP-Adressverarbeitungsmodul des automatisierten Betriebs und der Wartung von Python vor Die Einführung ist sehr detailliert und hat einen gewissen Referenzwert für jedermanns Studium oder Arbeit. Freunde, die sie benötigen, können einen Blick darauf werfen. Ich hoffe, sie kann jedem helfen.
Praktisches IP-Adressverarbeitungsmodul IPy
Bei der IP-Adressplanung geht es um die Berechnung einer großen Anzahl von IP-Adressen inklusive Netzwerk Segment, Netzmaske, Broadcast-Adresse, Anzahl der Subnetze, IP-Typ usw.
Keine Sorge, das Ipy-Modul kommt Ihnen zu Hilfe. Das Ipy-Modul kann uns sehr dabei unterstützen, IP-Planungsarbeiten effizient abzuschließen.
Funktion: Unterstützen Sie uns bei der effizienten Durchführung von IP-Planungsarbeiten
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
Grundlegende Verarbeitung von IP-Adresse und Netzwerksegment:
Verwendung:
#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清单
IP-Adresskonvertierung:
#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格式
Konvertierung von IP-Netzwerksegmenten:
#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
Multi-Netzwerk-Berechnungsmethode:
Funktion: Vergleichen Sie zwei Netzwerksegmente auf Einbeziehung, Überlappung usw., z. B. 192.168.1.0/24 und 192.168.1.0/25; 192.168.0.0/24 und 192.168.1.0/24
Verwendung:
#from IPy import IP #IP('192.168.0.0/24')<IP('192.168.1.0/24') # 判断IP地址和网段是否包含于另一个网段中 #'192.168.1.1' in IP('192.168.1.0/24') # 判断两个网段是否存在重叠,使用overlaps()方法 #IP('192.168.0.0/23').overlaps('192.168.1.0/24') # 返回1,表示重叠 #IP('192.168.1.0/24').overlaps('192.168.2.0/24') # 返回0,表示没有重叠
Gibt entsprechend der eingegebenen IP-Adresse oder Netzwerksegmentadresse die Netzwerkadresse, Broadcast-Adresse, Adressantwortanalyse und das Subnetznetzwerk zurück Nummer, IP-Typ und andere Informationen:
#from IPy import IP #ip_inp=raw_input('输入IP地址或网段地址') #ip=IP(ip_inp) #if len(ip)>1: # 是一个网段 # print('网络地址是:%s' %ip.net()) # print('子网掩码是:%s' %ip.netmask()) # print('广播地址是:%s' %ip.broadcast()) # print('地址反向解析:%s' %ip.reverseName()[0]) # print('网络子网数为:%s' %sip.len()) #else: # 是一个IP地址 # print('IP地址反向解析:%s' %ip.reverseName()[0]) # #print('16进制地址:%s' %ip.strHex()) #print('2进制地址:%s' %ip.strBin()) #print('IP地址类型:%s' %ip.iptype())
Verwandte Empfehlungen:
Python implementiert die Ausgabe mit Farbzeichenfolge Fallanalyse
Python-Code zur Implementierung eines genetischen Algorithmus
Detailliertes Beispiel des Python-Referenz-Pass-by-Value-Konzepts
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Python-IP-Adressverarbeitungsmoduls. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!