Der NW-Ingenieur hat versucht, Adressen mit Pythons netaddr zu aggregieren

Annahme

Dieser Artikel wurde von einem Netzwerktechniker verfasst, der nicht gut programmieren kann. Eine Anleitung zur Adressaggregation und -sortierung, ohne zu verstehen, wie Python verwendet wird. Es wird in der folgenden Umgebung erstellt, aber der Befehl ist unter Linux genau derselbe

Windows10 64bit Anaconda3 https://www.python.jp/install/anaconda/windows/install.html

Vorbereitung

netaddr Installation

Starten Sie die Anaconda-Eingabeaufforderung > pip install netaddr

netaddr Installation (lokales Material)

Laden Sie das Material (Rad) von der folgenden Seite herunter https://pypi.org/ Material: netaddr-0.7.19-py2.py3-none-any.whl (1,6 MB)

Starten Sie Anaconda Prompt und gehen Sie zu dem Ort, an dem die Materialien gelagert werden > cd downloads Installation durch Angabe des Dateinamens > pip install netaddr-0.7.19-py2.py3-none-any.whl

Wie benutzt man

1. Adressaggregation

> python >>> from netaddr import * >>> ip_list = [ IPNetwork('192.168.1.0/24'), IPNetwork('192.168.0.0/24'), IPNetwork('10.20.30.0/24'), IPNetwork('10.0.0.0/8') ] >>> cidr_merge(ip_list)

Ausgabe

[IPNetwork('10.0.0.0/8'), IPNetwork('192.168.0.0/23')]

2. Adressensortierung (aufsteigende Reihenfolge)

> python >>> from netaddr import * >>> import random >>> import pprint >>> ip_list = [ IPNetwork('192.168.1.0/24'), IPNetwork('192.168.0.0/24'), IPNetwork('10.20.30.0/24'), IPNetwork('10.0.0.0/8') ] >>> random.shuffle(ip_list) >>> ip_list.sort() >>> pprint.pprint(ip_list)

Ausgabe

[IPNetwork('10.0.0.0/8'), IPNetwork('10.20.30.0/24'), IPNetwork('192.168.0.0/24'), IPNetwork('192.168.1.0/24')]

3.mask → prefix > python >>> from netaddr import * >>> ip_list = [ IPNetwork('192.168.24.0/255.255.255.0'), IPNetwork('192.168.24.0/255.255.255.128'), IPNetwork('192.168.24.0/255.255.255.192'), IPNetwork('192.168.24.252/30') ] >>> for i in ip_list: ... print(i) ... (enter)

Ausgabe

192.168.24.0/24 192.168.24.0/25 192.168.24.0/26 192.168.24.252/30

4.prefix → mask > python >>> from netaddr import * >>> ip_list = [ IPNetwork('192.168.24.0/255.255.255.0'), IPNetwork('192.168.24.0/255.255.255.128'), IPNetwork('192.168.24.0/255.255.255.192'), IPNetwork('192.168.24.252/30') ] >>> for i in ip_list: ... print(str(i.ip)+'/'+str(i.netmask)) ... (enter)

Ausgabe

192.168.24.0/255.255.255.0 192.168.24.0/255.255.255.128 192.168.24.0/255.255.255.192 192.168.24.252/255.255.255.252

Referenz

https://netaddr.readthedocs.io/en/latest/index.html

Recommended Posts

Der NW-Ingenieur hat versucht, Adressen mit Pythons netaddr zu aggregieren
Ich habe versucht, CloudWatch-Daten mit Python abzurufen
Ich habe versucht, LLVM IR mit Python auszugeben
Ich habe versucht, die Herstellung von Sushi mit Python zu automatisieren
Ich habe versucht, Mine Sweeper auf dem Terminal mit Python zu implementieren
Ich habe versucht, mit Blenders Python script_Part 01 zu beginnen
Ich habe versucht, Soma Cube mit Python zu lösen
Ich habe versucht, mit Blenders Python script_Part 02 zu beginnen
Ich habe versucht, künstliches Perzeptron mit Python zu implementieren
Ich habe versucht, das Problem mit Python Vol.1 zu lösen
Ich habe versucht, AOJs Integer-Theorie mit Python zu lösen
Ich habe versucht, Stückpreisdaten nach Sprache mit Real Gachi von Python zu aggregieren und zu vergleichen
Ich habe fp-Wachstum mit Python versucht
Ich habe versucht, mit Python zu kratzen
Stellen Sie mit Python eine Verbindung zu BigQuery her
Stellen Sie mit Python eine Verbindung zu Wikipedia her
Post to Slack mit Python 3
Schalten Sie Python mit Alternativen auf 2.7 um
Schreiben Sie mit Python in csv
Ich habe gRPC mit Python ausprobiert
Ich habe versucht, mit Python zu kratzen
Ich habe versucht, die Entropie des Bildes mit Python zu finden
Ich habe versucht zu simulieren, wie sich die Infektion mit Python ausbreitet
Ich habe versucht, mit Python faker verschiedene "Dummy-Daten" zu erstellen
Ich habe verschiedene Methoden ausprobiert, um japanische Post mit Python zu senden
[IPdb] Anfänger in der Webentwicklung haben versucht, das Debuggen mit Python zusammenzufassen
[Python] Ich habe versucht, Tweets über Corona mit WordCloud zu visualisieren
Mayungos Python Learning Episode 3: Ich habe versucht, Zahlen zu drucken
Ich habe versucht, die Benutzeroberfläche neben Python und Tkinter dreiäugig zu gestalten
[5.] Ich habe versucht, mit Python ein bestimmtes Authenticator-ähnliches Tool zu erstellen
Ich habe versucht, die Anfängerausgabe des Ameisenbuchs mit Python zu lösen
Python: So verwenden Sie Async mit
Link, um mit Python zu beginnen
Rubyist hat versucht, eine einfache API mit Python + Flasche + MySQL zu erstellen
Ich habe versucht, Python zu berühren (Installation)
[Python] Mit Python in eine CSV-Datei schreiben
[2nd] Ich habe versucht, mit Python ein bestimmtes Authenticator-ähnliches Tool zu erstellen
Schön dich mit Python zu treffen
Versuchen Sie, Facebook mit Python zu betreiben
Ausgabe in eine CSV-Datei mit Python
Ich habe versucht, WebScraping mit Python.
[3.] Ich habe versucht, mit Python ein bestimmtes Authenticator-ähnliches Tool zu erstellen
[Python] Ein Memo, das ich versucht habe, mit Asyncio zu beginnen
Ich habe versucht, mit Python eine Liste von Primzahlen zu erstellen
Konvertieren Sie die Liste mit Python in DataFrame
MP3 → WAV-Konvertierung mit Python
Schwanzrekursion mit Python2 durchführen
Erste Schritte mit Python
[Pandas] Ich habe versucht, Verkaufsdaten mit Python zu analysieren. [Für Anfänger]
Ich habe versucht zu beheben "Ich habe versucht, die Wahrscheinlichkeit eines Bingospiels mit Python zu simulieren"
Ich habe versucht, mit Selenium und Python einen regelmäßigen Ausführungsprozess durchzuführen
Ich habe versucht herauszufinden, ob ReDoS mit Python möglich ist
Was tun mit PYTHON Release?
Ich habe versucht, mit Python eine 2-Kanal-Post-Benachrichtigungsanwendung zu erstellen