Test-Connection
Hiermee worden ICMP-echoaanvraagpakketten of pings verzonden naar een of meer computers.
Syntax
Test-Connection
[-TargetName] <string[]>
[-Ping]
[-IPv4]
[-IPv6]
[-ResolveDestination]
[-Source <string>]
[-MaxHops <int>]
[-Count <int>]
[-Delay <int>]
[-BufferSize <int>]
[-DontFragment]
[-TimeoutSeconds <int>]
[-Quiet]
[<CommonParameters>]
Test-Connection
[-TargetName] <string[]>
-Repeat
[-Ping]
[-IPv4]
[-IPv6]
[-ResolveDestination]
[-Source <string>]
[-MaxHops <int>]
[-Delay <int>]
[-BufferSize <int>]
[-DontFragment]
[-TimeoutSeconds <int>]
[-Quiet]
[<CommonParameters>]
Test-Connection
[-TargetName] <string[]>
-MtuSize
[-IPv4]
[-IPv6]
[-ResolveDestination]
[-TimeoutSeconds <int>]
[-Quiet]
[<CommonParameters>]
Test-Connection
[-TargetName] <string[]>
-Traceroute
[-IPv4]
[-IPv6]
[-ResolveDestination]
[-Source <string>]
[-MaxHops <int>]
[-TimeoutSeconds <int>]
[-Quiet]
[<CommonParameters>]
Test-Connection
[-TargetName] <string[]>
-TcpPort <int>
[-IPv4]
[-IPv6]
[-ResolveDestination]
[-Source <string>]
[-TimeoutSeconds <int>]
[-Quiet]
[<CommonParameters>]
Description
De Test-Connection cmdlet verzendt ICMP-echoaanvraagpakketten (Internet Control Message Protocol) of pings naar een of meer externe computers en retourneert de antwoorden op echoreacties. U kunt deze cmdlet gebruiken om te bepalen of er contact kan worden gemaakt met een bepaalde computer via een IP-netwerk.
U kunt de parameters gebruiken om Test-Connection zowel de verzendende als ontvangende computers op te geven, om de opdracht uit te voeren als achtergrondtaak, om een time-out en aantal pings in te stellen en om de verbinding en verificatie te configureren.
In tegenstelling tot de vertrouwde pingopdracht retourneert Test-Connection u een TestConnectionCommand+PingStatus-object dat u in PowerShell kunt onderzoeken. De parameter Quiet retourneert een Booleaanse waarde in een System.Boolean-object voor elke geteste verbinding. Als er meerdere verbindingen worden getest, wordt een matrix met Booleaanse waarden geretourneerd.
Voorbeelden
Voorbeeld 1: Echoaanvragen verzenden naar een externe computer
In dit voorbeeld worden echoaanvraagpakketten van de lokale computer naar de Server01-computer verzonden.
Test-Connection -TargetName Server01 -IPv4
Destination: Server01
Ping Source Address Latency BufferSize Status
(ms) (B)
---- ------ ------- ------- ---------- ------
1 ADMIN1 10.59.137.44 24 32 Success
2 ADMIN1 10.59.137.44 39 32 Success
3 ADMIN1 * * * TimedOut
4 ADMIN1 10.59.137.44 28 32 Success
Test-Connection gebruikt de parameter TargetName om de Server01-computer op te geven. Met de parameter IPv4 wordt het protocol voor de test opgegeven.
Een reeks TestConnectionCommand+PingStatus-objecten wordt verzonden naar de uitvoerstroom, één object per ping-antwoord van de doelcomputer.
Voorbeeld 2: Echoaanvragen verzenden naar verschillende computers
In dit voorbeeld worden pings vanaf de lokale computer verzonden naar verschillende externe computers.
Test-Connection -TargetName Server01, Server02, Server12
Voorbeeld 3: Parameters gebruiken om de testopdracht aan te passen
In dit voorbeeld worden de parameters gebruikt om Test-Connection de opdracht aan te passen. De lokale computer verzendt een pingtest naar een externe computer.
Test-Connection -TargetName Server01 -Count 3 -Delay 2 -MaxHops 255 -BufferSize 256
Test-Connection gebruikt de parameter TargetName om Server01 op te geven. De parameter Count geeft drie pings worden verzonden naar de Server01-computer met een vertraging van 2 seconden intervallen.
U kunt deze opties gebruiken wanneer het ping-antwoord naar verwachting langer duurt dan normaal, vanwege een uitgebreid aantal hops of een netwerkvoorwaarde met veel verkeer.
Voorbeeld 4: Een test uitvoeren als achtergrondtaak
In dit voorbeeld ziet u hoe u een Test-Connection opdracht uitvoert als een PowerShell-achtergrondtaak.
$job = Start-Job -ScriptBlock { Test-Connection -TargetName (Get-Content -Path "Servers.txt") }
$Results = Receive-Job $job -Wait
De Start-Job opdracht gebruikt de Test-Connection cmdlet om veel computers in een onderneming te pingen.
De waarde van de parameter TargetName is een Get-Content opdracht die een lijst met computernamen uit het Servers.txt bestand leest. De opdracht maakt gebruik van de cmdlet om de Start-Job opdracht uit te voeren als achtergrondtaak en slaat de taak op in de $job variabele.
De Receive-Job opdracht wordt geïnstrueerd totdat -Wait de taak is voltooid, waarna de resultaten worden opgehaald en opgeslagen in de $Results variabele.
Voorbeeld 5: Een sessie alleen maken als een verbindingstest slaagt
In dit voorbeeld wordt alleen een sessie op de Server01-computer gemaakt als ten minste één van de pings die naar de computer worden verzonden, slaagt.
if (Test-Connection -TargetName Server01 -Quiet) { New-PSSession -ComputerName Server01 }
De Test-Connection cmdlet pingt de Server01 computer, waarbij de parameter Quiet is opgegeven.
De resulterende waarde is $True als een van de vier pings slaagt. Als geen van de pings slaagt, is $Falsede waarde .
Als de Test-Connection opdracht een waarde $Trueretourneert, gebruikt de opdracht de New-PSSession cmdlet om de PSSession te maken.
Voorbeeld 6: de traceroute-parameter gebruiken
Geïntroduceerd in PowerShell 6.0 wijst de Traceroute-parameter een route toe tussen de lokale computer en de externe bestemming die u opgeeft met de parameter TargetName .
Test-Connection -TargetName www.google.com -Traceroute
Target: google.com
Hop Hostname Ping Latency Status Source TargetAddress
(ms)
--- -------- ---- ------- ------ ------ -------------
1 172.20.0.1 1 4 Success Lira 172.217.9.174
1 172.20.0.1 2 3 Success Lira 172.217.9.174
1 172.20.0.1 3 2 Success Lira 172.217.9.174
2 12.108.153.193 1 3 Success Lira 172.217.9.174
2 12.108.153.193 2 3 Success Lira 172.217.9.174
2 12.108.153.193 3 2 Success Lira 172.217.9.174
3 12.244.85.177 1 11 Success Lira 172.217.9.174
3 12.244.85.177 2 12 Success Lira 172.217.9.174
3 12.244.85.177 3 12 Success Lira 172.217.9.174
4 * 1 14 DestinationNetw… Lira 172.217.9.174
4 * 2 * TimedOut Lira 172.217.9.174
4 * 3 20 DestinationNetw… Lira 172.217.9.174
5 * 1 * TimedOut Lira 172.217.9.174
5 * 2 15 DestinationNetw… Lira 172.217.9.174
5 * 3 * TimedOut Lira 172.217.9.174
6 * 1 18 DestinationNetw… Lira 172.217.9.174
6 * 2 * TimedOut Lira 172.217.9.174
6 * 3 16 DestinationNetw… Lira 172.217.9.174
7 * 1 * TimedOut Lira 172.217.9.174
7 * 2 * TimedOut Lira 172.217.9.174
7 * 3 * TimedOut Lira 172.217.9.174
8 * 1 * TimedOut Lira 172.217.9.174
8 * 2 * TimedOut Lira 172.217.9.174
8 * 3 * TimedOut Lira 172.217.9.174
9 * 1 * TimedOut Lira 172.217.9.174
9 * 2 * TimedOut Lira 172.217.9.174
9 * 3 * TimedOut Lira 172.217.9.174
10 * 1 * TimedOut Lira 172.217.9.174
10 * 2 * TimedOut Lira 172.217.9.174
10 * 3 * TimedOut Lira 172.217.9.174
11 172.217.9.174 1 23 Success Lira 172.217.9.174
11 172.217.9.174 2 21 Success Lira 172.217.9.174
11 172.217.9.174 3 22 Success Lira 172.217.9.174
De Test-Connection opdracht wordt aangeroepen met de parameter Traceroute . De resultaten, die objecten zijn [Microsoft.PowerShell.Commands.TestConnectionCommand+TraceStatus] , zijn uitvoer naar de uitvoerstroom Geslaagd .
Parameters
Hiermee geeft u de grootte, in bytes, van de buffer die met deze opdracht wordt verzonden. De standaardwaarde is 32.
| Type: | Int32 |
| Aliases: | Size, Bytes, BS |
| Position: | Named |
| Default value: | 32 |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u het aantal echoaanvragen dat moet worden verzonden. De standaardwaarde is 4.
| Type: | Int32 |
| Position: | Named |
| Default value: | 4 |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u het interval tussen pings, in seconden.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Met deze parameter stelt u de vlag Niet fragmenten in de IP-header in. U kunt deze parameter gebruiken met de parameter BufferSize om de path MTU-grootte te testen. Zie het artikel Path MTU Discovery in Wikipedia voor meer informatie over Pad MTU Discovery.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Dwingt de cmdlet om het IPv4-protocol voor de test te gebruiken.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Dwingt de cmdlet om het IPv6-protocol voor de test te gebruiken.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee stelt u het maximum aantal hops in dat een ICMP-aanvraagbericht kan worden verzonden. De standaardwaarde wordt beheerd door het besturingssysteem. De standaardwaarde voor Windows 10 en hoger is 128 hops.
| Type: | Int32 |
| Aliases: | Ttl, TimeToLive, Hops |
| Position: | Named |
| Default value: | 128 |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Deze parameter wordt gebruikt om de path MTU-grootte te detecteren. De cmdlet retourneert een PingReply#MTUSize-object dat de pad-MTU-grootte bevat naar het doel. Zie het artikel Path MTU Discovery in Wikipedia voor meer informatie over Pad MTU Discovery.
| Type: | SwitchParameter |
| Aliases: | MtuSizeDetect |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Zorgt ervoor dat de cmdlet een pingtest uitvoert. Dit is de standaardmodus voor de Test-Connection cmdlet.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | True |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
De parameter Quiet retourneert een Booleaanse waarde. Als u deze parameter gebruikt, worden alle fouten onderdrukt.
Elke verbinding die wordt getest, retourneert een Booleaanse waarde. Als de parameter TargetName meerdere computers opgeeft, wordt een matrix met Booleaanse waarden geretourneerd.
Als een ping naar een bepaald doel slaagt, $True wordt deze geretourneerd.
Als alle pings naar een bepaald doel mislukken, $False wordt deze geretourneerd.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Zorgt ervoor dat de cmdlet continu pingaanvragen verzendt. Deze parameter kan niet worden gebruikt met de parameter Count .
| Type: | SwitchParameter |
| Aliases: | Continuous |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Zorgt ervoor dat de cmdlet probeert de DNS-naam van het doel op te lossen. Wanneer deze worden gebruikt in combinatie met de parameter Traceroute , worden indien mogelijk ook de DNS-namen van alle tussenliggende hosts opgehaald.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u de namen van de computers waar de ping afkomstig is. Voer een door komma's gescheiden lijst met computernamen in. Standaard is dit de lokale computer.
Notitie
Deze parameter wordt niet ondersteund in PowerShell-versies 6 en hoger. Als u deze parameter opgeeft, treedt er een fout op.
| Type: | String |
| Position: | Named |
| Default value: | Local computer |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u de computer(s) te testen. Typ de computernamen of typ IP-adressen in IPv4- of IPv6-indeling.
| Type: | String[] |
| Aliases: | ComputerName |
| Position: | 0 |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Hiermee geeft u het TCP-poortnummer op voor het doel dat moet worden gebruikt in de TCP-verbindingstest. De cmdlet probeert een TCP-verbinding te maken met de opgegeven poort op het doel.
Als er een verbinding kan worden gemaakt, $True wordt deze geretourneerd.
Als er geen verbinding kan worden gemaakt, $False wordt deze geretourneerd.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee stelt u de time-outwaarde voor de test in. De test mislukt als een antwoord niet wordt ontvangen voordat de time-out verloopt. De standaardwaarde is vijf seconden.
Deze parameter is geïntroduceerd in PowerShell 6.0.
| Type: | Int32 |
| Position: | Named |
| Default value: | 5 seconds |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Zorgt ervoor dat de cmdlet een traceroute-test uitvoert. Wanneer deze parameter wordt gebruikt, retourneert de cmdlet een TestConnectionCommand+TraceStatus object.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Invoerwaarden
None
U kunt geen invoer doorsluisen naar deze cmdlet.
Uitvoerwaarden
TestConnectionCommand+PingStatus, TestConnectionCommand+TraceStatus, Boolean, TestConnectionCommand+PingMtuStatus
Retourneert standaard Test-Connection een TestConnectionCommand+PingStatus-object voor elk pingantwoord.
Als u de traceroute-parameter opgeeft, retourneert de cmdlet een TestConnectionCommand+TraceStatus-object voor elk pingantwoord langs de route.
Als u de parameters Quiet of TcpPort opgeeft, wordt er een Booleaanse waarde geretourneerd. Als er meerdere verbindingen worden getest, wordt een matrix met Booleaanse waarden geretourneerd.
Verwante koppelingen
Feedback
Feedback verzenden en weergeven voor