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.

Was ist eine IP Adresse?

Die IP-Adresse (Internet Protocol-Adresse) ist eine eindeutige numerische Kennung, die jedem mit dem Internet verbundenen Gerät zugewiesen wird. Diese Adresse dient dazu, das Gerät im Netzwerk zu identifizieren und es ermöglicht die Kommunikation zwischen verschiedenen Geräten über das Internetprotokoll (IP).

Es gibt zwei Arten von IP-Adressen: IPv4 (Internet Protocol Version 4) und IPv6 (Internet Protocol Version 6). IPv4-Adressen bestehen aus vier durch Punkte getrennten Zahlen im Dezimalformat (z. B. 192.168.0.1), während IPv6-Adressen eine längere Zeichenkette von Ziffern und Buchstaben verwenden, um eine viel größere Anzahl von möglichen Adressen zu ermöglichen.

IP-Adressen werden in Computernetzwerken verwendet, um den Datenverkehr zu steuern und sicherzustellen, dass Informationen an das richtige Ziel gesendet werden. Sie spielen eine grundlegende Rolle im Internet, da sie die Grundlage für die Übertragung von Daten zwischen Geräten bilden.

Freie IP Adressen finden

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.

Batch Datei mit CMD

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 1

@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

Script 2

@echo off
setlocal enabledelayedexpansion

REM Fügen Sie hier die zu pingenden IP-Adressen hinzu
set „ip_addresses=192.168.0.1 8.8.8.8“

REM Iteriere durch jede IP-Adresse und führe den Ping-Befehl aus
for %%i in (%ip_addresses%) do (
ping -n 4 %%i >nul 2>nul
if !errorlevel! equ 0 (
echo %%i ist erreichbar.
) else (
echo %%i ist nicht erreichbar.
)
)

endlocal

Fügen Sie die IP-Adressen, die Sie pingen möchten, zur Variable ip_addresses hinzu, getrennt durch Leerzeichen. Das Skript verwendet eine Schleife, um jede IP-Adresse nacheinander anzupingen, und gibt dann eine entsprechende Meldung aus, ob die Adresse erreichbar ist oder nicht.

Speichern Sie dieses Skript als Batch-Datei (z. B. ping_script.bat) und führen Sie es aus, um die Ping-Tests durchzuführen. Beachten Sie, dass einige IP-Adressen aufgrund von Firewall-Einstellungen oder anderen Netzwerkkonfigurationen möglicherweise nicht auf Pings antworten.

Powershell Script

# Fügen Sie hier die zu pingenden IP-Adressen hinzu

$ipAddresses = @(„192.168.0.1“, „8.8.8.8“)

foreach ($ip in $ipAddresses) {
$result = Test-Connection -ComputerName $ip -Count 4 -ErrorAction SilentlyContinue
if ($result) {
Write-Host „$ip ist erreichbar.“
} else {
Write-Host „$ip ist nicht erreichbar.“
}
}

Fügen Sie die IP-Adressen, die Sie pingen möchten, zum Array $ipAddresses hinzu. Das Skript verwendet die PowerShell-Cmdlet Test-Connection, um die Pings durchzuführen. Es gibt dann eine entsprechende Meldung aus, ob die Adresse erreichbar ist oder nicht.

Speichern Sie dieses Skript als PowerShell-Datei (z. B. PingScript.ps1) und führen Sie es aus, um die Ping-Tests durchzuführen. Beachten Sie, dass Sie möglicherweise die Ausführungsrichtlinie von PowerShell anpassen müssen, um das Skript auszuführen. Sie können dies tun, indem Sie in der PowerShell-Konsole den Befehl Set-ExecutionPolicy RemoteSigned ausführen (als Administrator).

IP Adressen anpingen

