Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Topik ini menjelaskan cara mengonfigurasi koneksi debugging kernel untuk mesin virtual (VM) Hyper-V.
Hyper-V Penyiapan Komputer Virtual
Untuk men-debug Gen 2 Hyper-V Virtual Machine (VM) selesaikan langkah-langkah berikut.
1. Buat VM dengan Windows terinstal
Untuk informasi tentang cara membuat VM, lihat Membuat Komputer Virtual dengan Hyper-V.
2. Tentukan sakelar virtual eksternal
Untuk berkomunikasi dengan VM, sakelar jaringan eksternal virtual dapat digunakan. Untuk informasi tentang cara membuat sakelar jaringan eksternal, lihat Membuat jaringan virtual.
Ketika sakelar jaringan eksternal dikonfigurasi, opsi berikut harus diatur.
Opsi | Nilai |
---|---|
Tipe Koneksi | Jaringan Eksternal |
Perbolehkan sistem operasi manajemen berbagi adaptor jaringan ini | Diaktifkan |
VLAN ID | Penyandang Disabilitas |
3. Nonaktifkan Boot Aman
Untuk memungkinkan utilitas kdnet memperbarui pengaturan boot BCDEdit, nonaktifkan boot aman untuk sementara pada komputer virtual dengan mengikuti langkah-langkah ini.
Muat manajer Hyper-V dan pilih properti untuk VM Anda.
Pilih Pengaturan keamanan .
Batal centang kotak Aktifkan Boot Aman .
Pilih OK untuk menyimpan pengaturan.
Anda dapat mengaktifkan kembali Boot Aman setelah selesai menelusuri kesalahan dan menonaktifkan penelusuran kesalahan kernel pada VM target.
4. Instal Alat Debugging untuk Windows
Alat penelusuran kesalahan digunakan untuk debugger dan utilitas kdnet dan harus diinstal. Untuk informasi tentang cara mengunduh dan menginstal alat penelusuran kesalahan, lihat Alat Penelusuran Kesalahan untuk Windows.
Menyiapkan Debugging Jaringan Mesin Virtual - KDNET
Rekam Alamat IP Host
Untuk menjalankan debugger host pada PC yang sama dengan komputer virtual target, ikuti langkah-langkah ini.
Di OS komputer host, buka jendela Prompt Perintah dan masukkan IPConfig untuk menampilkan konfigurasi IP.
Dalam hasil perintah, temukan adaptor Ethernet yang Anda konfigurasi sebagai Sakelar Virtual Eksternal.
... Ethernet adapter vEthernet (External Virtual Switch): ... IPv4 Address. . . . . . . . . . . : <YourHostIPAddress> ...
Petunjuk / Saran
Mungkin ada beberapa entri adaptor dengan nama serupa. Pastikan Anda menemukan sakelar virtual yang Anda buat.
Rekam alamat IPv4 Sakelar Virtual Eksternal yang akan digunakan sebagai alamat host untuk penelusuran kesalahan.
Untuk mengonfirmasi konektivitas antara target dan komputer host, buka jendela prompt perintah yang ditingkatkan pada komputer target, dan masukkan perintah berikut, di mana YourHostIPAddress adalah alamat IP komputer host.
ping -4 <YourHostIPAddress>
Menyiapkan Komputer Target VM
Gunakan utilitas kdnet.exe untuk mengonfigurasi pengaturan debugger secara otomatis pada PC target, dengan mengikuti langkah-langkah ini.
- Temukan file WDK kdnet.exe dan VerifiedNICList.xml. Secara default, mereka terletak di sini.
C:\Program Files (x86)\Windows Kits\10\Debuggers\x64
Nota
Petunjuk ini mengasumsikan bahwa kedua PC menjalankan Windows versi 64-bit pada target dan host. Jika itu bukan masalahnya, pendekatan terbaik adalah menjalankan alat dengan "bitness" yang sama pada host seperti yang dijalankan oleh 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.
Untuk mengizinkan kunci panjang yang digunakan untuk dipotong dan ditempelkan, aktifkan dukungan sesi yang ditingkatkan. Di jendela VM, dari menu Tarik-turun Tampilan , aktifkan Sesi yang ditingkatkan.
Pada komputer virtual target, buat direktori C:\KDNET dan salin file kdnet.exe dan VerifiedNICList.xml ke direktori tersebut.
Pada komputer target, buka jendela Prompt Perintah sebagai Administrator. Masukkan perintah ini untuk memverifikasi bahwa komputer target memiliki adaptor jaringan yang didukung.
C:\KDNET>kdnet Network debugging is supported on the following NICs: busparams=0.25.0, Intel(R) 82579LM Gigabit Network Connection, KDNET is running on this NIC.kdnet.exe
Ketik perintah ini untuk mengatur alamat IP sistem host dan menghasilkan kunci koneksi yang unik. Gunakan alamat IP sistem host yang Anda rekam sebelumnya. Pilih alamat port unik untuk setiap pasangan target/host yang bekerja dengan Anda, dalam rentang 50000-50039. Untuk contoh ini, kita akan memilih 50005.
C:\>kdnet <YourIPAddress> <YourDebugPort> Enabling network debugging on Microsoft Hypervisor Virtual Machine. Key=3u8smyv477z20.2owh9gl90gbxx.3sfsihzgq7di4.nh8ugnmzb4l7 To debug this vm, run the following command on your debugger host machine. windbg -k net:port=50005,key=3u8smyv477z20.2owh9gl90gbxx.3sfsihzgq7di4.nh8ugnmzb4l7 Then restart this VM by running shutdown -r -t 0 from this command prompt.
Gunakan CRTL+C untuk menyalin output Windbg yang disediakan ke buffer perintah. Melakukan ini menghindari upaya untuk menuliskan nilai kunci panjang yang dikembalikan.
Aktifkan kembali BitLocker dan boot aman setelah Anda selesai mengonfigurasi pengaturan debugger.
Karena VM dengan dukungan sesi yang ditingkatkan dapat mengalami batas waktu saat dibiarkan dalam breakpoint, nonaktifkan dukungan sesi yang ditingkatkan menggunakan menu drop-down Tampilan di VM.
VM akan dimulai ulang setelah debugger dimuat dan berjalan. Proses ini dijelaskan berikutnya.
Memulai Sesi Debugging
Untuk menyambungkan ke PC target, gunakan CTRL+V untuk menempelkan di jendela perintah OS utama string Windbg yang dikembalikan oleh kdnet yang Anda salin sebelumnya.
C:\Debuggers\windbg -k net:port=<YourDebugPort>,key=<YourKey>
Ketika pertama kali mencoba membuat koneksi untuk penelusuran kesalahan jaringan, Anda mungkin diminta untuk mengizinkan aplikasi penelusuran kesalahan (WinDbg atau KD) mengakses melalui firewall. Anda harus merespons permintaan dengan mencentang kotak centang untuk semua tiga jenis jaringan: domain, privat, dan publik.
Memulai ulang PC Target
Setelah debugger tersambung, boot ulang komputer target. Untuk memaksa VM memulai ulang sepenuhnya, gunakan perintah ini, dari prompt perintah administrator.
shutdown -r -t 0
Ketika komputer virtual target dimulai ulang, debugger di OS host harus terhubung.
Setelah menyambungkan ke VM, tekan break pada debugger Anda dan Anda dapat mulai men-debug.
Untuk mendukung koneksi debugging, Kernel Debug Network Adapter ditambahkan dan terlihat di properti jaringan setelah VM di-reboot.
Pemecahan Masalah Debugging Jaringan Mesin Virtual KDNET
Jika debugger tidak tersambung, gunakan perintah ping dari VM target untuk memverifikasi konektivitas.
C:\>Ping <HostComputerIPAddress>
Ada yang tidak berfungsi dengan baik dan aku tidak yakin apa...
- Pastikan Anda telah mengizinkan WinDbg melalui firewall Anda.
- Konfirmasikan bahwa Anda menggunakan Kunci unik yang dihasilkan oleh BCDEdit atau kdnet.
VM saya tidak memiliki konektivitas jaringan
- Buka Virtual Switch Manager dari Hyper-V Manager, pilih Sakelar Virtual yang ada, dan ubah NIC jaringan eksternal ke Adaptor Jaringan Debug Kernel Microsoft dengan memilihnya dari kotak drop-down lalu pilih OK di kotak dialog Virtual Switch Manager. Setelah memperbarui Virtual Switch NIC Anda, pastikan untuk mematikan dan memulai ulang VM Anda.
Urutan untuk menambahkan peran Hyper-V ke komputer Windows
Jika komputer target Anda adalah host mesin virtual, Anda dapat menyiapkan debugging jaringan dan tetap memiliki akses jaringan ke mesin virtual.
Misalkan Anda ingin mengatur debugging jaringan dalam situasi berikut.
- Komputer target memiliki satu kartu antarmuka jaringan.
- Anda ingin menginstal peran Hyper-V pada komputer target.
- Anda ingin membuat satu atau beberapa komputer virtual pada komputer target.
Pendekatan terbaik adalah menyiapkan debugging jaringan pada komputer target sebelum Anda memasang peran Hyper-V. Kemudian komputer virtual akan memiliki akses ke jaringan.
Jika Anda memutuskan untuk menyiapkan debugging jaringan setelah peran Hyper-V diinstal pada komputer target, Anda harus mengubah pengaturan jaringan untuk mesin virtual Anda sehingga menjembatani ke Microsoft Kernel Network Debug Adapter. Jika tidak, komputer virtual tidak akan memiliki akses ke jaringan.
Lihat juga
Menyiapkan Kernel-Mode Debugging Komputer Virtual Secara Manual menggunakan Port COM Virtual