Benutzer mit den meisten Antworten
Test Internetconnection

Frage
-
Hallo
Ich möchte von einem Tools-Server (Windows Server 2012, Powershell 3.0) ein Script laufen lassen, welches von einer Serverliste überprüft, ob diese Internetconnection http haben.
Den Befehlt Test-Netconnection kann ich nicht verwenden, da es ein älterer Server ist. Sollte es nur mit diesem Befehl gehen, bin ich auch für diese Variante zu haben.
Der Code sollte in etwa so aussehen:
$ServerListIsPingable = ("SRTOOLS2", "SRWF2006", "SRTSHH01") forech ($srv in $ServerListIsPingable){ Test-Internetconnection $srv www.google.com http }
Danke im Voraus
Gruss Miller
Antworten
-
Hallo Miller!
Um zu überprüfen ob ein Rechner Internet Connection hat oder nicht kann man rescourcen "anpingen" (über HTTP oder UDP) die quasi niemals down / offline sind, wie z.B Google.com oder Microsoft.com oder ...
Damit dies der Rechner tut der getestet werden soll benutzt man am besten das PowerSchell remoting.
$ServerListIsPingable = ("SRTOOLS2", "SRWF2006", "SRTSHH01") Invoke-Command -ComputerName $ServerListIsPingable -ScriptBlock { $WebClient = New-Object System.Net.WebClient # Falls ein Proxy vorhanden ist und dieser Proxy credential Transparent arbeitet, # nutzen wir die DefaultNetworkCredentials $WebClient.Proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials # Variable für das HttpPing Ergebnis $IsHttpPing = $False Try { # wir versuchen Microsoft.com zu erreichen, das ergebnis wird verworfen $Null = $WebClient.DownloadString('Http://www.Microsoft.com') # Http request war erfolgreich $IsHttpPing = $True } Catch { # fehler ausgeben (oder nicht) # Throw $_ } # Wenn $IsHttpPing = $False dann kein Internet, wenn $IsHttpPing = $True dann Internet "Internet connection auf Server $env:Computername ist: $IsHttpPing" }
PowerShell Artikel, Buchtipps und kostenlose PowerShell Tutorials + E-Books
auf der deutschsprachigen PowerShell Community
Mein 21 Teiliger PowerShell Video Grundlehrgang
Deutsche PowerShell Videos auf Youtube
Folge mir auf:
Twitter | Facebook | Google+- Als Antwort markiert MickMiller Montag, 2. Februar 2015 07:56
Alle Antworten
-
Hallo Miller!
Um zu überprüfen ob ein Rechner Internet Connection hat oder nicht kann man rescourcen "anpingen" (über HTTP oder UDP) die quasi niemals down / offline sind, wie z.B Google.com oder Microsoft.com oder ...
Damit dies der Rechner tut der getestet werden soll benutzt man am besten das PowerSchell remoting.
$ServerListIsPingable = ("SRTOOLS2", "SRWF2006", "SRTSHH01") Invoke-Command -ComputerName $ServerListIsPingable -ScriptBlock { $WebClient = New-Object System.Net.WebClient # Falls ein Proxy vorhanden ist und dieser Proxy credential Transparent arbeitet, # nutzen wir die DefaultNetworkCredentials $WebClient.Proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials # Variable für das HttpPing Ergebnis $IsHttpPing = $False Try { # wir versuchen Microsoft.com zu erreichen, das ergebnis wird verworfen $Null = $WebClient.DownloadString('Http://www.Microsoft.com') # Http request war erfolgreich $IsHttpPing = $True } Catch { # fehler ausgeben (oder nicht) # Throw $_ } # Wenn $IsHttpPing = $False dann kein Internet, wenn $IsHttpPing = $True dann Internet "Internet connection auf Server $env:Computername ist: $IsHttpPing" }
PowerShell Artikel, Buchtipps und kostenlose PowerShell Tutorials + E-Books
auf der deutschsprachigen PowerShell Community
Mein 21 Teiliger PowerShell Video Grundlehrgang
Deutsche PowerShell Videos auf Youtube
Folge mir auf:
Twitter | Facebook | Google+- Als Antwort markiert MickMiller Montag, 2. Februar 2015 07:56