Test-Connection
Envoie des paquets de demande d’écho ICMP, ou des pings, à un ou plusieurs ordinateurs.
Syntaxe
Test-Connection
[-ComputerName] <String[]>
[-AsJob]
[-Authentication <AuthenticationLevel>]
[-BufferSize <Int32>]
[-Count <Int32>]
[-Impersonation <ImpersonationLevel>]
[-ThrottleLimit <Int32>]
[-TimeToLive <Int32>]
[-Delay <Int32>]
[<CommonParameters>]
Test-Connection
[-ComputerName] <String[]>
[-Source] <String[]>
[-AsJob]
[-Authentication <AuthenticationLevel>]
[-BufferSize <Int32>]
[-Count <Int32>]
[-Credential <PSCredential>]
[-Impersonation <ImpersonationLevel>]
[-ThrottleLimit <Int32>]
[-TimeToLive <Int32>]
[-Delay <Int32>]
[<CommonParameters>]
Test-Connection
[-ComputerName] <String[]>
[-Authentication <AuthenticationLevel>]
[-BufferSize <Int32>]
[-Count <Int32>]
[-Impersonation <ImpersonationLevel>]
[-TimeToLive <Int32>]
[-Delay <Int32>]
[-Quiet]
[<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 -ComputerName Server01
Source Destination IPV4Address IPV6Address Bytes Time(ms)
------ ----------- ----------- ----------- ----- --------
ADMIN1 Server01 10.59.137.44 32 0
ADMIN1 Server01 10.59.137.44 32 0
ADMIN1 Server01 10.59.137.44 32 0
ADMIN1 Server01 10.59.137.44 32 1
Test-Connection
utilise le paramètre ComputerName pour spécifier l’ordinateur Server01.
Exemple 2 : Envoyer des demandes d’écho à plusieurs ordinateurs
Cet exemple envoie des tests ping de l’ordinateur local à plusieurs ordinateurs distants.
Test-Connection -ComputerName Server01, Server02, Server12
Exemple 3 : Envoyer des demandes d’écho de plusieurs ordinateurs à un ordinateur
Cet exemple envoie des tests ping de différents ordinateurs sources à un seul ordinateur distant, Server01.
Test-Connection -Source Server02, Server12, localhost -ComputerName Server01 -Credential Domain01\Admin01
Test-Connection
utilise le paramètre Credential pour spécifier les informations d’identification d’un utilisateur autorisé à envoyer une requête ping à partir des ordinateurs sources. Utilisez ce format de commande pour tester la latence des connexions à partir de plusieurs points.
Exemple 4 : 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 -ComputerName Server01 -Count 3 -Delay 2 -TTL 255 -BufferSize 256 -ThrottleLimit 32
Test-Connection
utilise le paramètre TargetName pour spécifier Server01. Le paramètre Count
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 5 : 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 = Test-Connection -ComputerName (Get-Content Servers.txt) -AsJob
if ($job.JobStateInfo.State -ne "Running") {$Results = Receive-Job $job}
La commande Test-Connection
effectue un test ping sur de nombreux ordinateurs d’une entreprise. La valeur du paramètre ComputerName est une commande Get-Content
qui lit une liste de noms d’ordinateurs à partir du Servers.txt file
. La commande utilise le paramètre AsJob pour exécuter la commande en tant que travail en arrière-plan et enregistre le travail dans la variable $job
.
La commande if
vérifie que le travail n’est pas encore en cours d’exécution. Si le travail n’est pas en cours d’exécution, Receive-Job
obtient les résultats et les stocke dans la variable $Results
.
Exemple 6 : Effectuer un test ping sur un ordinateur distant avec des informations d’identification
Cette commande utilise l’applet de commande Test-Connection
pour effectuer un test ping sur un ordinateur distant.
Test-Connection Server55 -Credential Domain55\User01 -Impersonation Identify
La commande utilise le paramètre Credential pour spécifier un compte d’utilisateur autorisé à effectuer un test ping sur l’ordinateur distant et le paramètre Emprunt d’identité pour modifier le niveau d’emprunt d’identité en Identifier.
Exemple 7 : 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 -ComputerName Server01 -Quiet) {New-PSSession Server01}
La commande if
utilise l’applet de commande Test-Connection
pour effectuer un test ping sur l’ordinateur Server01. La commande utilise le paramètre silencieux $True
si l’un des quatre pings réussit et est, sinon, $False
.
Si la commande
Paramètres
-AsJob
Indique que cette applet de commande s’exécute en tant que travail en arrière-plan.
Pour utiliser ce paramètre, les ordinateurs locaux et distants doivent être configurés pour la communication à distance et, sur Windows Vista et les versions ultérieures du système d’exploitation Windows, vous devez ouvrir PowerShell à l’aide de l’option Exécuter en tant qu’administrateur. Pour plus d’informations, consultez about_Remote_Requirements.
Lorsque vous spécifiez le paramètre AsJob, la commande retourne immédiatement un objet qui représente le travail en arrière-plan. Vous pouvez continuer à travailler dans la session pendant la fin du travail. Le travail est créé sur l’ordinateur local et les résultats des ordinateurs distants sont automatiquement retournés à l’ordinateur local. Pour obtenir les résultats du travail, utilisez l’applet de commande Receive-Job
.
Pour plus d’informations sur les travaux en arrière-plan PowerShell, consultez about_Jobs et about_Remote_Jobs.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Authentication
Spécifie le niveau d’authentification utilisé pour la connexion WMI.
Test-Connection
utilise WMI.
Les valeurs valides sont les suivantes :
- inchangé : le niveau d’authentification est identique à la commande précédente.
- par défaut : Authentification Windows.
- Aucun: aucune authentification COM.
- Connect: Authentification COM au niveau de la connexion.
- d’appel : Authentification COM au niveau de l’appel.
- paquets : Authentification COM au niveau du paquet.
- PacketIntegrity: Authentification COM au niveau de l’intégrité des paquets.
- packetPrivacy: Authentification COM au niveau de la confidentialité des paquets.
La valeur par défaut est Packet qui a une valeur énumérée de 4. Pour plus d’informations sur les valeurs de ce paramètre, consultez 'énumération AuthenticationLevel.
Type: | AuthenticationLevel |
Valeurs acceptées: | Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged |
Position: | Named |
Valeur par défaut: | Packet (enumerated value of 4) |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-BufferSize
Spécifie la taille, en octets, de la mémoire tampon envoyée avec cette commande. La valeur par défaut est 32.
Type: | Int32 |
Alias: | Size, Bytes, BS |
Position: | Named |
Valeur par défaut: | 32 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ComputerName
Spécifie les ordinateurs à effectuer un test ping. Tapez les noms d’ordinateurs ou tapez des adresses IP au format IPv4 ou IPv6. Les caractères génériques ne sont pas autorisés. Ce paramètre est requis.
Ce paramètre ne s’appuie pas sur la communication à distance PowerShell. Vous pouvez utiliser le paramètre ComputerName même si votre ordinateur n’est pas configuré pour exécuter des commandes distantes.
Type: | String[] |
Alias: | CN, IPAddress, __SERVER, Server, Destination |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-Count
Spécifie le nombre de demandes d’écho à envoyer. La valeur par défaut est 4.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 4 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Credential
Spécifie un compte d’utilisateur autorisé à envoyer une requête ping à partir de l’ordinateur source. Tapez un nom d’utilisateur, tel que User01 ou Domain01\User01, ou entrez un objet PSCredential, tel qu’un de l’applet de commande Get-Credential
.
Le paramètre Credential est valide uniquement lorsque le paramètre Source est utilisé dans la commande. Les informations d’identification n’affectent pas l’ordinateur de destination.
Type: | PSCredential |
Position: | Named |
Valeur par défaut: | Current user |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Delay
Spécifie l’intervalle entre les pings, en secondes.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 1 (second) |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Impersonation
Spécifie le niveau d’emprunt d’identité à utiliser lorsque cette applet de commande appelle WMI.
Test-Connection
utilise WMI.
Les valeurs acceptables pour ce paramètre sont les suivantes :
- par défaut . Emprunt d’identité par défaut.
- anonyme . Masque l’identité de l’appelant.
- Identifier. Permet aux objets d’interroger les informations d’identification de l’appelant.
- emprunter l’identité. Permet aux objets d’utiliser les informations d’identification de l’appelant.
La valeur par défaut est emprunt d’identité.
Type: | ImpersonationLevel |
Valeurs acceptées: | Default, Anonymous, Identify, Impersonate, Delegate |
Position: | Named |
Valeur par défaut: | Impersonate |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Quiet
Le paramètre
Chaque connexion testée retourne une valeur booléenne. Si le paramètre ComputerName spécifie plusieurs ordinateurs, un tableau de valeurs booléennes est retourné.
Si ping réussit, $True
est retourné.
Si toutes les ping échouent, $False
est retournée.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Source
Spécifie les noms des ordinateurs où provient le test ping. Entrez une liste séparée par des virgules des noms d’ordinateurs. La valeur par défaut est l’ordinateur local.
Type: | String[] |
Alias: | FCN, SRC |
Position: | 1 |
Valeur par défaut: | Local computer |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ThrottleLimit
Spécifie le nombre maximal de connexions simultanées qui peuvent être établies pour exécuter cette commande. Si vous omettez ce paramètre ou entrez une valeur de 0, la valeur par défaut 32 est utilisée.
La limite de limitation s’applique uniquement à la commande actuelle, et non à la session ou à l’ordinateur.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 32 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-TimeToLive
Spécifie le nombre maximal de fois où un paquet peut être transféré. Pour chaque tronçon dans les passerelles, les routeurs, etc. la valeur TimeToLive est réduite d’une. À zéro, le paquet est ignoré et une erreur est retournée.
Dans Windows, la valeur par défaut est 128. L’alias du paramètre TimeToLive
Type: | Int32 |
Alias: | TTL |
Position: | Named |
Valeur par défaut: | 128 in Windows |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
None
Vous ne pouvez pas diriger l’entrée vers cette applet de commande.
Sorties
Cette applet de commande retourne un objet de travail, si vous spécifiez le paramètre AsJob.
Si vous spécifiez le paramètre Test-Connection
retourne un objet Win32_PingStatus pour chaque test ping.
Notes
Cette applet de commande utilise la classe Win32_PingStatus. Une commande Get-WMIObject Win32_PingStatus
équivaut à une commande Test-Connection
.
Le jeu de paramètres source a été introduit dans PowerShell 3.0.