Bagikan melalui


Test-Connection

Mengirim paket permintaan gema ICMP, atau ping, ke satu atau beberapa komputer.

Sintaks

Test-Connection
    [-TargetName] <string[]>
    [-Ping]
    [-IPv4]
    [-IPv6]
    [-ResolveDestination]
    [-Source <string>]
    [-MaxHops <int>]
    [-Count <int>]
    [-Delay <int>]
    [-BufferSize <int>]
    [-DontFragment]
    [-Quiet]
    [-TimeoutSeconds <int>]
    [<CommonParameters>]
Test-Connection
    [-TargetName] <string[]>
    -Repeat
    [-Ping]
    [-IPv4]
    [-IPv6]
    [-ResolveDestination]
    [-Source <string>]
    [-MaxHops <int>]
    [-Delay <int>]
    [-BufferSize <int>]
    [-DontFragment]
    [-Quiet]
    [-TimeoutSeconds <int>]
    [<CommonParameters>]
Test-Connection
    [-TargetName] <string[]>
    -Traceroute
    [-IPv4]
    [-IPv6]
    [-ResolveDestination]
    [-Source <string>]
    [-MaxHops <int>]
    [-Quiet]
    [-TimeoutSeconds <int>]
    [<CommonParameters>]
Test-Connection
    [-TargetName] <string[]>
    -MtuSize
    [-IPv4]
    [-IPv6]
    [-ResolveDestination]
    [-Quiet]
    [-TimeoutSeconds <int>]
    [<CommonParameters>]
Test-Connection
    [-TargetName] <string[]>
    -TcpPort <int>
    [-IPv4]
    [-IPv6]
    [-ResolveDestination]
    [-Source <string>]
    [-Count <int>]
    [-Delay <int>]
    [-Repeat]
    [-Quiet]
    [-TimeoutSeconds <int>]
    [-Detailed]
    [<CommonParameters>]

Deskripsi

Test-Connection Cmdlet mengirimkan paket permintaan gema Internet Control Message Protocol (ICMP), atau ping, ke satu atau beberapa komputer jarak jauh dan mengembalikan balasan respons gema. Anda dapat menggunakan cmdlet ini untuk menentukan apakah komputer tertentu dapat dihubungi di seluruh jaringan IP.

Anda dapat menggunakan parameter Test-Connection untuk menentukan komputer pengiriman dan penerimaan, untuk menjalankan perintah sebagai pekerjaan latar belakang, untuk mengatur batas waktu dan jumlah ping, dan untuk mengonfigurasi koneksi dan autentikasi.

Tidak seperti perintah ping yang sudah dikenal, Test-Connection mengembalikan objek TestConnectionCommand+PingStatus yang dapat Anda selidiki di PowerShell. Parameter Tenang mengembalikan nilai Boolean dalam objek System.Boolean untuk setiap koneksi yang diuji. Jika beberapa koneksi diuji, array nilai Boolean dikembalikan.

Contoh

Contoh 1: Mengirim permintaan echo ke komputer jarak jauh

Contoh ini mengirimkan paket permintaan gema dari komputer lokal ke komputer 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 menggunakan parameter TargetName untuk menentukan komputer Server01. Parameter IPv4 menentukan protokol untuk pengujian.

Serangkaian objek TestConnectionCommand+PingStatus dikirim ke aliran output, satu objek per balasan ping dari komputer target.

Contoh 2: Mengirim permintaan echo ke beberapa komputer

Contoh ini mengirim ping dari komputer lokal ke beberapa komputer jarak jauh.

Test-Connection -TargetName Server01, Server02, Server12

Contoh 3: Menggunakan parameter untuk menyesuaikan perintah pengujian

Contoh ini menggunakan parameter Test-Connection untuk menyesuaikan perintah. Komputer lokal mengirim pengujian ping ke komputer jarak jauh.

Test-Connection -TargetName Server01 -Count 3 -Delay 2 -MaxHops 255 -BufferSize 256

Test-Connection menggunakan parameter TargetName untuk menentukan Server01. Parameter Hitung menentukan tiga ping dikirim ke komputer Server01 dengan Penundaan interval 2 detik.

Anda mungkin menggunakan opsi ini ketika respons ping diperkirakan akan memakan waktu lebih lama dari biasanya, baik karena jumlah hop yang diperluas atau kondisi jaringan lalu lintas tinggi.

Contoh 4: Jalankan pengujian sebagai pekerjaan latar belakang

Contoh ini memperlihatkan cara menjalankan Test-Connection perintah sebagai pekerjaan latar belakang PowerShell.

