![]() |
Alle IPs im Netz
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 |
AW: Alle IPs im Netz
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.
|
AW: Alle IPs im Netz
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. |
AW: Alle IPs im Netz
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) |
AW: Alle IPs im Netz
Ist da
![]() |
AW: Alle IPs im Netz
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.
|
AW: Alle IPs im Netz
Welches Netscan meinst du denn, oder das NetPScan von NirSoft ?
|
AW: Alle IPs im Netz
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 |
AW: Alle IPs im Netz
Zitat:
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. :) Zitat:
|
AW: Alle IPs im Netz
Schau mal bitte hier
![]() 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) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz