Startseite: Multimedia Blog > Admin > Mehrere IP Adressen anpingen – IP Adressbereich scannen

Mehrere IP Adressen anpingen – IP Adressbereich scannen

Script zum Pingen von mehreren IP Adressen. Prüfen welche IP Adressen noch frei sind. Gesamten IP Adressbereich scannen. Nicht genutzte IP Adressen finden. Script zum Scannen von IP Adressbereichen.

IP Adresse anpingen

Ich habe oft das Problem, freie IP Adressen im Netz zu finden. Ich vergebe die IP Adresse im Netzwerk über DHCP. Einige Clients und Server bekommen manuelle IP Adressen. Somit sind diese IP Adressen im DHCP Server nicht enthalten. Nicht eingetragene IP Adressen im DHCP Server sind nicht hundertprozentig verfügbar. Das konnte ich schon oft feststellen.

Für die Installation eines Servers oder Clients benötige ich eine freie IP Adresse. Eine frei IP Adresse kann ich mir aus dem DHCP Scope entnehmen. Da jedoch nicht alle Server und Clients über DHCP mit IP Adressen versorgt sind, muss ich prüfen, ob die ausgewählte IP Adresse wirklich frei ist. Über einen Ping kann ich schnell testen, ob die IP Adresse vergeben oder frei ist. Der Befehl dazu lautet ping IP Adresse. In meinem Beispiel habe ich die IP Adresse 192.168.10.35 angepingt.

Ping IP Adresse erreichbar

Ping IP Adresse erreichbar

In der Anzeige ist zu erkennen, dass die vier abgesendeten Pakete angekommen sind. Diese IP Adresse ist also vergeben. Eine IP Adresse darf im gleichen Netz nicht doppelt vergeben werden.

Zum weiteren Test pinge ich die IP Adresse 192.168.10.38 an. In der Grafik ist zu erkennen, dass alle vier Pakete nicht angekommen sind. Als Meldung erhalte ich Zeitüberschreitung der Anforderung. Die IP Adresse scheint frei zu sein.

Ping IP Adresse nicht erreichbar

Ping IP Adresse nicht erreichbar

Die Firewall kann jedoch auch so eingestellt sein, dass der Ping nicht durchgelassen wird. Die IP Adresse ist vergeben, lässt sich aber nicht anpingen.

Script zum anpingen mehrerer IP Adressen

Möchte ich mehrere IP Adressen in einem IP Adressbereich (192.168.10.x) anpingen, müsste ich für jede IP Adresse den Ping absetzen. Das ist sehr aufwendig und kostet Zeit. Zur Lösung dieses Problems kann ein Script verwendet werden.

In meinem Script erstelle ich eine txt Datei, mit den IP Adressen, die angepingt werden sollen. Diese txt Datei lese ich ein und pinge die IP Adressen aus der txt Datei an. Die txt Datei erstelle ich durch das Script. Diese Datei kann auch händisch erstellt werden. Trage einfach die IP Adressen ein, die angepingt werden sollen.

Das Ergebnis kannst du dir direkt in der CMD Box anschauen oder leitest es in eine txt Datei um. Ich lasse mir eine txt Datei erstellen.

Aufbau der txt Datei

Die IP Adressen müssen untereinander eingetragen werden.

192.168.10.36
192.168.10.38
192.168.10.39
192.168.0.10
10.100.25.13

Script

@ECHO OFF
REM IP Adressbereich angeben, wird in einer txt Datei gespeichert
for /l %%a in (1, 1, 254) do echo 10.100.10.%%a >> ip-range.txt

setlocal enabledelayedexpansion
echo.
:IPTEST
CLS
echo ***********************************************
echo.
for /f %%i in (IP-Bereich.txt) do (
for /f „tokens=1,2,3“ %%x in (‚ping -n 1 -a %%i ^&^& echo SERVER_IST_ONLINE‘) do (
if %%x==SERVER_IST_ONLINE (set SERVER_STATUS=frei) else (set SERVER_STATUS=vergeben)
)
echo %%i ist !SERVER_STATUS! >> Ergebnis.txt
::echo %%i ist !SERVER_STATUS!
echo.
)
echo ***********************************************
timeout 60
GOTO IPTEST



Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.