Test-Connection
Envoie des paquets de demande d’écho ICMP, ou des pings, à un ou plusieurs ordinateurs.
Syntaxe
DefaultPing (Par défaut)
Test-Connection
[-TargetName] <string[]>
[-Ping]
[-IPv4]
[-IPv6]
[-ResolveDestination]
[-Source <string>]
[-MaxHops <int>]
[-Count <int>]
[-Delay <int>]
[-BufferSize <int>]
[-DontFragment]
[-Quiet]
[-TimeoutSeconds <int>]
[<CommonParameters>]
RepeatPing
Test-Connection
[-TargetName] <string[]>
-Repeat
[-Ping]
[-IPv4]
[-IPv6]
[-ResolveDestination]
[-Source <string>]
[-MaxHops <int>]
[-Delay <int>]
[-BufferSize <int>]
[-DontFragment]
[-Quiet]
[-TimeoutSeconds <int>]
[<CommonParameters>]
TraceRoute
Test-Connection
[-TargetName] <string[]>
-Traceroute
[-IPv4]
[-IPv6]
[-ResolveDestination]
[-Source <string>]
[-MaxHops <int>]
[-Quiet]
[-TimeoutSeconds <int>]
[<CommonParameters>]
MtuSizeDetect
Test-Connection
[-TargetName] <string[]>
-MtuSize
[-IPv4]
[-IPv6]
[-ResolveDestination]
[-Quiet]
[-TimeoutSeconds <int>]
[<CommonParameters>]
TcpPort
Test-Connection
[-TargetName] <string[]>
-TcpPort <int>
[-IPv4]
[-IPv6]
[-ResolveDestination]
[-Source <string>]
[-Count <int>]
[-Delay <int>]
[-Repeat]
[-Quiet]
[-TimeoutSeconds <int>]
[-Detailed]
[<CommonParameters>]
Description
L’applet de commande Test-Connection envoie des paquets de demande d’écho ICMP (Internet Control Message Protocol) ou des pings à un ou plusieurs ordinateurs distants et retourne les réponses de réponse d’écho. Vous pouvez utiliser cette applet de commande pour déterminer si un ordinateur particulier peut être contacté sur un réseau IP.
Vous pouvez utiliser les paramètres de Test-Connection pour spécifier à la fois les ordinateurs d’envoi et de réception, pour exécuter la commande en tant que travail en arrière-plan, définir un délai d’attente et un nombre de pings et configurer la connexion et l’authentification.
Contrairement à la commande ping
Exemples
Exemple 1 : Envoyer des demandes d’écho à un ordinateur distant
Cet exemple envoie des paquets de demande d’écho de l’ordinateur local à l’ordinateur Server01.
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 utilise le paramètre TargetName pour spécifier l’ordinateur Server01. Le paramètre IPv4 spécifie le protocole pour le test.
Une série d’objets TestConnectionCommand+PingStatus sont envoyés au flux de sortie, un objet par réponse ping à partir de l’ordinateur cible.
Exemple 2 : Envoyer des demandes d’écho à plusieurs ordinateurs
Cet exemple envoie des pings de l’ordinateur local à plusieurs ordinateurs distants.
Test-Connection -TargetName Server01, Server02, Server12
Exemple 3 : Utiliser des paramètres pour personnaliser la commande de test
Cet exemple utilise les paramètres de Test-Connection pour personnaliser la commande. L’ordinateur local envoie un test ping à un ordinateur distant.
Test-Connection -TargetName Server01 -Count 3 -Delay 2 -MaxHops 255 -BufferSize 256
Test-Connection utilise le paramètre TargetName pour spécifier Server01. Le paramètre Count spécifie que trois pings sont envoyés à l’ordinateur Server01 avec un délai de 2 secondes.
Vous pouvez utiliser ces options lorsque la réponse ping est censée prendre plus de temps que d’habitude, soit en raison d’un nombre étendu de tronçons ou d’une condition réseau à trafic élevé.
Exemple 4 : Exécuter un test en tant que travail en arrière-plan
Cet exemple montre comment exécuter une commande Test-Connection en tant que travail en arrière-plan PowerShell.
$job = Start-Job -ScriptBlock { Test-Connection -TargetName (Get-Content -Path "Servers.txt") }
$Results = Receive-Job $job -Wait
La commande Start-Job utilise l’applet de commande Test-Connection pour effectuer un test ping sur de nombreux ordinateurs d’une entreprise.
La valeur du paramètre TargetName Start-Job pour exécuter la commande en tant que travail en arrière-plan et enregistre le travail dans la variable $job.
La commande Receive-Job est spécifiée pour -Wait jusqu’à ce que le travail soit terminé, puis obtient les résultats et les stocke dans la variable $Results.
Exemple 5 : Créer une session uniquement si un test de connexion réussit
Cet exemple crée une session sur l’ordinateur Server01 uniquement si au moins un des pings envoyés à l’ordinateur réussit.
if (Test-Connection -TargetName Server01 -Quiet) { New-PSSession -ComputerName Server01 }
L’applet de commande Test-Connection effectue un test ping sur l’ordinateur Server01, avec le paramètre Silencieux fourni.
La valeur résultante est $true si l’un des quatre pings réussit. Si aucune des commandes ping ne réussit, la valeur est $false.
Si la commande Test-Connection retourne une valeur de $true, la commande utilise l’applet de commande New-PSSession pour créer la session PS .
Exemple 6 : Utiliser le paramètre TraceRoute
Introduit dans PowerShell 6.0, le paramètre TraceRoute mappe un itinéraire entre l’ordinateur local et la destination distante que vous spécifiez avec le paramètre 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
La commande Test-Connection est appelée avec le paramètre Traceroute. Les résultats, qui sont des objets [Microsoft.PowerShell.Commands.TestConnectionCommand+TraceStatus], sont envoyés dans le flux de sortie Success.
Exemple 7 : Obtenir une sortie détaillée pour un test de connexion TCP
Lorsque vous utilisez le paramètre détaillé, cette applet de commande retourne des informations détaillées sur l’état des tentatives de connexion TCP.
Test-Connection bing.com -TCPPort 443 -Detailed -Count 4
Target: bing.com
Id Source Address Port Latency(ms) Connected Status
-- ------ ------- ---- ----------- --------- ------
1 circumflex 2620:1ec:c11::200 443 12 True Success
2 circumflex 2620:1ec:c11::200 443 14 True Success
3 circumflex 2620:1ec:c11::200 443 17 True Success
4 circumflex 2620:1ec:c11::200 443 17 True Success
Paramètres
-BufferSize
Spécifie la taille, en octets, de la mémoire tampon envoyée avec cette commande. La valeur par défaut est 32.
Propriétés du paramètre
| Type: | Int32 |
| Valeur par défaut: | 32 |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Taille, Octets, Licence ès sciences |
Jeux de paramètres
DefaultPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
RepeatPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Count
Spécifie le nombre de demandes d’écho à envoyer. La valeur par défaut est 4.
Propriétés du paramètre
| Type: | Int32 |
| Valeur par défaut: | 4 |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
DefaultPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
TcpPort
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Delay
Spécifie l’intervalle entre les pings, en secondes.
Propriétés du paramètre
| Type: | Int32 |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
DefaultPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
RepeatPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
TcpPort
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Detailed
Lorsque vous utilisez le paramètre détaillé, cette applet de commande retourne des informations détaillées sur l’état des tentatives de connexion TCP.
Ce paramètre a été ajouté dans PowerShell 7.4.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
TcpPort
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-DontFragment
Ce paramètre définit l’indicateur Ne pas fragmenter dans l’en-tête IP. Vous pouvez utiliser ce paramètre avec le paramètre BufferSize pour tester la taille du Path MTU. Pour plus d’informations sur Path MTU, consultez l’article Path MTU Discovery dans wikipédia.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
DefaultPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
RepeatPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-IPv4
Force l’applet de commande à utiliser le protocole IPv4 pour le test.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-IPv6
Force l’applet de commande à utiliser le protocole IPv6 pour le test.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-MaxHops
Définit le nombre maximal de sauts pour qu'un message de requête ICMP puisse être envoyé. La valeur par défaut est contrôlée par le système d’exploitation. La valeur par défaut pour Windows 10 et versions ultérieures est de 128 sauts.
Propriétés du paramètre
| Type: | Int32 |
| Valeur par défaut: | 128 |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Ttl, TimeToLive, Hops |
Jeux de paramètres
DefaultPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
RepeatPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
TraceRoute
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-MtuSize
Ce paramètre est utilisé pour découvrir la taille de l’unité de transmission maximale (MTU) du chemin. L’applet de commande retourne un objet PingReply#MTUSize qui contient la taille MTU de chemin jusqu'à la cible. Pour plus d’informations sur Path MTU, consultez l’article Path MTU Discovery dans wikipédia.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | MtuSizeDetect |
Jeux de paramètres
MtuSizeDetect
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Ping
Provoque l’exécution d’un test ping par l’applet de commande. Il s’agit du mode par défaut de l’applet de commande Test-Connection.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | True |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
DefaultPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
RepeatPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Quiet
Le paramètre Quiet retourne une valeur booléenne. L’utilisation de ce paramètre supprime toutes les erreurs.
Chaque connexion testée retourne une valeur booléenne. Si le paramètre TargetName spécifie plusieurs ordinateurs, un tableau de valeurs booléennes est retourné.
Si un ping vers une cible donnée réussit, $true est retourné.
Si tous les pings vers une cible donnée échouent, $false est renvoyé.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Repeat
Provoque l’envoi continu de requêtes ping à l’applet de commande. Lorsque la valeur de TargetName est un tableau de cibles, l’applet de commande répète les requêtes ping pour la première cible uniquement. Elle ignore les cibles restantes. Ce paramètre ne peut pas être utilisé avec le paramètre compte.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Continué |
Jeux de paramètres
RepeatPing
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
TcpPort
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-ResolveDestination
Provoque la tentative de résolution du nom DNS de la cible par l’applet de commande. Lorsqu’ils sont utilisés conjointement avec le paramètre traceroute
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Source
Spécifie les noms des ordinateurs d'où provient la requête ping. Entrez une liste séparée par des virgules des noms d’ordinateurs. La valeur par défaut est l’ordinateur local.
Remarque
Ce paramètre n’est pas pris en charge dans les versions 6 et ultérieures de PowerShell. L’approvisionnement de ce paramètre provoque une erreur.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | Local computer |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
DefaultPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
RepeatPing
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
TraceRoute
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
TcpPort
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-TargetName
Spécifie le ou les ordinateurs à tester. Tapez les noms d’ordinateurs ou tapez des adresses IP au format IPv4 ou IPv6.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Nom de l'ordinateur |
Jeux de paramètres
(All)
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | True |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-TcpPort
Spécifie le numéro de port TCP sur la cible à utiliser dans le test de connexion TCP.
L’applet de commande tente d’établir une connexion TCP au port spécifié sur la cible.
- L’applet de commande retourne
$truesi une connexion est établie. - L’applet de commande retourne
$falsesi aucune connexion n’est établie.
Propriétés du paramètre
| Type: | Int32 |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
TcpPort
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-TimeoutSeconds
Définit la valeur de délai d’expiration du test. Le test échoue si une réponse n’est pas reçue avant l’expiration du délai d’expiration. La valeur par défaut est de cinq secondes.
Ce paramètre a été introduit dans PowerShell 6.0.
Propriétés du paramètre
| Type: | Int32 |
| Valeur par défaut: | 5 seconds |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Traceroute
Provoque l’exécution d’un test traceroute par l’applet de commande. Lorsque ce paramètre est utilisé, l’applet de commande retourne un objet TestConnectionCommand+TraceStatus.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
TraceRoute
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.
Entrées
None
Vous ne pouvez pas diriger les objets vers cette applet de commande.
Sorties
Microsoft.PowerShell.Commands.TestConnectionCommand+PingStatus
Par défaut, cette applet de commande retourne un objet TestConnectionCommand+PingStatus pour chaque réponse ping.
Microsoft.PowerShell.Commands.TestConnectionCommand+TraceStatus
Lorsque vous utilisez le paramètre TraceRoute
Boolean
Lorsque vous utilisez les paramètres Quiet ou TcpPort, cette applet de commande renvoie une valeur booléenne. Si l’applet de commande teste plusieurs connexions, elle retourne un tableau de valeurs booléennes.
Microsoft.PowerShell.Commands.TestConnectionCommand+PingMtuStatus
Lorsque vous utilisez le paramètre MtuSize, cette applet de commande renvoie un objet TestConnectionCommand+PingMtuStatus pour chaque réponse ping.
Microsoft.PowerShell.Commands.TestConnectionCommand+TcpPortStatus
Lorsque vous utilisez le paramètre détaillé, cette cmdlet renvoie un objet TestConnectionCommand+TcpPortStatus indiquant l’état de la connexion TCP.
Notes
Sur Linux, l’utilisation du paramètre BufferSize ou toute combinaison de paramètres avec le jeu de paramètres MtuSize qui entraîne une taille de mémoire tampon autre que celle par défaut de 32 octets peut nécessiter sudo. Dans ce cas, Test-Command déclenche une exception avec un message indiquant que sudo est nécessaire.