Das Anpingen von IP-Adressen ist ein häufig verwendetes Netzwerkdiagnose-Tool, das mehrere nützliche Zwecke erfüllen kann:

  1. Überprüfung der Erreichbarkeit: Das Anpingen ermöglicht es Ihnen, die Erreichbarkeit eines Geräts oder Hosts im Netzwerk zu überprüfen. Wenn ein Gerät auf Pings antwortet, deutet dies darauf hin, dass es aktiv ist und im Netzwerk erreichbar ist.
  2. Netzwerkstatus überwachen: Administratoren verwenden Ping, um den Status von Geräten oder Hosts in einem Netzwerk zu überwachen. Dies ist besonders wichtig, um potenzielle Netzwerkprobleme, Ausfälle oder Verbindungsprobleme frühzeitig zu erkennen.
  3. Fehlerdiagnose: Wenn eine Verbindung zu einem bestimmten Host nicht erfolgreich ist, kann das Ping-Tool Hinweise auf die Art des Fehlers geben. Fehlschlagende Pings können auf Netzwerkprobleme, fehlerhafte IP-Konfigurationen oder ausgeschaltete Geräte hinweisen.
  4. Bestimmung der Latenz: Ping misst die Round-Trip-Zeit zwischen dem Absenden eines Pakets und dem Empfangen der Antwort. Dies ermöglicht die Bewertung der Netzwerkleistung und die Identifizierung von Latenzproblemen.
  5. Netzwerkkonfiguration testen: Ping kann verwendet werden, um die Funktionalität von Routern, Switches und Firewalls zu überprüfen. Dies hilft bei der Überwachung und Fehlerbehebung von Netzwerkkomponenten.
  6. DNS-Überprüfung: Ping kann verwendet werden, um zu überprüfen, ob DNS-Namen in IP-Adressen aufgelöst werden können. Dies ist nützlich, um DNS-Konfigurationsprobleme zu identifizieren.

Es ist wichtig zu beachten, dass einige Geräte oder Netzwerke so konfiguriert sein können, dass sie auf Pings nicht antworten oder Pings blockieren. Daher sollte das Fehlen einer Antwort nicht immer als ein Problem interpretiert werden. In vielen Fällen ist das Pingen jedoch ein schnelles und einfaches Werkzeug zur Fehlerbehebung und Netzwerküberwachung.

Schutz vor IP Adressen anpingen

Wenn Sie Ihre Systeme vor dem Pingen schützen möchten, können Sie verschiedene Maßnahmen ergreifen, um unerwünschte Ping-Anfragen zu blockieren oder zu begrenzen. Hier sind einige Möglichkeiten, wie Sie den Schutz vor Ping-Anfragen erhöhen können:

  1. Firewall-Konfiguration:
    • Konfigurieren Sie die Firewall-Einstellungen auf Ihren Geräten oder auf Ihrem Netzwerk, um eingehende Ping-Anfragen zu blockieren.
    • Viele Firewalls bieten spezifische Einstellungen für das Blockieren von ICMP (Internet Control Message Protocol), das für Ping-Anfragen verwendet wird.
  2. Router-Einstellungen:
    • Überprüfen Sie die Einstellungen Ihres Routers und deaktivieren Sie gegebenenfalls die Möglichkeit, auf Ping-Anfragen zu antworten.
    • Einige Router haben spezifische Einstellungen wie „ICMP Echo Reply“ oder „Ping Response“, die Sie deaktivieren können.
  3. Hostbasierte Firewall:
    • Nutzen Sie hostbasierte Firewalls auf Ihren Computern, um Ping-Anfragen zu blockieren.
    • Konfigurieren Sie die Firewall so, dass sie ICMP-Anfragen ablehnt.
  4. Security Group Policies (in Cloud-Umgebungen):
    • In Cloud-basierten Umgebungen können Sie Security Group Policies verwenden, um den Datenverkehr zu steuern. Blockieren Sie ICMP-Anfragen in den entsprechenden Richtlinien.
  5. Network Intrusion Prevention System (NIPS):
    • Implementieren Sie ein Network Intrusion Prevention System, das den Netzwerkverkehr überwacht und unerwünschten ICMP-Verkehr blockieren kann.

Es ist wichtig zu beachten, dass das Blockieren von Ping-Anfragen die Kommunikation mit Ihrem Netzwerk oder Ihren Systemen beeinträchtigen kann, insbesondere wenn Sie Ping für die Netzwerkdiagnose verwenden. Bevor Sie ICMP-Anfragen blockieren, sollten Sie sicherstellen, dass dies mit Ihren Netzwerkanforderungen und Diagnosewerkzeugen kompatibel ist.

Bei der Implementierung von Sicherheitsmaßnahmen sollten Sie sicherstellen, dass Sie die Auswirkungen auf Ihre spezifische Umgebung verstehen und möglicherweise alternative Diagnosemethoden in Betracht ziehen, um die Netzwerkintegrität aufrechtzuerhalten.

0 Kommentare

Hinterlasse einen Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert