Net :: cidr :: lookup

Eine Perl-Klasse, die eine Lookup-Tabelle implementiert, die von IPv4-Netzwerken oder Hosts indexiert wird
Jetzt downloaden

Net :: cidr :: lookup Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Matthias Bethke
  • Website des Verlags:
  • http://search.cpan.org/~mbethke/

Net :: cidr :: lookup Stichworte


Net :: cidr :: lookup Beschreibung

Eine Perl-Klasse, die eine Lookup-Tabelle implementiert, die von IPv4-Netzwerken oder Hosts indexiert wird NET :: cIDR :: Lookup ist eine Perl-Klasse, die eine Nachschlagetabelle implementiert, die von IPv4-Netzwerken oder Hosts indiziert ist. * Adressen werden in numerischer Form (Ganzzahl mit separatem NetBit-Argument) angenommen, da Zeichenfolgen in CIDR-Notation oder als IP-Adressbereiche * überlappende oder benachbarte Netzwerke automatisch koalsiert werden, wenn ihre zugehörigen Werte gleich sind. * Die Tabelle ist als Binärbaum implementiert, sodass Lookup und Insertion o (log n) time.Methoden einen echten Wert auf Erfolg und Underef auf Fehler zurück. Im letzteren Fall ist eine Fehlermeldung in $ net :: cidr :: lookup :: errstrsynopsis net :: cidr :: lookup; $ cidr = net :: cidr :: lookup-> neu; $ cIDR-> Hinzufügen (192.168.42.0/24, 1); # Erstes Netzwerk hinzufügen, Wert 1 $ cIDR-> add_num (167772448,27,2); # 10.0.1.32/27 => 2 $ cidr-> Hinzufügen (192.168.43.0/24, 1); # Automatische Koaleszenz auf A / 23 $ CIDR-> Hinzufügen (192.168.41.0/24, 2); # Bleibt getrennt durch unterschiedliche Wert $ cIDR-> Hinzufügen (192.168.42.128/25, 2); # Fehler: Überschneidungen mit unterschiedlichem Wert $ H = $ cIDR-> Dump; # Baum in einen Hash-Druck konvertieren "$ k => $ v \ n", während (($ k, $ v) = jeweils% $ h); # Ausgang (Bestellung kann variieren): # 192.168.42.0/23 => 1 # 10.0.1.32/27 => 2 # 192.168.41.0/24 => 2 $ cidr-> spazieren (sub {My ($ addr, $ Bits) , $ Val) = @_; Print Join ('.', Pack 'C *', Pack 'n', $ addr), "/ $ Bits => $ VAL \ N"}); # Ausgabe (feste Bestellung): # 10.0.1.32/27 => 2 # 192.168.41.0/24 => 2 # 192.168.42.0/23 => 1 $ cIDR-> klar; # Entfernen Sie alle Einträge $ cIDR-> add_range ('1.2.3.11 - 1.2.4.234', 42); # Eine Reihe von Adressen hinzufügen, automatisch in CIDR-Blöcke aufgeteilt $ H = $ cIDR-> Dump; drucken "$ k => $ v \ n", während (($ k, $ v) = jeweils% $ h); # Ausgang (Bestellung kann variieren): # 1.2.4.128/26 => 42 # 1.2.3.32/27 => 42 # 1.2.3.64/26 => 42 # 1.2.4.234/32 => 42 # 1.2.4.0/25 => 42 # 1.2.3.12/30 => 42 # 1.2.3.128/25 => 42 # 1.2.3.16/28 => 42 # 1.2.4.224/29 => 42 # 1.2.4.232/31 => 42 # 1.2 .3.11 / 32 => 42 # 1.2.4.192/27 => 42 Anforderungen: · Perl.


Net :: cidr :: lookup Zugehörige Software