IP oder MAC Adressen im Netzwerk finden

Edwin1966

Newbie
Registriert
Feb. 2023
Beiträge
4
Hallo

Ich möchte IP-Adressen oder MAC-Adressen von unbekannten Teilnehmern im Netzwerk finden - allerdings mit unbekannten Subnet und unter Windows.
arp -a liefert leider nur aus dem aktuellen Subnet und mit nmap braucht man schon für einen Adressbereich von 0-255 kanpp 10 sec...

Das es prinzipiell funktionieren muss, Teilnehmer zu finden, deren IP man nicht kennt und die nicht im gleichen Subnet liegen, beweisen diverse Inbetriebnahme Software (Siemens, Cognex, Keyence, ...), die ihre Komponenten auch in anderen Subnet finden.

Hat jemand eine Idee, wie das funktionieren könnte?
 
Wüsste keine andere Mögichkeit als eben ein IP-Scan, und dieser dauert eben ein weilchen.
 
  • Gefällt mir
Reaktionen: lazsniper
Wo kommen die IPs her? Wenn von einem DHCP, dann kennt der diese. Wenn fest vergeben hilft nur ein IP Scan, zB mit dem Tool netscan
Stellst halt deine Subnetz Maske entsprechend ein, dass du einen größeren Bereich absuchen kannst. Aber übertreibs nicht, du willst nicht das ganze Internet durchsuchen
 
  • Gefällt mir
Reaktionen: azereus
nimm halt zmap. damit bekommst du im zweifelsfall den kompletten ipscpace in ca 10 minuten durch..
sonst vielleciht mdns?
 
  • Gefällt mir
Reaktionen: lazsniper
Edwin1966 schrieb:
Das es prinzipiell funktionieren muss, Teilnehmer zu finden, deren IP man nicht kennt und die nicht im gleichen Subnet liegen, beweisen diverse Inbetriebnahme Software (Siemens, Cognex, Keyence, ...), die ihre Komponenten auch in anderen Subnet finden.
ggf. gehen die über einen Broadcast (ff-ff-ff-ff-ff-ff) und schauen wer alles antwortet.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Incanus, azereus, Raijin und eine weitere Person
Ich finde dieses Thema spannend.
Ich hab mich auch schon gefragt wie das funktionieren kann.

Mir ist aufgefallen dass bei Siemens usw. ein WinPCAP Treiber mitinstalliert wird.
Der ist wohl dazu da um Pakete aufzufangen.

Und bei Siemens ist die erste hälfte der MAC-Adresse immer gleich.

Aber kann man überhaupt Pakete aus einem anderen Subnetz abfangen?
Wie kann man überhaupt mit einem anderen Netz/Subnetz kommunizieren ohne Routing?
 
Zuletzt bearbeitet:
Edwin1966 schrieb:
Das es prinzipiell funktionieren muss, Teilnehmer zu finden, deren IP man nicht kennt und die nicht im gleichen Subnet liegen, beweisen diverse Inbetriebnahme Software (Siemens, Cognex, Keyence, ...), die ihre Komponenten auch in anderen Subnet finden.

die senden eine speziellen Broadcast, wie @Nilson schon sagte, auf den die entsprechenden Geräte alle mit vorgegebenen Informationen an den Sender reagieren.

Allerdings ist das eine propitäre Lösung, standardmäßige Netzwerkkomponenten reagieren nicht so.

Im allgemeinen hat man in solchen Netzwerken aber gemanagte Switche, von denen man auslesen kann, welche MAC mit welcher IP an welchen Port hängt und kann das auch zentral erfassen.
 
  • Gefällt mir
Reaktionen: Skysnake, rg88 und Nilson
IBISXI schrieb:
Und bei Siemens ist die erste hälfte der MAC-Adresse immer gleich.
Als Organisation kauft man MAC Präfixe bei der IEEE. Kosten je nach groesse des Blocks zwischen 500 und 2500$
Es kommt immer mal wieder vor, dass die Hersteller industrieller Hardware nur 1-2 Prefixe kaufen und die adressen mehrfach vergeben, weil kollisionen eher unwahrsceinlich sind. Ist bei siemens schon vorgekommen
Vendors kannst du hier nachsehen:
https://macaddress.io/
Bei Bestellungen professioneller Hardware kann man gelegentlich "guaranteed unique mac adresses" dazu kaufen.
IBISXI schrieb:
Wie kann man überhaupt mit einem anderen Netz/Subnetz kommunizieren ohne Routing?
eher nicht. Man kann statische ROuten setzen, aber wenn das unterwegs geblockt wird / man keinen "sinnvollen weg" in ein anderes subnetz hat bringt das auch nicht viel.

