Ist es in Windows cmd line möglich, alle Netzwerkadressen (mit Ping o. Ä.) Zu überprüfen, um festzustellen, welche Adressen verwendet werden bzw. aktive Geräte haben:
dh. etwas, das so etwas wie das Folgende macht:
for i = 0 to 255
ping 192.168.1.i //Print this
end
Dies ist offensichtlich Pseudo-Code. Ich frage mich, ob es in Windows cmd möglich ist, so etwas zu tun. Es wäre toll, wenn Sie keine Batch-Datei benötigen, aber ich verstehe, ob dies unmöglich ist.
PS. Bitte erwähne auch, ob es ein Programm dafür gibt, aber es wäre schön, wenn du es in cmd machst.
Öffnen Sie die Eingabeaufforderung und geben Sie Folgendes ein:
FOR /L %i IN (1,1,254) DO ping -n 1 192.168.10.%i | FIND /i "Reply">>c:\ipaddresses.txt
Ändern Sie 192.168.10 entsprechend Ihrem eigenen Netzwerk.
Bei Verwendung von -n 1 fordern Sie nur 1 Paket an, anstatt an die üblichen 4 Pakete.
Der obige Befehl sendet ein Ping an alle IP-Adressen im Netzwerk 192.168.10.0 und erstellt ein Textdokument im Laufwerk C:\namens ipaddresses.txt. Dieses Textdokument sollte nur IP-Adressen enthalten, die auf die Ping-Anforderung geantwortet haben.
Es dauert zwar etwas länger, aber Sie können die IP-Adressen auch in Hostnamen auflösen, indem Sie einfach -a zum Befehl ping hinzufügen.
FOR /L %i IN (1,1,254) DO ping -a -n 1 192.168.10.%i | FIND /i "Reply">>c:\ipaddresses.txt
Dies ist von Hier
Hoffe das hilft
Ich weiß, dass dies eine späte Antwort ist, aber es ist eine nette Methode, die Broadcast-Adresse zu pingen, die Ihren lokalen Arp-Cache auffüllt.
Dies kann dann durch Ausführen von arp -a angezeigt werden, in dem alle Adressen in Ihrer lokalen Arp-Tabelle aufgeführt werden.
ping 192.168.1.255
arp -a
Hoffentlich ist dies eine nette Option, die die Leute nutzen können.
Das beste Dienstprogramm in Bezug auf die Geschwindigkeit ist Nmap .
write @ cmd-Eingabeaufforderung:
Nmap -sn -oG ip.txt 192.168.1.1-255
dadurch werden alle IP-Adressen des angegebenen Bereichs per Ping angesprochen und in einer einfachen Textdatei gespeichert
Es dauert nur 2 s, um 255 hosts mit Nmap zu scannen.
Dieser Beitrag stellt die gleiche Frage, aber für Linux - Sie könnten es hilfreich finden. Senden Sie einen Ping an jede IP in einem Subnetz
nmap ist wahrscheinlich das beste Werkzeug, um das Host-Betriebssystem zu identifizieren und schneller zu sein. Es ist für die Windows-Plattform auf der Website nmap.org verfügbar
Vorausgesetzt, die Windows-Box befindet sich im selben Subnetz:
für/L% a in (1,1.254) Starten Sie Ping 192.168.0.% a
Dies dauert weniger als 15 Sekunden und
arp -a
wird jeden lebenden Host zurückgeben.
Der schnellste Weg, den ich in Windows kenne.
Alles, was Sie tun möchten, ist zu sehen, ob Computer mit dem Netzwerk verbunden sind, und ihre IP-Adressen zu sammeln. Sie können den angryIP-Scanner verwenden: http://angryip.org/ , um zu sehen, welche IP-Adressen in einem bestimmten Subnetz oder einer Gruppe von Subnetzen verwendet werden.
Ich habe dieses Tool als sehr hilfreich empfunden, wenn ich herausfinden möchte, welche IPs verwendet werden und sich nicht in meinem DHCP befinden.
Eine Erweiterung und sinnvolle Ergänzung zu egmackenzies "arp -a" -Lösung für Windows -
Windows Beispiel für die Suche nach meinem iPhone im WiFi-Netzwerk
(vor: iPhone WiFi deaktiviert)
Siehe unten zum Beispiel:
Hier ist ein Nizza Bericht über die Verwendung von 'arp -d' hier bei Interesse -
In Batch-Skripts scheint sich anscheinend einiges geändert zu haben, und die oben genannte Lösung von DGG führt jetzt zum Absturz der Eingabeaufforderung.
Die folgende Lösung hat für mich funktioniert:
@echo off
set /a n=0
:repeat
set /a n+=1
echo 192.168.1.%n%
ping -n 1 -w 500 192.168.1.%n% | FIND /i "Reply">>ipaddresses.txt
if %n% lss 254 goto repeat
type ipaddresses.txt
@ECHO OFF
IF "%SUBNET%"=="" SET SUBNET=10
:ARGUMENTS
ECHO SUBNET=%SUBNET%
ECHO ARGUMENT %1
IF "%1"=="SUM" GOTO SUM
IF "%1"=="SLOW" GOTO SLOW
IF "%1"=="ARP" GOTO ARP
IF "%1"=="FAST" GOTO FAST
REM PRINT ARP TABLE BY DEFAULT
:DEFAULT
ARP -a
GOTO END
REM METHOD 1 ADDRESS AT A TIME
:SLOW
ECHO START SCAN
ECHO %0 > ipaddresses.txt
DATE /T >> ipaddresses.txt
TIME /T >> ipaddresses.txt
FOR /L %%i IN (1,1,254) DO ping -a -n 2 192.168.%SUBNET%.%%i | FIND /i "TTL=" >> ipaddresses.txt
GOTO END
REM METHOD 2 MULTITASKING ALL ADDRESS AT SAME TIME
:FAST
ECHO START FAST SCANNING 192.168.%SUBNET%.X
set /a n=0
:FASTLOOP
set /a n+=1
ECHO 192.168.%SUBNET%.%n%
START CMD.exe /c call ipaddress.bat 192.168.%SUBNET%.%n%
IF %n% lss 254 GOTO FASTLOOP
GOTO END
:SUM
ECHO START SUM
ECHO %0 > ipaddresses.txt
DATE /T >> ipaddresses.txt
TIME /T >> ipaddresses.txt
FOR /L %%i IN (1,1,254) DO TYPE ip192.168.%SUBNET%.%%i.txt | FIND /i "TTL=" >> ipaddresses.txt
FOR /L %%i IN (1,1,254) DO DEL ip192.168.%SUBNET%.%%i.txt
type ipaddresses.txt
GOTO END
:ARP
ARP -a >> ipaddresses.txt
type ipaddresses.txt
GOTO END
:END
ECHO DONE WITH IP SCANNING
ECHO OPTION "%0 SLOW" FOR SCANNING 1 AT A TIME
ECHO OPTION "%0 SUM" FOR COMBINE ALL TO FILE
ECHO OPTION "%0 ARP" FOR ADD ARP - IP LIST
ECHO PARAMETER "SET SUBNET=X" FOR SUBNET
ECHO.