Menyiapkan penelusuran kesalahan kernel jaringan KDNET secara otomatis

Alat Debugging untuk Windows, mendukung penelusuran kesalahan kernel melalui jaringan. Artikel ini menjelaskan cara menyiapkan penelusuran kesalahan jaringan secara otomatis dengan menggunakan alat penyiapan kdnet.exe .

Komputer yang menjalankan debugger disebut komputer host, dan komputer yang sedang di-debug disebut komputer target. Komputer host harus menjalankan Windows 7 atau yang lebih baru, dan komputer target harus berjalan Windows 8 atau yang lebih baru.

Menentukan alamat IP komputer host

  1. Konfirmasikan bahwa PC target dan host terhubung ke hub jaringan atau beralih menggunakan kabel jaringan yang sesuai.

  2. Di komputer host, buka perintah dan masukkan IPConfig untuk menampilkan konfigurasi IP.

  3. Dalam output perintah, temukan alamat IPv4 adaptor Ethernet.

...

Ethernet adapter Ethernet:
...

IPv4 Address. . . . . . . . . . . : <YourHostIPAddress>
...

  1. Catat alamat IPv4 adaptor jaringan yang ingin Anda gunakan untuk penelusuran kesalahan.

Menyiapkan host dan komputer target

Gunakan utilitas kdnet.exe untuk mengonfigurasi pengaturan debugger secara otomatis pada PC target dengan mengikuti langkah-langkah ini.

  1. Konfirmasikan bahwa Windows Debugging Tools diinstal pada sistem host. Untuk informasi tentang mengunduh dan menginstal alat debugger, lihat Alat Penelusuran Kesalahan untuk Windows.

  2. Temukan file kdnet.exe dan VerifiedNICList.xml . Secara default, file terletak di lokasi berikut:

    C:\Program Files (x86)\Windows Kits\10\Debuggers\x64
    

    Petunjuk ini mengasumsikan bahwa kedua PC menjalankan Windows versi 64-bit pada target dan host. Jika tidak demikian, pendekatan terbaik adalah menjalankan "bitness" alat yang sama pada host yang dijalankan target. Misalnya, jika target menjalankan Windows 32-bit, jalankan versi 32 debugger pada host. Untuk informasi selengkapnya, lihat Memilih Alat Debugging 32-bit atau 64-bit.

  3. Di komputer host, salin dua file ke berbagi jaringan atau drive jempol sehingga tersedia di komputer target.

  4. Pada komputer target, buat direktori C:\KDNET dan salin file kdnet.exe dan VerifiedNICList.xml ke direktori tersebut.

    Penting

    Sebelum menggunakan kdnet.exe untuk mengubah informasi boot, Anda mungkin perlu menangguhkan sementara fitur keamanan Windows seperti BitLocker dan Boot Aman pada PC pengujian. Aktifkan kembali fitur keamanan ini saat pengujian selesai dan kelola PC pengujian dengan tepat saat fitur keamanan dinonaktifkan.

  5. Pada komputer target, buka prompt perintah sebagai administrator. Masukkan perintah ini untuk memverifikasi bahwa komputer target memiliki adaptor jaringan yang didukung:

    C:\KDNET>kdnet.exe
    Network debugging is supported on the following NICs:
    busparams=1.0.0, Broadcom NetXtreme Gigabit Ethernet, Plugged in.  
    This Microsoft hypervisor supports using KDNET in guest VMs.
    
  6. Ketika output dari kdnet.exe menunjukkan bahwa adaptor jaringan pada target didukung, Anda dapat melanjutkan.

  7. Masukkan perintah berikut untuk mengatur alamat IP sistem host dan buat kunci koneksi unik. Gunakan alamat IP atau nama sistem host. Pilih alamat port unik untuk setiap pasangan target/host yang bekerja sama dengan Anda, dalam rentang 50000-50039 yang direkomendasikan.

    C:\KDNET>kdnet.exe <HostComputerIPAddress> <YourDebugPort> 
    
    Enabling network debugging on Intel(R) 82577LM Gigabit Network Connection.
    Key=2steg4fzbj2sz.23418vzkd4ko3.1g34ou07z4pev.1sp3yo9yz874p
    
  8. Salin kunci yang dikembalikan ke dalam file .txtnotepad .

Sambungkan WinDbg ke target untuk penelusuran kesalahan kernel

Di komputer host, buka WinDbg. Pada menu File , pilih Kernel Debug. Dalam dialog Debugging Kernel, buka tab Net . Tempelkan nomor port dan kunci Anda yang disimpan di file .txt notepad sebelumnya. PilihOK.

Anda juga dapat memulai sesi WinDbg dengan membuka prompt perintah dan memasukkan perintah berikut. <YourPort> adalah port yang Anda pilih sebelumnya, dan <YourKey> adalah kunci yang dikembalikan oleh kdnet.exe sebelumnya. Tempelkan kunci yang Anda simpan ke file .txt notepad sebelumnya.

windbg.exe -k -d net:port=<YourDebugPort>,key=<YourKey> 

Parameter opsional -d yang ditunjukkan dalam contoh, memungkinkan pembobolan awal. Untuk informasi selengkapnya, lihat Opsi baris perintah WinDbg.

Jika Anda diminta untuk mengizinkan WinDbg mengakses port melalui firewall, izinkan WinDbg mengakses port untuk ketiga jenis jaringan yang berbeda.

Cuplikan layar Pemberitahuan Keamanan Windows dengan pilihan untuk memungkinkan akses ke ketiga jenis jaringan.

Pada titik ini, debugger menunggu target tersambung kembali. Teks ditampilkan di jendela perintah debugger. Teks tersebut akan mirip dengan yang berikut:

Microsoft (R) Windows Debugger Version 1.0.1908.30002 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.

Using NET for debugging
Opened WinSock 2.0
Waiting to reconnect...

Menghidupkan ulang PC target

Setelah debugger berada di "Menunggu untuk menyambungkan kembali..." tahap, reboot komputer target. Salah satu cara untuk menghidupkan ulang PC adalah dengan menggunakan perintah ini dari prompt perintah administrator.

shutdown -r -t 0 

Setelah PC target dimulai ulang, debugger akan terhubung secara otomatis.

Tips pemecahan masalah

Aplikasi penelusuran kesalahan harus diizinkan melalui firewall

Di sisi host, tempat debugger berjalan, semua jenis jaringan harus diaktifkan untuk memungkinkan debugger berkomunikasi dengan target melalui firewall.

Gunakan Panel Kontrol untuk mengizinkan akses melalui firewall.

  1. Buka Sistem dan Keamanan Panel Kontrol > dan pilih Izinkan aplikasi melalui Windows Firewall.

    • (WinDbg) Dalam daftar aplikasi, temukan proses mesin WinDbg (TCP) (semua).

    • (WinDbg (Klasik)) Dalam daftar aplikasi, temukan Windows GUI Symbolic Debugger dan Windows Kernel Debugger.

  2. Gunakan kotak centang untuk memungkinkan kedua aplikasi tersebut melalui ketiga jenis jaringan yang berbeda.

  3. Gulir ke bawah dan pilih OK untuk menyimpan perubahan firewall. Mulai ulang debugger.

    Cuplikan layar konfigurasi firewall Panel Kontrol yang menampilkan aplikasi Windows GUI Symbolic Debugger dan Windows Kernel Debugger dengan ketiga jenis jaringan diaktifkan.

Menggunakan ping untuk menguji konektivitas

Jika waktu debugger habis dan tidak tersambung, gunakan perintah ping pada PC target untuk memverifikasi konektivitas.

   C:\>Ping <HostComputerIPAddress>

Memilih port untuk penelusuran kesalahan jaringan

Jika waktu debugger habis dan tidak tersambung, mungkin karena nomor port default 50000 sudah digunakan atau diblokir.

Anda dapat memilih nomor port apa pun dari 49152 hingga 65535. Rentang yang disarankan adalah antara 50000 dan 50039. Port yang Anda pilih dibuka untuk akses eksklusif oleh debugger yang berjalan di komputer host.

Rentang nomor port yang dapat digunakan untuk penelusuran kesalahan jaringan mungkin dibatasi oleh kebijakan jaringan perusahaan Anda. Untuk menentukan apakah kebijakan perusahaan Anda membatasi rentang port yang dapat digunakan untuk penelusuran kesalahan jaringan, tanyakan kepada administrator jaringan Anda.

Adaptor jaringan yang didukung

Jika "Penelusuran kesalahan jaringan tidak didukung pada salah satu NIC di komputer ini" ditampilkan saat Anda menjalankan kdnet.exe, adaptor jaringan tidak didukung.

Komputer host dapat menggunakan adaptor jaringan apa pun, tetapi komputer target harus menggunakan adaptor jaringan yang didukung oleh Alat Penelusuran Kesalahan untuk Windows. Untuk daftar adaptor jaringan yang didukung, lihat NIC Ethernet yang didukung untuk penelusuran kesalahan kernel jaringan di Windows 10 dan NIC Ethernet yang didukung untuk penelusuran kesalahan kernel jaringan di Windows 8.1.

Aktifkan jenis penelusuran kesalahan lainnya

Dimulai dengan Windows 10 Pembaruan Oktober 2020 (20H2), opsi berikut didukung untuk mengaktifkan empat jenis penelusuran kesalahan:

Kombinasi jenis debug apa pun dapat ditentukan.

Jika tidak ada jenis debug yang ditentukan, penelusuran kesalahan kernel diaktifkan.

Jika debug hypervisor dan kernel diaktifkan, port hypervisor diatur ke <YourDebugPort> + 1.

Contoh penggunaan

Gunakan opsi - bkw untuk mengaktifkan debugging bootmgr, kernel, dan winload.

C:\>kdnet.exe <HostComputerIPAddress> <YourDebugPort> -bkw

Enabling network debugging on Intel(R) 82577LM Gigabit Network Connection.
Key=2steg4fzbj2sz.23418vzkd4ko3.1g34ou07z4pev.1sp3yo9yz874p

Ringkasan opsi jenis penelusuran kesalahan

Opsi KNDET Deskripsi Perintah setara
B mengaktifkan penelusuran kesalahan bootmgr bcdedit /bootdebug {bootmgr} pada
h mengaktifkan penelusuran kesalahan hypervisor bcdedit /set hypervisordebug aktif
k mengaktifkan penelusuran kesalahan kernel bcdedit /debug pada
W memungkinkan penelusuran kesalahan winload bcdedit /bootdebug aktif

Tentukan parameter bus

Jika kdnet tidak dapat secara otomatis menentukan parameter bus untuk transportasi Anda, tentukan parameter tersebut pada baris perintah dengan /busparams opsi menggunakan sintaks ini.

kdnet.exe /busparams [b.d.f] [host] [port] [-[b][h][k][w]]

b.d.f menentukan parameter bus perangkat yang akan dikonfigurasi.

Gunakan Manajer Perangkat pada komputer target untuk menentukan bus PCI, perangkat, dan nomor fungsi untuk adaptor yang ingin Anda gunakan untuk penelusuran kesalahan. Untuk parameter bus, masukkan b. d. f di mana b, d, dan f adalah nomor bus, nomor perangkat, dan nomor fungsi adaptor. Nilai-nilai ini ditampilkan di Manajer Perangkat di bawah Lokasi pada tab Umum .

Contohnya:

C:\>kdnet.exe /busparams 0.29.7 <HostComputerIPAddress> <YourDebugPort> -bkw

Lihat juga