$job = Start-Job -ScriptBlock { Test-Connection -TargetName (Get-Content -Path "Servers.txt") }
$Results = Receive-Job $job -Wait

Start-Job Perintah menggunakan Test-Connection cmdlet untuk melakukan ping pada banyak komputer di perusahaan. Nilai parameter TargetName adalah Get-Content perintah yang membaca daftar nama komputer dari Servers.txt file. Perintah menggunakan Start-Job cmdlet untuk menjalankan perintah sebagai pekerjaan latar belakang dan menyimpan pekerjaan dalam $job variabel.

Receive-Job Perintah diinstruksikan hingga -Wait pekerjaan selesai, lalu mendapatkan hasilnya dan menyimpannya dalam $Results variabel.

Contoh 5: Buat sesi hanya jika pengujian koneksi berhasil

Contoh ini membuat sesi di komputer Server01 hanya jika setidaknya salah satu ping yang dikirim ke komputer berhasil.

if (Test-Connection -TargetName Server01 -Quiet) { New-PSSession -ComputerName Server01 }

Test-Connection Cmdlet mem-ping Server01 komputer, dengan parameter Tenang yang disediakan. Nilai yang dihasilkan adalah $True jika salah satu dari empat ping berhasil. Jika tidak ada ping yang berhasil, nilainya adalah $False.

Test-Connection Jika perintah mengembalikan nilai $True, perintah menggunakan New-PSSession cmdlet untuk membuat PSSession.

Contoh 6: Gunakan parameter Traceroute

Diperkenalkan di PowerShell 6.0, parameter Traceroute memetakan rute antara komputer lokal dan tujuan jarak jauh yang Anda tentukan dengan 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

Perintah Test-Connection dipanggil dengan parameter Traceroute . Hasilnya, yang merupakan [Microsoft.PowerShell.Commands.TestConnectionCommand+TraceStatus] objek, adalah output ke aliran output Keberhasilan .

Contoh 7: Dapatkan output terperinci untuk pengujian koneksi TCP

Saat Anda menggunakan parameter Terperinci , cmdlet ini mengembalikan informasi terperinci tentang status upaya koneksi 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

Parameter

-BufferSize

Menentukan ukuran, dalam byte, dari buffer yang dikirim dengan perintah ini. Nilai defaultnya adalah 32.

Jenis:Int32
Alias:Size, Bytes, BS
Position:Named
Nilai default:32
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Count

Menentukan jumlah permintaan echo yang akan dikirim. Nilai defaultnya adalah 4.

Jenis:Int32
Position:Named
Nilai default:4
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Delay

Menentukan interval antara ping, dalam hitungan detik.

Jenis:Int32
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Detailed

Saat Anda menggunakan parameter Terperinci , cmdlet ini mengembalikan informasi terperinci tentang status upaya koneksi TCP.

Parameter ini ditambahkan di PowerShell 7.4.

Jenis:SwitchParameter
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-DontFragment

Parameter ini menetapkan bendera Jangan Fragmen di header IP. Anda dapat menggunakan parameter ini dengan parameter BufferSize untuk menguji ukuran Jalur MTU. Untuk informasi selengkapnya tentang Jalur MTU, lihat artikel Path MTU Discovery di wikipedia.

Jenis:SwitchParameter
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-IPv4

Memaksa cmdlet untuk menggunakan protokol IPv4 untuk pengujian.

Jenis:SwitchParameter
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-IPv6

Memaksa cmdlet untuk menggunakan protokol IPv6 untuk pengujian.

Jenis:SwitchParameter
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-MaxHops

Mengatur jumlah maksimum hop yang dapat dikirim oleh pesan permintaan ICMP. Nilai default dikontrol oleh sistem operasi. Nilai default untuk Windows 10 dan yang lebih tinggi adalah 128 hop.

Jenis:Int32
Alias:Ttl, TimeToLive, Hops
Position:Named
Nilai default:128
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-MtuSize

Parameter ini digunakan untuk menemukan ukuran Jalur MTU. Cmdlet mengembalikan objek PingReply#MTUSize yang berisi ukuran Jalur MTU ke target. Untuk informasi selengkapnya tentang Jalur MTU, lihat artikel Path MTU Discovery di wikipedia.

Jenis:SwitchParameter
Alias:MtuSizeDetect
Position:Named
Nilai default:False
Diperlukan:True
Terima input alur:False
Terima karakter wildcard:False

-Ping

Menyebabkan cmdlet melakukan tes ping. Ini adalah mode default untuk Test-Connection cmdlet.

