AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Alle IPs im Netz

Ein Thema von Mattze · begonnen am 2. Aug 2017 · letzter Beitrag vom 4. Aug 2017
Antwort Antwort
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#1

Alle IPs im Netz

  Alt 2. Aug 2017, 18:09
Hallo,

ich suche nach einer möglichst schnellen Variante, alle existierenden IP-Adressen im LAN zu bekommen.
Alles anpingen und auf Antwort warten, ist einfach zu langsam.

Eigentlich möchte ich alle Netzressourcen auflisten.
Dazu nimmt man normalerweise WNetEnumResource.
Nun habe ich aber einen Drucker im LAN, der natürlich eine IP-Adresse hat und tadellos funktioniert, aber mit WNetEnumResource nicht aufgelistet wird.
Ich verstehe den aber trotzdem auch als Netzressource und möchte ihn mit auflisten.
(Ein anderer Drucker ist per WiFi im WLAN. Der wird mit WNetEnumResource aufgelistet! Wieso der und der andere nicht?)

UDP-Broadcast wäre vielleicht ganz gut, aber da sehe ich nicht durch. Wie kriege ich die Antwort da mit? Nur per Thread? Und antwortet der Drucker überhaupt auf ein Broadcast?

Gruß
Mattze
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Alle IPs im Netz

  Alt 2. Aug 2017, 18:23
Wie wäre es per SNMP? Speziell wenn es um Drucker geht. Setzt natürlich voraus, dass SNMP vom Drucker unterstützt wird (das macht eigentlich jeder neuere Drucker) und aktiviert ist.
  Mit Zitat antworten Zitat
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#3

AW: Alle IPs im Netz

  Alt 2. Aug 2017, 19:31
Hallo,

und wie macht man das mit SNMP?
Ich habe keinen Schimmer und stochere jetzt erst mal überall rum.

Gruß
Mattze

PS: Ach so: Alles unter Delphi 7 pro.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#4

AW: Alle IPs im Netz

  Alt 2. Aug 2017, 20:20
Und PING geht auch nur, wenn die Gegenseite überhaupt Lust hat und sich outen will.

PING: Du rufst dem Anderen (in einem bestimmten Haus, bzw. an seiner Adresse/IP) ein "Hallo" zu
und der Andere antwortet dir dann darauf. Aber er kann auch keine Lust haben und antwortet nicht, was aber nicht bedeutet, dass er nicht daheim ist.
Oder vielleicht sagt sich och der Türsteher (Firewall), dass er deinen Anruf nicht durch lässt.


Wenn du nicht einen bestimmten Rechner/Gerät suchst, sondern ein gewisses Programm (hier die Firmware des Druckers), dann versuche direkt bei ihm anzufragen, auf seinem Port (da, wo auch der Druckertreiber mit ihm redet).



Alternativ einen BROADCAST (Rundruf) ins Netz und darauf warten, dass sich die Anderen bei dir melden, anstatt jeden Einzelnen unter jeder verfügbaren IP zu suchen. (dazu würde auch SNMP zählen)
$2B or not $2B

Geändert von himitsu ( 2. Aug 2017 um 20:38 Uhr)
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#5

AW: Alle IPs im Netz

  Alt 2. Aug 2017, 20:33
Ist da Working with SNMP in Delphi was dabei?
  Mit Zitat antworten Zitat
Neumann

Registriert seit: 6. Feb 2006
Ort: Moers
536 Beiträge
 
Delphi 12 Athens
 
#6

AW: Alle IPs im Netz

  Alt 2. Aug 2017, 21:50
Falls man das nicht in ein eigenes Programm einbauen muss, ist Netscan für diesen Zweck gut geeignet. Wie das intern funktioniert kann ich nicht sagen, möglicherweise sendet es auch nur Pings.
Ralf
Gruß vom Niederrhein
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.116 Beiträge
 
Delphi 12 Athens
 
#7

AW: Alle IPs im Netz

  Alt 4. Aug 2017, 09:33
Welches Netscan meinst du denn, oder das NetPScan von NirSoft ?
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.800 Beiträge
 
Delphi 12 Athens
 
#8

AW: Alle IPs im Netz

  Alt 4. Aug 2017, 10:35
Um Multithreading wirst Du nicht herumkommen. Immerhin gilt es 254 Adressen abzufragen, und jede darf einen Timeout von ein paar Sekunden für sich beanspruchen. Ping finde ich gar nicht so schlecht, die meisten Geräte antworten von Haus aus auf einen Ping. SNMP ist natürlich auch eine Klasse Sache, nur etwas anspruchsvoller.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#9

AW: Alle IPs im Netz

  Alt 4. Aug 2017, 12:19
Um Multithreading wirst Du nicht herumkommen. Immerhin gilt es 254 Adressen abzufragen [...]
Er hat die Größe seines Netzwerkes ja noch nicht angesprochen.
Ich vermute zwar auch, dass es sich um ein /24 Netz handelt, aber es könnte ja auch ein /8 /16 oder /28 Netz sein. Er weiß. Dann würde es ziemlich lang dauern. Bei /28 kann man dann noch ohne Threads arbeiten. Das geht dann noch schnell genug.

SNMP ist natürlich auch eine Klasse Sache, nur etwas anspruchsvoller.
Die Indys haben eine TIdSNMP Komponente mit an Board. Die habe ich mal benutzt. Das ging eigentlich noch recht gut. SourceCode habe ich aktuell keinen parat. Es waren auch nur feste MIBs die ich abgefragt hatte.
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#10

AW: Alle IPs im Netz

  Alt 4. Aug 2017, 12:26
Schau mal bitte hier CodeCentral - Embarcadero - ID: 27482, NetUtils Pack v.2.1
Quelltexte zu 'ner Menge "Netzwerkkram" u. a. SnmpEye.

Compilierte Versionen sind im ZIP enthalten.

(Eine Anmeldung an der Seite ist erforderlich -> Developer Network and Registered User Login)
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:20 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