Поделиться через


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. Параметр Quiet возвращает значение логического в объекте System.Boolean для каждого проверенного соединения. Если тестируется несколько подключений, возвращается массив логических значений.

Примеры

Пример 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 выполняет связь с множеством компьютеров в организации. Значение параметра ComputerName — это команда , которая считывает список имен компьютеров из . Команда использует параметр AsJob для выполнения команды в качестве фонового задания и сохраняет задание в переменной $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. Команда использует параметр Quiet, который возвращает значение логического вместо объекта Win32_PingStatus. Значение $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. Использование этого параметра подавляет все ошибки.

Каждое проверенное соединение возвращает логическое значение . Если параметр ComputerName указывает несколько компьютеров, возвращается массив логических значений .

Если успешно выполнена проверка подлинности, возвращается $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. Псевдоним параметра TimeToLiveTTL.

Свойства параметров

Тип: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.