IBISXI schrieb:
Mir ist aufgefallen dass bei Siemens usw. ein WinPCAP Treiber mitinstalliert wird.
Der ist wohl dazu da um Pakete aufzufangen.
joa, habe auch schon gesehen, dass das eine hacky loesung war, wenn in Produkten einfach die Pakete "roh" verarbeitet werden sollten. Geht auch eleganter.
 
  • Gefällt mir
Reaktionen: azereus
Man müsste mal testen ob ohne das PCAP Ding immer noch Geräte in anderen Netzen gefunden werden.
Ergänzung ()

madmax2010 schrieb:

Mit IMCP Paketen geht das ja. (Ping)

Wie ist das mit dem Broadcast genau?
 
IBISXI schrieb:
Mit IMCP Paketen geht das ja. (Ping)
Da ist aber genauso der Router dazwischen sofern sich das Ziel in einem anderen Subnet befindet.

IBISXI schrieb:
Wie ist das mit dem Broadcast genau?
Bei Broadcast wird ein Paket quasi an alle Teilnehmer verschickt und der Teilnehmer der auch tatsächlich der Broadcast ist (oft der DHCP-Server) antwortet dann.

Korrigiert mich gerne.
 
Gar nicht, das ist meist das Problem bei solchen MAC-Broadcast Lösungen. Sobald da ein Router dazwischen ist, versagen diese. Oft auch ein Problem bei (Consumer-)Druckern.
 
Ein Broadcast geht an die MAC FF-FF-FF-FF-FF-FF und ist komplett unabhängig davon welche IP der Sender und der bzw die Empfänger hst bzw haben. Es ist gar so, dass ein Gerät gar keine IP haben muss, weil der Broadcast eben auf Layer2 unterhalb der IP-Adressen (Layer3) arbeitet. So kann zB Siemens alle Siemens-Geräte finden, auch wenn diese in einem anderen Subnetz liegen oder noch unkonfiguriert sind.

Voraussetzung dafür ist allerdings, dass sich die Geräte innerhalb derselben Broadcast Domäne, demselben Ethernet Netzwerk befinden. Vereinfacht ausgedrückt: Sie müssen an derselben Switch-Infrastruktur angeschlossen sein (VLANs explizit ausgenommen).

Das läuft dann bei Siemens, o.ä. effektiv so:

PC an Switch. Siemens SPS, Touchpanel, o.ä. ebenfalls an den Switch (oder einen Switch an diesem Switch, etc). PC schickt Broadcast über alle Switches ins Netzwerk. ALLE Teilnehmer des Netzwerks erhalten diesen Broadcast und reagieren darauf oder eben nicht. Im Siemens-Broadcast steht sinngemäß "Meldet euch bei mir oh ihr Siemens Geräte" und das tun diese dann auch, indem sie eine Nachricht an den Absender schicken mit ihren Details, Gerätetyp, Version und die IP. Alle nicht Siemens Geräte ignorieren diesen Aufruf jedoch, weil sie nicht gemeint sind.

Leider ist sowas proprietär, d.h. Siemens hat deren Geräte explizit so programmiert, dass sie solche speziellen Siemens-Aufrufe via Broadcast verschicken bzw darauf reagieren können. Andere Hersteller machen das ebenso, natürlich entsprechend auf ihre eigenen Geräte spezialisiert. Deswegen ist das leider nicht allgemeingültig auf x-beliebige Geräte anwendbar, weil sie unbekannte Broadcasts einfach ignorieren. Aus diesem Grunde lassen sich Geräte mit unbekannter IP entsprechend schwierig finden. Der übliche Weg führt meistens über einen Werksreset nebst Verbindung zur Standard-IP laut Handbuch.
 
  • Gefällt mir
Reaktionen: Linuxlink, IBISXI und Nilson
@Raijin

