alphaspirit - stock.adobe.com
Netzwerkgeräteerkennung ohne Ping Sweeps: Best Practices
Ping Sweeps sind der De-facto-Standard, um Netzwerkgeräte zu erkennen. Doch ein Netzwerkskript scheint eine bessere Alternative zu sein, da es keine hohe Netzwerklast verursacht.
Um herauszufinden, welche Komponenten es im Netzwerk gibt, greifen viele auf Ping Sweeps zurück. Aber es gibt einen besseren Weg.
Kennen Sie die Situation? Ihre jährlichen Wartungs-Audits melden immer wieder Geräte, die in Ihrem Netzwerk sein sollen, aber Sie wissen nicht, wo sich diese befinden. Oder Sie stoßen auf Geräte, die nicht von den Wartungsverträgen abgedeckt werden, insbesondere wenn ein altes Gerät ausfällt und Sie versuchen, es beim Anbieter ersetzen oder reparieren zu lassen.
Die neue Welt der virtuellen Appliances hat die Anforderungen für die Netzwerkgeräteerkennung und Inventarisierung verändert. Diese Systeme sind einfach Softwarepakete, die auf einer x86-Plattform laufen. Mechanismen zur Softwarelizenzierung helfen, aber es wäre trotzdem nützlich, diese Instanzen nachzuverfolgen, damit Sie wissen, dass die Organisation die Lizenzierungsanforderungen des Anbieters erfüllt.
Auch dynamische Workloads machen die Erkennung von Netzwerkgeräten zu einer Herausforderung. Ein System kann heute an einem Ort sein und morgen schon auf einem anderen physischen System laufen. Wenn das Intrusion Prevention System anzeigt, dass ein Endpunkt versucht, mit einer bekannten externen Malware-Seite zu kommunizieren, müssen Sie in der Lage sein, die Position dieses Endpunkts schnell zu ermitteln.
Welche Rolle Ping Sweeps spielen
Ping Sweeps sind das Standard-Tool, das für die Erkennung von Netzwerkgeräten genutzt wird. Es handelt sich um einen simplen Mechanismus, der lediglich voraussetzt, dass die Endpunkte und Netzwerkgeräte Echo-Request- und Echo-Reply-Pakete per Internet Control Message Protocol (ICMP) unterstützen. Programme für Netzwerk-Scans, etwa Nmap, und viele Netzwerkmanagement-Systeme beruhen auf Ping Sweeps. Dieses Verfahren erfreut sich deshalb so großer Beliebtheit, weil die einzige Information, die benötigt wird, der Ziel-IP-Adressbereich ist.
Der Nachteil von Ping Sweeps als Tool zur Netzwerkgeräteerkennung besteht darin, dass sie eine Menge unnötigen Netzwerk-Traffic erzeugen. Jede IP-Adresse im Suchbereich wird mehrere Male überprüft, ob sie eine Auflösung nach dem Address Resolution Protocol (ARP) erlaubt. Nicht verwendete Adressen werden ebenfalls untersucht. Genau das kann in vielen Netzwerken zu einem gewaltigen zusätzlichen Verarbeitungsaufwand führen.
Zu guter Letzt generieren Ping Sweeps auch Traffic von Sicherheitssystemen, die das Netzwerk schützen. Das liegt daran, weil Ping Sweeps gleichzeitig der Mechanismus sind, den Malware nutzt, um benachbarte Geräte zu entdecken.
CLI oder SNMP als effizientere Option
Es gibt eine bessere Alternative zu Ping Sweeps, solange Sie über eine Kommandozeile (Command-line Interface, CLI), das Simple Network Management Protocol (SNMP) oder eine API auf Netzwerkgeräte zugreifen können.
Außerdem müssen Sie die Möglichkeit haben, ein Skript zu erstellen, das einige grundlegende Konnektivitätsdaten von Netzwerkgeräten abfragen kann. Das bedeutet, Sie benötigen Login- oder SNMP-Anmeldeinformationen für den schreibgeschützten Zugriff. Der intelligente Mechanismus beginnt mit dem zu erkennenden IP-Adressbereich und mindestens einem Seed-Gerät – dabei handelt es sich typischerweise um den lokalen Standard-Router. Der lokale Router sollte sich innerhalb des Adressbereichs für die Erkennung befinden.
Starten Sie mit dem Seed-Gerät, und rufen Sie dessen lokale Routing-Tabelle ab. Wir beginnen mit dieser Tabelle, um die Routing-Infrastruktur zu ermitteln. Identifizieren Sie alle benachbarten Router, die als Next-Hop-Geräte in der Routing-Tabelle aufgeführt werden. Beachten Sie, dass Sie eventuell mit mehreren virtuellen Routing- und Forwarding-Instanzen umgehen müssen.
Halten Sie die Adressen jener benachbarten Router fest, deren Adressen sich im gewünschten Adressbereich befinden, oder von Advertising Routern im betreffenden Adressraum. Wiederholen Sie diesen Prozess zur Netzwerkgeräteerkennung mit jedem Router, der sich innerhalb des Suchbereichs befindet oder der als Advertising Router für Subnetze im Suchbereich fungiert. Nun verfügen Sie über eine Liste aller Router in diesem Bereich.
Als Nächstes rufen Sie für jeden Router dessen ARP-Tabelle ab und untersuchen die MAC-Adresse (Media Access Control) auf den Hersteller-Code, um die Anbieter von Netzwerkgeräten zu identifizieren. Die Zugangsdaten für das Netzwerkmanagement können dann genutzt werden, um jedes mögliche Netzwerkgerät zu untersuchen und so dessen Nachbarn zu finden.
Wenn ein Switch entdeckt wurde, sollte seine Forwarding-Adresstabelle abgerufen werden. Diese Tabelle wird mit der ARP-Tabelle der Router korreliert, die dieses Subnetz bedienen. Dadurch erhalten Sie eine Tabelle, die jede IP-Adresse, die zugehörige MAC-Adresse, virtuelle LAN-ID und den Interface-Namen des Switch-Ports aufführt, mit dem sie verbunden ist.
Benachbarte Switches werden in den Bridging-Tabellen identifiziert – die Informationsgrundlage für das Bridge-Management, wenn SNMP zum Einsatz kommt. Die Bridging-Tabellen bieten zudem die Möglichkeit, ein Diagramm der Switch-Verbindungen und der Links zu erstellen, die aufgrund von Spanning Tree blockieren.
Wie funktioniert das Ganze?
Der oben beschriebene Mechanismus wird von NetMRI, einer Konfigurationssoftware der Firma Infoblox für die Netzwerkgeräteerkennung, genutzt. Sie arbeitet deutlich flotter als Ping Sweeps, wenn es um große Adressräume geht, zum Beispiel 10.0.0.0/8, in denen tendenziell eher wenig Geräte anzutreffen sind.
Ein großer Netzwerkbereich könnte auf diese Weise in einer Stunde durchforstet werden. Durch den schnellen Erkennungsmechanismus ist eine Ausführung einmal am Tag kein Problem, so dass sich alle Geräte, inklusive der Endpunkte, einfach erfassen lassen.
Das Verfahren funktioniert gut, wenn Sie herausfinden wollen, wo sich ein Gerät befindet, und Sie dessen IP-Adresse kennen. Die Suche muss nur das Subnetz identifizieren und die Switch-Infrastruktur untersuchen, um die Switch-Schnittstelle zu finden, mit der ein Gerät verbunden ist.
Eine Inventarisierung der vernetzten Geräte ist auch bei einer Wartung hilfreich. Wenn zum Beispiel ein wichtiger Switch upgegradet werden muss, empfiehlt es sich zu wissen, wer davon betroffen sein wird.
Umzüge und Änderungen lassen sich ebenfalls effizienter planen, wenn Sie wissen, welche Geräte involviert sind. Indem Sie die Interface-Nutzung von Endpunkten mit ihrem Subnetz und Standort korrelieren, sind Sie in der Lage, Server zu identifizieren, die gelegentlich im Netz auftauchen.