it-swarm.com.de

Ping alle Adressen im Netzwerk, Windows

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. 

45

Ö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

98
RGG

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.

27
egmackenzie

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.

15
spetzz

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

5
Paul Allen

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.

3
Vigbjorn

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.

2
Benjamin Trent

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)

  • Eingabeaufforderung im Admin-Modus öffnen (R.C.-Start im Menü)
  • arp -d <- lösche die Arp-Liste!
  • ping 10.1.10.255 <- Nehmen Sie Ihr Subnetz und pingen Sie '255' an alle
  • arp -a
  • iPhone WiFi eingeschaltet
  • ping 10.1.10.255
  • arp -a

Siehe unten zum Beispiel:

 enter image description here

Hier ist ein Nizza Bericht über die Verwendung von 'arp -d' hier bei Interesse -

1
J-Dizzle

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
1
Paul Lammertsma
@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.
0