AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi PC's im LAN finden (aber alle...)
Thema durchsuchen
Ansicht
Themen-Optionen

PC's im LAN finden (aber alle...)

Ein Thema von Mr_G · begonnen am 2. Sep 2004 · letzter Beitrag vom 6. Sep 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Mr_G
Mr_G

Registriert seit: 2. Sep 2004
Ort: Duisburg
468 Beiträge
 
Delphi 2006 Professional
 
#1

PC's im LAN finden (aber alle...)

  Alt 2. Sep 2004, 20:05
Also:
Ich möchte gerne die PC's auflisten die ich im LAN habe...
Nach einiger suche habe ich eine Menge Sachen gefunden wie z.B. die Funktion ScanNetworkResources etc.
Doch egal wie und mit welchen Tools auch immer ich mein LAN scanne kein Proggi findet einen Debian- Rechner der hier im LAN ist.

Meine Frage nun: Hätte jemand einen Ansatz wie ich alle PC's finden könnte ohne gleich den gesamten IP-Bereich zu Scannen und hat viellicht jemand mit anderen Rechneren ob Linux oder Windoof ähnliche Erfahrungen?

Danke im Vorraus Mr_G
Jan
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#2

Re: PC's im LAN finden (aber alle...)

  Alt 2. Sep 2004, 20:55
Zitat von Mr_G:
Meine Frage nun: Hätte jemand einen Ansatz wie ich alle PC's finden könnte ohne gleich den gesamten IP-Bereich zu Scannen
Nein. Und zwar aus dem Grund weil es keinen gibt.
Wenn Du auf die WinAPI zugreifst kann man logischerweise nur Rechner finden, die auf andere Windows API Calls reagieren bzw. noch das Protokoll netbios verwenden.

Weder das eine noch das andere ist bei Linux der Fall, ausser man installiert z.B. Samba.

Um einen Linux-Rechner zu finden ist tatsächlich der einzige Weg, alle IP's zu scannen und ggf. den Hostname einzeln abzufragen. Und selbst da kannst Du massive Probleme bekommen, wenn der Rechner 'hardened' ist, will heissen auf keinem Port auf antworten Reagiert ausser auf denen, die wirklich für Services verwendet werden.

Ist der Rechner dann noch mit Portknocking gesichert ist er, obwohl er mit den richtigen Kenntnissen ansprechbar ist, de facto vollständig unsichtbar.

Die Einzige Möglichkeit so einen Rechner dann noch herauszufinden wäre, der Netzwerkkarte im eigenen Rechner Stück für Stück jede mögliche IP zuzuweisen, die nicht bereits sichtbar belegt ist. Nur wenn man dann einen IP-Konflikt im Netz bemerkt, hat man einen Treffer.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von Mr_G
Mr_G

Registriert seit: 2. Sep 2004
Ort: Duisburg
468 Beiträge
 
Delphi 2006 Professional
 
#3

Re: PC's im LAN finden (aber alle...)

  Alt 2. Sep 2004, 21:14
Danke für die schnelle Antwort...
Ich werde mich dann mit den Rechnern die ich finde begnügen...
Jan
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#4

Re: PC's im LAN finden (aber alle...)

  Alt 3. Sep 2004, 10:21
ip's scannen ? ping ?

versucht mal euer glueck mit arp. schickt einfach ein who has <ip> rum.
das geht schneller als ein connect auf jede ip.
  Mit Zitat antworten Zitat
Benutzerbild von Mr_G
Mr_G

Registriert seit: 2. Sep 2004
Ort: Duisburg
468 Beiträge
 
Delphi 2006 Professional
 
#5

Re: PC's im LAN finden (aber alle...)

  Alt 3. Sep 2004, 12:17
Hmm...
Wenn ich das richtig verstehe soll ich sozusagen fragen wer eine bestimmte IP hat...

1. Wie genau soll ich das denn machen?
2. Wenn ein Rechner die IP hat antwortet er oder macht sich irgendwie bemerkbar?
3. Wäre der Zeitaufwand nicht immernoch enorm weil man dies mit jeder möglichen IP machen müsste?
Jan
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.840 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

Re: PC's im LAN finden (aber alle...)

  Alt 3. Sep 2004, 13:45
Zitat von Mr_G:
Wenn ich das richtig verstehe soll ich sozusagen fragen wer eine bestimmte IP hat...
Genau.
Die Rechner haben Netzwerkkarten. Diese Netzwerkkarten haben "physikalische Adressen" (= Mac-Adresse = Media Access Control). Diese werden in der Regel nicht geändert. (Es gibt auch Karten bei denen man die Mac-Adresse ändern kann) Das bedeutet, das jeder Rechner über seine Netzwerkkarte eine eindeutige Adresse hat. (Osi Schicht 2)