Jenis:SwitchParameter
Position:Named
Nilai default:True
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Quiet

Parameter Tenang mengembalikan nilai Boolean . Menggunakan parameter ini menekan semua kesalahan.

Setiap koneksi yang diuji mengembalikan nilai Boolean . Jika parameter TargetName menentukan beberapa komputer, array nilai Boolean dikembalikan.

Jika ada ping ke target tertentu yang berhasil, $True dikembalikan.

Jika semua ping ke target tertentu gagal, $False dikembalikan.

Jenis:SwitchParameter
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Repeat

Menyebabkan cmdlet mengirim permintaan ping terus menerus. Ketika nilai TargetName adalah array target, cmdlet mengulangi permintaan ping hanya untuk target pertama. Ini mengabaikan target yang tersisa. Parameter ini tidak dapat digunakan dengan parameter Hitung .

Jenis:SwitchParameter
Alias:Continuous
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-ResolveDestination

Menyebabkan cmdlet mencoba menyelesaikan nama DNS target. Ketika digunakan bersama dengan parameter Traceroute , nama DNS dari semua host perantara juga akan diambil, jika memungkinkan.

Jenis:SwitchParameter
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Source

Menentukan nama komputer tempat ping berasal. Masukkan daftar nama komputer yang dipisahkan koma. Defaultnya adalah komputer lokal.

Catatan

Parameter ini tidak didukung di PowerShell versi 6 ke atas. Menyediakan parameter ini menyebabkan kesalahan.

Jenis:String
Position:Named
Nilai default:Local computer
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-TargetName

Menentukan komputer yang akan diuji. Ketik nama komputer atau ketik alamat IP dalam format IPv4 atau IPv6.

Jenis:String[]
Alias:ComputerName
Position:0
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-TcpPort

Menentukan nomor port TCP pada target yang akan digunakan dalam pengujian koneksi TCP.

Cmdlet mencoba membuat koneksi TCP ke port yang ditentukan pada target.

  • Cmdlet mengembalikan $True jika koneksi dibuat.
  • Cmdlet mengembalikan $False jika koneksi tidak dibuat.
Jenis:Int32
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:False
Terima karakter wildcard:False

-TimeoutSeconds

Mengatur nilai batas waktu untuk pengujian. Pengujian gagal jika respons tidak diterima sebelum batas waktu berakhir. Defaultnya adalah lima detik.

Parameter ini diperkenalkan di PowerShell 6.0.

Jenis:Int32
Position:Named
Nilai default:5 seconds
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Traceroute

Menyebabkan cmdlet melakukan tes traceroute. Ketika parameter ini digunakan, cmdlet mengembalikan TestConnectionCommand+TraceStatus objek.

Jenis:SwitchParameter
Position:Named
Nilai default:False
Diperlukan:True
Terima input alur:False
Terima karakter wildcard:False

Input

None

Anda tidak dapat menyalurkan objek ke cmdlet ini.

Output

Microsoft.PowerShell.Commands.TestConnectionCommand+PingStatus

Secara default, cmdlet ini mengembalikan objek TestConnectionCommand+PingStatus untuk setiap balasan ping.

Microsoft.PowerShell.Commands.TestConnectionCommand+TraceStatus

Saat Anda menggunakan parameter Traceroute , cmdlet ini mengembalikan objek TestConnectionCommand+TraceStatus untuk setiap balasan ping di sepanjang rute.

Boolean

Saat Anda menggunakan parameter Tenang atau TcpPort , cmdlet ini mengembalikan nilai Boolean . Jika cmdlet menguji beberapa koneksi, cmdlet mengembalikan array nilai Boolean .

Microsoft.PowerShell.Commands.TestConnectionCommand+PingMtuStatus

Saat Anda menggunakan parameter MtuSize , cmdlet ini mengembalikan objek TestConnectionCommand+PingMtuStatus untuk setiap balasan ping.

Microsoft.PowerShell.Commands.TestConnectionCommand+TcpPortStatus

Saat Anda menggunakan parameter Terperinci , cmdlet ini mengembalikan objek TestConnectionCommand+TcpPortStatus yang menunjukkan status koneksi TCP.

Catatan

Di Linux, menggunakan parameter BufferSize atau kombinasi parameter apa pun dengan parameter MtuSize yang menghasilkan ukuran buffer non-default 32 byte mungkin memerlukan . Dalam kasus tersebut, Test-Command menimbulkan pengecualian dengan pesan yang menunjukkan bahwa sudo diperlukan.