Danke, sehr guter Beitrag der mir etwas Einblick gegeben hat.

Ich komme mit mit dem Broadcast aber immer noch nicht klar.

Nehmen wir an:

Wir haben einen Wohnblock mit 2 Stockwerken.

In jedem Stockwerk gibt es 10 LAN Dosen, alle LAN Dosen hängen an einen unmanged Switch.

Der obere Stock hat die Teilnehmer 192.168.0.10 - 192.168.0.20
Der untere Stock hat die Teilnehmer 10.0.0.10 - 10.0.0.20

Kann ich auf dem Rechner 10.0.0.10 feststellen ob 192.168.0.10 Broadcastet? Wach ist? Was auch immer?
 
Zuletzt bearbeitet:
Eigentlich sprengt das ein wenig den Rahmen, aber ich fasse mich so kurz wie möglich.

Du sprichst von einem IP-Broadcast (Layer3) bzw speziell von einem Subnetz bzw Directed Broadcast. Dieser geht an alle Teilnehmer eine bestimmten Subnetzes. Ein Paket, das in einem Subnetz 192.168.1.0/24 an 192.168.1.255 geschickt wird, erreicht alle Teilnehmer mit 192.168.1.x
Offensichtlich muss dabei aber das Subnetz bereits bekannt sein, sei es weil es das eigene Subnetz ist oder man explizit ein anderes erreichen will. Letzteres birgt Sicherheitsrisiken und deshalb werden solche Broadcasts von Routern standardmäßig nicht weitergeleitet, obwohl es ginge.

Neben den Directed Broadcasts gibt es noch den Limited oder auch Local Broadcast. Auch das ist ein IP-Broadcast, der über die IP 255.255.255.255 erreicht wird. Dieser Broadcast ist subnetzunabhängig und geht an alle Teilnehmer des lokalen Ethernet-Netzwerks, also alle direkt (über Switches/APs/Repeater) erreichbaren Geräte mit einer MAC-Adresse. Es werden also auch Geräte in anderen Subnetze erreicht solange sie nicht durch einen Router getrennt sind. Ein 255.255.255.255er Broadcast ist gleichzeitig ein Ethernet Broadcast.

Ein Ethernet Broadcast ist ähnlich wie ein Limited Broadcast nur mit dem Unterschied, dass er ausschließlich auf Layer2 abläuft. Er wird also nicht an eine IP gesendet, sondern an die MAC-Adresse FF:FF:FF:FF:FF:FF. Damit ist er komplett IP-unabhängig. Über so einen Broadcast findet zB ein DHCP-Client einen DHCP-Server, weil der Client zu diesem Zeitpunkt ja noch gar keine IP-Adresse hat.


Ich bin mir gerade nicht sicher ob zB Siemens Limited oder Ethernet Broadcasts einsetzt, um Siemens-Geräte zu finden, aber unterm Strich kommt es auf dasselbe raus: Es werden auch Siemens-Geräte gefunden, die eine IP aus einem anderen Subnetz haben, aber zB am selben Switch angeschlossen ist (ohne VLANs selbstverständlich).

Im vorliegenden Fall nützt das aber nichts, weil ein Gerät auch explizit auf Broadcasts antworten muss. So wie eben nur DHCP-Server auf einen Broadcast mit einem DHCP-DISCOVER Paket reagieren und alle normalen Geräte dieses Paket ignorieren. Deswegen ist es leider auch nicht so einfach, ein Gerät mit unbekannter IP-Adresse zu finden. Mit Glück sieht man mit WireShark zB ARP-Requests (ebenfalls Broadcasts) vom fraglichen Gerät, weil es darüber versucht, sein Standardgateway zu finden bzw zu erreichen. Dann taucht bei WireShark sporadisch ein "Who has 192.168.1.1? Tell 192.168.1.23" auf obwohl man sich im 192.168.178.0er Subnetz befindet.
 
  • Gefällt mir
Reaktionen: Linuxlink und Nilson
IBISXI schrieb:
Kann ich auf dem Rechner 10.0.0.10 feststellen ob 192.168.0.10 Broadcastet? Wach ist? Was auch immer?
Das kannst du selbst im gleichen Netzwerkbereich nicht sicherstellen. Kein Gerät ist verpflichtet zu antworten. Ebensowenig wie auf einen Ping.
Ohne eine managed Switch hast du überhaupt keine Möglichkeit sicher festzustellen, welche Geräte vorhanden sind


