Test-Connection
Отправляет пакеты эхо-запроса ICMP или pings на один или несколько компьютеров.
Синтаксис
Default (По умолчанию)
Test-Connection
[-ComputerName] <String[]>
[-AsJob]
[-DcomAuthentication <AuthenticationLevel>]
[-WsmanAuthentication <String>]
[-Protocol <String>]
[-BufferSize <Int32>]
[-Count <Int32>]
[-Impersonation <ImpersonationLevel>]
[-ThrottleLimit <Int32>]
[-TimeToLive <Int32>]
[-Delay <Int32>]
[<CommonParameters>]
Source
Test-Connection
[-ComputerName] <String[]>
[-Source] <String[]>
[-AsJob]
[-DcomAuthentication <AuthenticationLevel>]
[-WsmanAuthentication <String>]
[-Protocol <String>]
[-BufferSize <Int32>]
[-Count <Int32>]
[-Credential <PSCredential>]
[-Impersonation <ImpersonationLevel>]
[-ThrottleLimit <Int32>]
[-TimeToLive <Int32>]
[-Delay <Int32>]
[<CommonParameters>]
Quiet
Test-Connection
[-ComputerName] <String[]>
[-DcomAuthentication <AuthenticationLevel>]
[-WsmanAuthentication <String>]
[-Protocol <String>]
[-BufferSize <Int32>]
[-Count <Int32>]
[-Impersonation <ImpersonationLevel>]
[-TimeToLive <Int32>]
[-Delay <Int32>]
[-Quiet]
[<CommonParameters>]
Описание
Командлет Test-Connection отправляет пакеты запросов протокола управления Интернетом (ICMP) на один или несколько удаленных компьютеров и возвращает эхо-ответы. Этот командлет можно использовать для определения того, можно ли связаться с определенным компьютером через IP-сеть.
Параметры Test-Connection можно использовать для указания компьютеров отправки и получения, выполнения команды в качестве фонового задания, задания времени ожидания и количества пингов, а также настройки подключения и проверки подлинности.
В отличие от знакомой команды pingTest-Connection возвращает объект Win32_PingStatus, который можно исследовать в PowerShell. Параметр
Примеры
Пример 1. Отправка запросов эхо на удаленный компьютер
Этот пример отправляет пакеты эхо-запроса с локального компьютера на компьютер 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 использует параметр ComputerName для указания компьютера Server01.
Пример 2. Отправка запросов эхо на несколько компьютеров
Этот пример отправляет запросы связи с локального компьютера на несколько удаленных компьютеров.
Test-Connection -ComputerName Server01, Server02, Server12
Пример 3. Отправка запросов эхо с нескольких компьютеров на компьютер
В этом примере выполняется отправка подключений с разных исходных компьютеров на один удаленный компьютер Server01.
Test-Connection -Source Server02, Server12, localhost -ComputerName Server01 -Credential Domain01\Admin01
Пример 4. Использование параметров для настройки команды тестирования
В этом примере используются параметры Test-Connection для настройки команды. Локальный компьютер отправляет тест проверки ping на удаленный компьютер.
Test-Connection -ComputerName Server01 -Count 3 -Delay 2 -TTL 255 -BufferSize 256 -ThrottleLimit 32
Test-Connectionиспользует параметр ComputerName для указания Server01. Параметр Count указывает, что три эха-запроса отправляются на компьютер Server01 с задержкой с интервалом в 2 секунды.
Вы можете использовать эти параметры, если ожидается, что ответ на пинг займет больше времени, чем обычно, из-за большого числа переходов или высокой загруженности сети.
Пример 5. Запуск теста в качестве фонового задания
В этом примере показано, как выполнить команду Test-Connection в качестве фонового задания PowerShell.
$job = Test-Connection -ComputerName (Get-Content Servers.txt) -AsJob
if ($job.JobStateInfo.State -ne "Running") {$Results = Receive-Job $job}
Команда Test-Connection выполняет связь с множеством компьютеров в организации. Значение параметра $job.
Команда if проверяет, что задание еще не запущено. Если задание не выполняется, Receive-Job получает результаты и сохраняет их в переменной $Results.
Пример 6. Проверка доступа к удаленному компьютеру с учетными данными
Эта команда использует командлет Test-Connection для проверки связи с удаленным компьютером.
Test-Connection Server55 -Credential Domain55\User01 -Impersonation Identify
Команда использует параметр учетных данных
Пример 7. Создание сеанса только в случае успешного выполнения теста подключения
В этом примере сеанс на компьютере Server01 создается только в том случае, если по крайней мере один из отправленных на компьютер пингов проходит успешно.
if (Test-Connection -ComputerName Server01 -Quiet) {New-PSSession Server01}
Команда if использует командлет Test-Connection для проверки доступа к компьютеру Server01. Команда использует параметр $true, если любой из четырех pings успешно выполнен и имеет значение, в противном случае $false.
Если команда Test-Connection возвращает значение $true, команда использует командлет New-PSSession для создания PSSession.
Параметры
-AsJob
Указывает, что этот командлет выполняется в качестве фонового задания. При указании параметра asJob Receive-Job.
Дополнительные сведения о фоновых заданиях PowerShell см. в about_Jobs и about_Remote_Jobs.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
Default
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
Source
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-BufferSize
Задает размер буфера, отправляемого с помощью этой команды, в байтах. Значение по умолчанию — 32.
Свойства параметров
| Тип: | Int32 |
| Default value: | 32 |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | Размер, Байт, бакалавр наук |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ComputerName
Указывает компьютеры для проверки ping. Введите имена компьютеров или IP-адреса в формате IPv4 или IPv6. Подстановочные знаки не разрешены. Этот параметр является обязательным.
Этот параметр не зависит от удаленного управления PowerShell. Вы можете использовать параметр ComputerName, даже если компьютер не настроен для выполнения удаленных команд.
Замечание
Параметр ComputerName переименован в TargetName в PowerShell 6.0 и выше.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | Китай, IP-адрес, __СЕРВЕР, Сервер, Место назначения |
Наборы параметров
(All)
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Count
Указывает количество отправляемых эхо-запросов. Значение по умолчанию — 4.
Свойства параметров
| Тип: | Int32 |
| Default value: | 4 |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Credential
Указывает учетную запись пользователя, которая имеет разрешение на отправку запроса на связь с исходного компьютера. Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential, например один из командлета Get-Credential.
Параметр Credential действителен только в том случае, если параметр Source используется в команде. Учетные данные не влияют на целевой компьютер.
Свойства параметров
| Тип: | PSCredential |
| Default value: | Current user |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
Source
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-DcomAuthentication
Указывает уровень проверки подлинности, используемый этим командлетом с WMI.
Test-Connection использует WMI.
Допустимые значения для этого параметра:
- По умолчанию. Проверка подлинности Windows
- Нет. Без проверки подлинности COM
- Подключитесь. Проверка подлинности COM на уровне подключения
- вызов. Проверка подлинности COM на уровне звонков
- пакет. Проверка подлинности COM на уровне пакетов
- PacketIntegrity. Проверка подлинности COM уровня целостности пакетов
- PacketPrivacy. Проверка подлинности COM уровня конфиденциальности пакетов
- Без изменений. Аналогично предыдущей команде
Значение по умолчанию — пакетной с перечисленным значением 4. Дополнительные сведения о значениях этого параметра см. в перечислении AuthenticationLevel.
Свойства параметров
| Тип: | AuthenticationLevel |
| Default value: | Packet (enumerated value of 4) |
| Допустимые значения: | Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | Аутентификация |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Delay
Указывает интервал между пингами в секундах.
Свойства параметров
| Тип: | Int32 |
| Default value: | 1 (second) |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Impersonation
Указывает уровень олицетворения, используемый при вызове WMI этого командлета.
Test-Connection использует WMI.
Допустимые значения для этого параметра приведены следующим образом:
- По умолчанию. Олицетворение по умолчанию.
- Анонимные. Скрывает удостоверение вызывающего объекта.
- Определение. Позволяет объектам запрашивать учетные данные вызывающего объекта.
- олицетворения. Позволяет объектам использовать учетные данные вызывающего объекта.
Значение по умолчанию — олицетворения.
Свойства параметров
| Тип: | ImpersonationLevel |
| Default value: | Impersonate |
| Допустимые значения: | Default, Anonymous, Identify, Impersonate, Delegate |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Protocol
Указывает протокол. Допустимыми значениями этого параметра являются DCOM и WSMan.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Допустимые значения: | DCOM, WSMan |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Quiet
Параметр Quiet возвращает логическое значение в объекте System.Boolean. Использование этого параметра подавляет все ошибки.
Каждое проверенное соединение возвращает логическое значение . Если параметр
Если успешно выполнена проверка подлинности, возвращается $true.
Если сбой всех ping, возвращается $false.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
Quiet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Source
Указывает имена компьютеров, с которых исходит ping. Введите разделенный запятыми список имен компьютеров. По умолчанию используется локальный компьютер.
Свойства параметров
| Тип: | String[] |
| Default value: | Local computer |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | FCN, SRC |
Наборы параметров
Source
| Position: | 1 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ThrottleLimit
Указывает максимальное количество одновременных подключений, которые можно установить для выполнения этой команды. Если этот параметр не указан или введите значение 0, используется значение по умолчанию 32.
Ограничение регулирования применяется только к текущей команде, а не к сеансу или к компьютеру.
Свойства параметров
| Тип: | Int32 |
| Default value: | 32 |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
Default
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
Source
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-TimeToLive
Указывает максимальное время переадресации пакета. Для каждого прыжка шлюзов, маршрутизаторов и т. д. значение TimeToLive уменьшается на один. По нулю пакет удаляется и возвращается ошибка. В Windowsзначение по умолчанию — 128. Псевдоним параметра TimeToLive — TTL.
Свойства параметров
| Тип: | Int32 |
| Default value: | 128 in Windows |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | TTL |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-WsmanAuthentication
Указывает механизм, используемый для проверки подлинности учетных данных пользователя, когда этот командлет использует протокол WSMan. Допустимые значения для этого параметра:
- Базовый
- CredSSP
- По умолчанию
- дайджест
- Kerberos
- Вести переговоры.
Значение по умолчанию — Default.
Для получения дополнительной информации о значениях этого параметра см. перечисление AuthenticationMechanism.
Внимание. Проверка подлинности поставщика служб безопасности учетных данных (CredSSP), в которой учетные данные пользователя передаются на удаленный компьютер для проверки подлинности, предназначена для команд, требующих проверки подлинности на нескольких ресурсах, таких как доступ к удаленному сетевому ресурсу. Этот механизм повышает риск безопасности удаленной операции. Если удаленный компьютер скомпрометирован, учетные данные, передаваемые ему, можно использовать для управления сетевым сеансом.
Этот параметр появился в Windows PowerShell 3.0.
Свойства параметров
| Тип: | String |
| Default value: | Default |
| Допустимые значения: | Default, Basic, Negotiate, CredSSP, Digest, Kerberos |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
None
Невозможно передать объекты в этот командлет.
Выходные данные
ManagementObject
По умолчанию этот командлет возвращает объект Win32_PingStatus для каждого ответа связи.
System.Management.Automation.RemotingJob
Этот командлет возвращает объект задания, если указать параметр AsJob.
Boolean
При использовании параметра Quiet возвращает логическое значение. Если командлет проверяет несколько подключений, он возвращает массив логических значений.
Примечания
Этот командлет использует класс Win32_PingStatus. Команда Get-WmiObject Win32_PingStatus эквивалентна команде Test-Connection.
Набор параметров source появился в PowerShell 3.0.