====== Python Standard Module ====== ===== ipaddress Modul ===== Das ''ipaddress'' Modul ist ganz interessant zum generieren und zum prüfen ob IP in Netzwerk. Es kann geprüft werden ob Netzwerk und Hostbereich usw. Ausserdem wird IPv4 und IPv6 unterstützt. ==== Genearate IPs ==== >>> from ipaddress import ip_network >>> list(ip_network('172.16.2.0/28').hosts()) [IPv4Address('172.16.2.1'), IPv4Address('172.16.2.2'), IPv4Address('172.16.2.3'), IPv4Address('172.16.2.4'), IPv4Address('172.16.2.5'), IPv4Address('172.16.2.6'), IPv4Address('172.16.2.7'), IPv4Address('172.16.2.8'), IPv4Address('172.16.2.9'), IPv4Address('172.16.2.10'), IPv4Address('172.16.2.11'), IPv4Address('172.16.2.12'), IPv4Address('172.16.2.13'), IPv4Address('172.16.2.14')] Network objects can be iterated to list all the addresses belonging to the network. For iteration, all hosts are returned, including unusable hosts (for usable hosts, use the hosts() method). An example: >>> >>> for addr in IPv4Network('192.0.2.0/28'): ... addr ... IPv4Address('192.0.2.0') IPv4Address('192.0.2.1') IPv4Address('192.0.2.2') IPv4Address('192.0.2.3') IPv4Address('192.0.2.4') IPv4Address('192.0.2.5') IPv4Address('192.0.2.6') IPv4Address('192.0.2.7') IPv4Address('192.0.2.8') IPv4Address('192.0.2.9') IPv4Address('192.0.2.10') IPv4Address('192.0.2.11') === Die Lösung zum Generieren === Nur die reinen IP-Adressen aufgelistet und nur nutzbare Adressen, also keine 172.16.2.0 usw: >>> from ipaddress import ip_network >>> for addr in list(ip_network('172.16.2.0/28').hosts()): ... print(addr) ... 172.16.2.1 172.16.2.2 172.16.2.3 172.16.2.4 172.16.2.5 172.16.2.6 172.16.2.7 172.16.2.8 172.16.2.9 172.16.2.10 172.16.2.11 172.16.2.12 172.16.2.13 172.16.2.14 ==== Reverse IP mit ipaddress Modul ==== folgender Code läuft auf Raspbian 9 mit python 3.5 >>> import ipaddress >>> >>> ipaddress.ip_address('172.16.1.20').reverse_pointer '20.1.16.172.in-addr.arpa' Alle folgenden Module lassen sich per ''pip'' installieren: namedparser (0.0.3) - Read name-daemon configuration files like the bind Das Modul namedparser schreibt das Konfigfile /etc/named.conf Es ist seit 3 Jahren nicht mehr aktualisiert worden. Ansonsten klein und schlank. blockstack-zones (0.14.3) - Library for creating and parsing DNS zone files Aktueller und größer als namedparser. Die Aufgabe ist das schreiben von Zone-Files. zonecreate Die gleiche Aufgabe von zonecreate, wie bei blockstack-zones, ist das schreiben von Zone-Files. Seit 5 Jahren still. cloudflaredns-backup (1.8) - CloudFlare DNS backup to BIND files cloudflaredns-backup zeigt das schreiben von Zone-Files. Input nur abändern? dnscherry (0.1.3) - A simple web application to manage DNS zones Sieht ganz easy aus vom Web-Interface her. Kann IPv4 und IPv6.