Was hast du eigentlich vor?
 
  • Gefällt mir
Reaktionen: Raijin, Skysnake und Sebbi
Hy, danke für die zahlreichen Antworten.

rg88 schrieb:
Was hast du eigentlich vor?
Bei Geräten mit unbekannter Subnet wäre es ganz hilfreich, diese über Broadcast zu finden.

Raijin schrieb:
Ein Broadcast geht an die MAC FF-FF-FF-FF-FF-FF
Wie kann man unter Windows eine IP- oder Ethernet Broadcast Suche durchführen? Gibt es dafür Tools oder welche Befehle verwendet man? Ist mir bisher noch nicht gelungen...

madmax2010 schrieb:
nimm halt zmap. damit bekommst du im zweifelsfall den kompletten ipscpace in ca 10 minuten durch..
zmap kann in 10min das gesamte Netzwerk durchsuchen - nicht nur den aktuellen IP-Bereich? Dachte das arbeitet auch mit Ping wie nmap?

Danke, mfg
 
Edwin1966 schrieb:
Wie kann man unter Windows eine IP- oder Ethernet Broadcast Suche durchführen? Gibt es dafür Tools oder welche Befehle verwendet man? Ist mir bisher noch nicht gelungen...
Es gibt keine allgemeingültige "Broadcast Suche". Ein Broadcast ist lediglich ein Nachrichtentyp, der an alle Teilnehmer im Netzwerk verteilt wird. Das sagt noch lange nichts über den Inhalt der Nachricht aus und erst recht nicht wer auf diese Nachricht reagiert.

Stell dir einen großen Saal mit 100 Leuten vor, teilweise in kleine Gespräche vertieft. Plötzlich geht jemand auf die Bühne und ruft in den Saal: "Wer hat ein Intimpiercing?" Ich denke, dass es nachvollziehbar ist, dass nicht alle antworten, die tatsächlich eines haben - wenn überhaupt jemand darauf antwortet.
Genau so verhält es sich mit Broadcasts. Ein Broadcast ruft ins Netzwerk, aber wer darauf antwortet steht auf einem anderen Blatt.

Wenn ein Gerät beispielsweise eine Nachricht an ein anderes Gerät im Netzwerk schicken will, aber nur dessen IP-Adresse kennt, sendet es einen ARP-Request per Broadcast ins Netzwerk, um die MAC-Adresse des Ziels herauszufinden. In einem ARP-Request steht sinngemäß drin "Wer hat die IP 192.168.1.23? Antwort an 192.168.1.24" - gesendet an die Broadcast-MAC FF-FF-FF-FF-FF-FF.
ALLE Netzwerkteilnehmer empfangen diesen Broadcast, aber nur EINER antwortet darauf, nämlich das Gerät mit der angefragten IP, direkt an den Sender des Requests.

Nur weil ein Broadcast alle Teilnehmer des Netzwerks erreicht, heißt das noch lange nicht, dass sie auch darauf antworten. Wie ich am Beispiel von Siemens dargelegt habe, hat Siemens in deren Geräte eine Antwort-Funktion eingebaut, aber auch nur als Antwort auf die Siemens-eigene Device Discovery per Siemens-spezifischem Broadcast, der mutmaßlich folgenden Inhalt hat "Hey! Siemensgeräte bitte bei mir melden!"


Ich kenne zmap jetzt nicht im Detail, aber auch da bezweifle ich, dass man Geräte mit IP-Adressen außerhalb des eigenen Subnetzes finden kann. Die zugrundeliegenden Technologien im Netzwerk sind prinzipiell darauf ausgelegt, dass alle benachbarten Teilnehmer im selben Subnetz liegen und alle Geräte aus anderen Subnetzen über Router/Gateways zu erreichen sind. Einen "finde alle Geräte im Netzwerk ungeachtet ihrer IP-Adresse"-Befehl wird auch zmap nicht haben - und wenn doch, würde mich interessieren wie sie das technisch anstellen...
 
  • Gefällt mir
Reaktionen: Drewkev
Zurück
Oben