GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So erfassen Sie alle eingehenden Pakete für die NIC, auch wenn diese Pakete nicht mir gehören

AFAIK, die NIC empfängt alle Pakete von der Leitung in einem Local Area Network, lehnt jedoch die Pakete ab, deren Zieladresse nicht gleich ihrer IP ist.

Korrektur:Es weist die Pakete zurück, deren Ziel MAC ist Adresse ist nicht gleich seiner MAC-Adresse (oder Multicast oder zusätzliche Adressen in seinem Filter.

Dienstprogramme zur Paketerfassung können das Netzwerkgerät trivialerweise in den Promiscuous-Modus versetzen, was bedeutet, dass die obige Überprüfung umgangen wird und das Gerät alles akzeptiert, was es empfängt. Tatsächlich ist dies normalerweise die Vorgabe:mit tcpdump , müssen Sie den -p angeben Option, um nicht tun.

Die wichtigere Frage ist, ob die Pakete, die Sie interessieren, überhaupt über die Leitung zu Ihrem Sniffing-Port transportiert werden. Da Sie einen nicht verwalteten Ethernet-Switch verwenden, sind sie es mit ziemlicher Sicherheit nicht. Der Switch entscheidet, Pakete, die Ihnen nicht gehören, von Ihrem Port zu entfernen, bevor Ihr Netzwerkgerät hoffen kann, sie zu sehen.

Dazu müssen Sie eine Verbindung zu einem speziell konfigurierten Spiegelungs- oder Überwachungsport auf einem verwalteten Ethernet-Switch herstellen.


In den Anfangszeiten von Ethernet-Hubs (nicht Switches) sind gesendete Pakete für alle Hosts im Subnetz verfügbar, aber Hosts, die nicht der beabsichtigte Empfänger sind, sollten sie ignorieren.

Offensichtlich dauerte es nicht lange, bis die Subnetze gesättigt waren, also wurde die Switch-Technologie geboren, um die Probleme zu lösen, und eines der Dinge, die sie taten, war, dass der Netzwerk-Switch nur Pakete, die für diesen Host bestimmt waren, an diesen Port weiterleitete (plus andy Broadcast-Verkehr). ).

Dies erschwert die Netzwerküberwachung/-schnüffelung, da Sie nur Pakete schnüffeln können, die für Ihren Host bestimmt sind. Dies wurde vom Sicherheitsstandpunkt aus als eine gute Sache angesehen, aber vom Standpunkt der Netzwerküberwachung aus als nicht so gut. Damit die Netzwerküberwachung funktioniert, implementieren Anbieter eine Funktion namens Port Mirroring. Dies muss auf dem Netzwerk-Switch konfiguriert werden, und der folgende Link sollte Sie in die richtige Richtung für D-Link-Produkte führen. Sie finden es irgendwo in Ihrer Switch-Verwaltungssoftware oder in der Web-Admin-Oberfläche. Wenn Sie diese Funktionen nicht finden, wird die Funktionalität auf diesem speziellen Gerät möglicherweise nicht bereitgestellt.

http://www.dlink.com/uk/en/support/faq/switches/layer-2-gigabit/dgs-series/es_dgs_1210_como_monitorear_trafico_de_un_puerto_port_mirroring


Zuerst müssen Sie Ihre NIC in den Promiscuous-Modus schalten. Nehmen wir an, Ihre NIC-Schnittstelle ist eth0.

[email protected]#ifconfig eth0 promesc

Wenn Sie sich in einem Switch-Netzwerk befinden, wird Ihr Sniffing auf die Kollisionsdomäne reduziert, die eine Verbindung zu Ihrem Switch-Port herstellt. Sie können macof ausführen um die Weiterleitungstabelle des Switches zu überfordern.

[email protected]#macof -i eth0

Dann können Sie wireshark verwenden oder tcpdump um den gesamten Datenverkehr zu erfassen.

[email protected]#tcpdump -i eth0 -w outputfile

Wenn Sie sich nicht in einem geswitchten Netzwerk befinden, aktivieren Sie einfach den Promiscuous-Modus und verwenden Sie tcpdump .


Linux
  1. Wie kann man einen fehlerhaften (integrierten) Netzwerkadapter diagnostizieren?

  2. CentOS / RHEL :Wie finde ich heraus, ob ein Netzwerkport offen ist oder nicht?

  3. Wie finde ich alle Dateien, die *nicht* für Gruppen beschreibbar sind?

  4. Wie listet man Prozesse auf, die zu einem Netzwerk-Namespace gehören?

  5. So erfassen Sie alle Festplatten, die kein Dateisystem haben

So erfassen und analysieren Sie Pakete mit dem Befehl tcpdump unter Linux

Verwendung von Wireshark zum Erfassen und Analysieren von Netzwerkpaketen

So finden Sie heraus, welche Geräte in Linux mit dem Netzwerk verbunden sind

So überprüfen Sie, ob Sie sich in einer Bildschirmsitzung befinden oder nicht in Linux

Wie man Worker-Verbindungen repariert, ist nicht genug Fehler auf Nginx

Wie viele Dienste lauschen auf allen Schnittstellen auf dem Zielsystem? (Nicht nur auf localhost und IPv4)