Skip to main content

Erreichbarkeitsprüfung per Ping

Zweck des Skripts

Dieses Skript prüft eine definierte Liste von IP-Adressen auf Erreichbarkeit per Ping (ICMP). Für erreichbare Systeme wird zudem versucht, den DNS-Hostnamen aufzulösen. Die Ergebnisse werden als einfache Textdatei auf dem Desktop des ausführenden Benutzers gespeichert.

Einsatzszenario

Das Skript ist nützlich für:

  • Inventarisierungen,

  • Netzwerkscans zur schnellen Statusübersicht,

  • Überprüfung von Netzwerksegmenten,

  • Vorbereitung oder Kontrolle von DHCP-/DNS-Konfigurationen.

Voraussetzungen

  • PowerShell 5.1 oder neuer

  • Netzwerkverbindung zu den Ziel-IP-Adressen

  • DNS-Auflösung muss im Netzwerk funktionieren (für Hostnamen)

 

# Liste der IP-Adressen
$IPAddresses = @(
    "XXX.XXX.XXX.XXX",
    "XXX.XXX.XXX.XXX"
)

# Pfad zur Ausgabe-Datei (Desktop)
$DesktopPath = [Environment]::GetFolderPath("Desktop")
$OutputFile = Join-Path $DesktopPath "ip-auflistung.txt"

# Bestehende Datei löschen, falls vorhanden
if (Test-Path $OutputFile) {
    Remove-Item $OutputFile
}

# IPs auf Erreichbarkeit prüfen
foreach ($IP in $IPAddresses) {
    Write-Host "Prüfe IP: $IP"
    if (Test-Connection -ComputerName $IP -Count 1 -Quiet) {
        try {
            # Hostname abfragen
            $HostName = [System.Net.Dns]::GetHostEntry($IP).HostName
        } catch {
            # Wenn Hostname nicht aufgelöst werden kann
            $HostName = "Hostname nicht gefunden"
        }
        # Ergebnis in Datei schreiben
        "$IP - $HostName" | Out-File -Append -FilePath $OutputFile
    }
}

Write-Host "Fertig! Ergebnisse wurden in $OutputFile gespeichert."