Aber mit den MAC Adressen hat man normalerweise nicht viel zu tun. Im Internet wird z.B. das Protokoll TCP/IP verwendet. Damit im Zielnetz der Router weiß welche physikalische Adresse denn nun welcher IP zugeordnet ist gibt es ARP (= Address Resolution Protocol).

Tipp man in der Kommandozeile folgendes ein:
Code:
arp -a
Es wird dann eine Liste aller IP Adressen mit der zugehörigen MAC Adresse angezeigt die auf Deinem Rechner gecached wurden.

Weitere Infos findest Du z.B. hier:
Zitat von Mr_G:
1. Wie genau soll ich das denn machen?
2. Wenn ein Rechner die IP hat antwortet er oder macht sich irgendwie bemerkbar?
3. Wäre der Zeitaufwand nicht immer noch enorm weil man dies mit jeder möglichen IP machen müsste?
Es gibt in der Regel einige Geräte die solche ARP-Listen verwalten.
z.B. ein "arp -a" auf einem Server auf den Alle zugreifen.
Einige Router erlauben es auch die Adresstabellen einzusehen / exportieren.

Das wären 2 Ansatzpunkte.

Du bekommst dann eine Liste mit allen Mac-Adressen und zugehörigen IP Adressen.

Diese Liste sagt aber noch nichts aus. Welche Geräte sich hinter den IP-Adressen verbergen musst du dann auf einem anderem Weg herausfinden.

Die ersten Bytes der MAC Adresse beinhalten eine Kodierung des Herstellers der Netzwerkkarte.
http://coffer.com/mac_find/

Netzwerkdrucker, Router, IP Telefone, ... haben auch eine MAC Adresse / IP Adresse

Ich hoffe diese Infos helfen weiter

btw: Fast vergessen: herzlich willkommen bei der DP
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#7

Re: PC's im LAN finden (aber alle...)

  Alt 3. Sep 2004, 14:08
Zitat von Mr_G:
3. Wäre der Zeitaufwand nicht immernoch enorm weil man dies mit jeder möglichen IP machen müsste?
NIcht wirklich, denn die Anzahl der 'möglichen' IP's hängt vom verwendeten Netz ab.
Beispiel: 192.168.0.0. mit einer Netmask von 255.255.255.0 - nur 256 Mögliche IP-Adressen im Netz, von denen aber schonmal 2 wegfallen (Netz & Broadcast Adresse), also nur 254 mögliche Rechner, einer davon ist der eigene, also maximal 253 zu scannende Adressen.

Wir bewegen uns hier aber definitiv im Sekunden- und nicht im Minutenbereich.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von Mr_G
Mr_G

Registriert seit: 2. Sep 2004
Ort: Duisburg
468 Beiträge
 
Delphi 2006 Professional
 
#8

Re: PC's im LAN finden (aber alle...)

  Alt 3. Sep 2004, 14:13
Ok... Erstmal vielen Dank für diese ausführliche Antwort!

Ich wollte mein Proggi jedoch nicht auf ein bestimmtes System/Netzwerk zuschneiden sprich etwas allgemeiner halten und natürlich auch einfach für den Benutzer gestalten... somit kann ich diese Lösung wahrscheinlich nur eingeschränkt auf das aktuelle Proggi anwenden...

Trozdem vielen Dank

@Phoenix: Wäre der Zeitaufand nicht sowieso minimal gering weil man ja sowieso nur eine Liste abruft...

P.S.: ...
Jan
  Mit Zitat antworten Zitat
Benutzerbild von Mr_G
Mr_G

Registriert seit: 2. Sep 2004
Ort: Duisburg
468 Beiträge
 
Delphi 2006 Professional
 
#9

Re: PC's im LAN finden (aber alle...)

  Alt 3. Sep 2004, 16:05
Hmm...
Nach etwas suchen ist mir noch etwas anderes in den Weg gestolpert:
Broadcasts - So wie ich das verstehe kann man einen Broadcast/ eine Nachricht so an alle PC's im Sub-Netz schicken... Könnte man damit in Bezug auf mein Problem vielleicht etwas reißen?
Jan
  Mit Zitat antworten Zitat
Benutzerbild von Bowler
Bowler

Registriert seit: 8. Sep 2003
Ort: Bochum
148 Beiträge
 
Delphi XE7 Enterprise
 
#10

Re: PC's im LAN finden (aber alle...)

  Alt 3. Sep 2004, 16:20
nur wenn auf allen PCs im Netz ein UDP-Server läuft, der sich auf so ein Broadcast meldet.
Dann würdest du einen UDP-Server mit einem definierten Port auf jedem Rechner laufen lassen, und der Client schickt dann auf diesem Port ein Broadcast. Darauf können die Server dann reagieren uns "Ja ich bin da" zurück schicken, oder sowas.
Christian Rüsken
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz