Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Средства отладки для Windows поддерживают отладку ядра по сети. This article describes how to set up network debugging automatically by using the KDNET (kdnet.exe) setup tool.
The computer that runs the debugger is the host computer, and the computer being debugged is the target computer. The host computer must run Windows 7 or later, and the target computer must run Windows 8 or later.
Определение IP-адреса хост-компьютера
Чтобы найти IP-адрес хост-компьютера, выполните следующие действия.
Убедитесь, что целевые компьютеры и узлы подключены к сетевому концентратору или коммутатору с соответствующим сетевым кабелем.
On the host computer, open a command prompt and enter IPConfig to display the IP configuration.
В выходных данных команды найдите IPv4-адрес адаптера Ethernet для компьютера:
<Host-IP-Address>
... Ethernet adapter Ethernet: ... IPv4 Address. . . . . . . . . . . : <Host-IP-Address> ...
Alternatively, use Settings>Network & internet>Ethernet to gather the IPv4 address information.
Запишите IPv4-адрес сетевого адаптера, который планируется использовать для отладки.
Настройте хосты и целевые компьютеры
Используйте служебную программу KDNET для автоматической настройки параметров отладчика на целевом компьютере, выполнив следующие действия.
Note
В этой процедуре предполагается, что вычислительные ресурсы узла и целевого объектов работают под управлением 64-разрядной версии Windows. Если конфигурация отличается, лучший подход заключается в том, чтобы запустить ту же "битность" средств на узле, работающем на целевом объекте. Например, если целевой объект работает под управлением 32-разрядной windows, запустите 32-разрядную версию отладчика на узле. Дополнительные сведения см. в разделе "Выбор 32-разрядных или 64-разрядных средств отладки".
Убедитесь, что средства отладки Windows установлены на хост-компьютере. Сведения о скачивании и установке средств см. в разделе "Средства отладки" для Windows.
Locate the kdnet.exe and VerifiedNICList.xml files on the host computer. По умолчанию файлы находятся в папке C:\Program Files (x86)\Windows Kits\10\Debuggers\x64 .
Скопируйте два файла на хост-компьютере в сетевую общую папку или большой диск, чтобы они были доступны для целевого компьютера.
On the target computer, create a C:\KDNET folder, and copy the kdnet.exe and VerifiedNICList.xml files to the folder.
Important
Before you use kdnet.exe to change boot information, you might need to temporarily suspend Windows security features on the test PC, such as BitLocker and Secure Boot. После завершения тестирования повторно создайте возможности безопасности. При отключении функций безопасности необходимо управлять тестируемым компьютером.
На целевом компьютере откройте командную строку от имени администратора. Введите следующую команду, чтобы проверить наличие поддерживаемого сетевого адаптера на целевом компьютере:
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.
After the output from the KDNET (kdnet.exe) command shows the network adapter supported on the target, you can proceed.
Введите следующую команду, чтобы задать IP-адрес системы узла и создать уникальный ключ подключения.
-
<Host-Computer-IP-Address>
Для значения используйте IP-адрес или имя хост-системы. -
<Debug-Port>
В качестве значения введите уникальный адрес порта для каждой пары целевых и узлов, с которыми вы работаете, в рекомендуемом диапазоне от 50000 до 50039.
C:\KDNET>kdnet.exe <Host-Computer-IP-Address> Enabling network debugging on Intel(R) 82577LM Gigabit Network Connection. Key=2steg4fzbj2sz.23418vzkd4ko3.1g34ou07z4pev.1sp3yo9yz874p
-
Save the key value returned by the KDNET command in a notepad .txt file.
Подключение WinDbg к целевому объекту для отладки ядра
Подключите WinDbg к целевому компьютеру для отладки ядра, выполнив следующие действия:
On the host computer, open WinDbg, and select File>Kernel Debug.
In the Kernel Debugging dialog, select the Net tab.
Paste the port number and key from the notepad.txt file into the tab fields, and select OK.
You can also start the WinDbg session from the command line by using the windbg.exe
command and the values you saved in the notepad.txt file.
windbg.exe -k -d net:port=<Debug-Port>,key=<KDNET-Key>
Значением <Debug-Port>
является выбранный ранее порт. Значением <KDNET-Key>
является ключ, возвращаемый KDNET. Необязательный -d
параметр включает ранний перерыв. Дополнительные сведения см. в разделе параметров командной строки WinDbg.
При запуске подключения WinDbg может предложить разрешить доступ к порту через брандмауэр:
In the message dialog, select each checkbox to enable access for all three network types, and select Allow access.
На этом этапе отладчик ожидает повторного подключения целевого объекта и отображает ход выполнения в командном окне отладчика:
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...
Перезапустите целевой компьютер
Когда отладчик отображает сообщение "Ожидание повторного подключения..." сообщение, перезагрузите целевой компьютер.
Одним из способов перезагрузки компьютера является выполнение следующей команды в командной строке от имени администратора:
shutdown -r -t 0
После перезапуска целевого компьютера отладчик должен подключаться автоматически.
Troubleshoot issues
Если у вас возникли проблемы с установкой подключения к порту или запуском сеанса отладки, ознакомьтесь со следующими советами по устранению неполадок.
Разрешить отладку приложений через брандмауэр
На стороне узла, где выполняется отладчик, все типы сети должны быть включены, чтобы отладчик взаимодействовал с целевым объектом через брандмауэр.
Use the Windows Control Panel to allow access through the firewall.
Open Control Panel>System and Security and select the appropriate Allow an app through Windows Firewall options:
WinDbg: In the list of applications, locate the WinDbg engine process (TCP) (all) option.
WinDbg (Classic): In the list of applications, locate the Windows GUI Symbolic Debugger and Windows Kernel Debugger options.
Select the checkboxes to allow all debugging applications through all three network types.
Select OK to save the firewall changes, and then restart the debugger.
Используйте ping для проверки подключения
Если отладчик истекает и не подключается, используйте ping
команду на целевом компьютере для проверки подключения:
C:\>Ping <HostComputerIPAddress>
Выбор порта для отладки сети
Если у отладчика превышено время ожидания и он не подключается, это может быть связано с тем, что номер порта по умолчанию 50000 уже используется или заблокирован.
Вы можете выбрать любой номер порта от 49152 до 65535 включительно. Рекомендуемый диапазон — 50000–50039. Выбор порта открывается для эксклюзивного доступа отладчиком, запущенным на хост-компьютере.
Политика сети компании может ограничить диапазон номеров портов, доступных для отладки сети. Чтобы определить, ограничивает ли политика вашей компании диапазон портов для отладки сети, обратитесь к администраторам сети.
Поиск поддерживаемых сетевых адаптеров
Если при запуске KDNET отладка сети не поддерживается ни на одном из сетевых адаптеров в этом сообщении компьютера , сетевой адаптер не поддерживается.
Главный компьютер может использовать любой сетевой адаптер, но целевой компьютер должен использовать сетевой адаптер, поддерживаемый средствами отладки для Windows. Список поддерживаемых сетевых адаптеров см. в следующих статьях:
- Поддерживаемые сетевые адаптеры Ethernet для отладки сетевого ядра в Windows 10
- Поддерживаемые сетевые адаптеры Ethernet для отладки сетевого ядра в Windows 8.1
Включение других типов отладки
Обновление Windows 10 за октябрь 2020 г. (20H2) и более поздние версии поддерживают четыре типа отладки:
KDNET option | Debugging type | Эквивалентная команда set | More information |
---|---|---|---|
b |
Bootmgr debugging | bcdedit /bootdebug {bootmgr} on |
BCDEdit /bootdebug |
w |
Winload debugging | bcdedit /bootdebug on |
BCDEdit /bootdebug |
k |
Kernel debugging | bcdedit /debug on |
Начало работы с WinDbg (режим ядра) |
h |
Hypervisor debugging | bcdedit /set hypervisordebug on |
BCDEdit /hypervisorsettings |
Ниже приведены сведения о работе с типами отладки:
- Можно указать любое сочетание типов отладки.
- Если вы не указываете типы отладки, система включает отладку ядра.
- Если включить отладку гипервизора и ядра, то для порта гипервизора задано
<Debug-Port>
значение +1.
Пример. Включение отладки bootmgr, ядра и winload
В следующем примере используется параметр для включения отладки начальной - bkw
загрузки, ядра и winload:
C:\>kdnet.exe <HostComputerIPAddress> <YourDebugPort> -bkw
Enabling network debugging on Intel(R) 82577LM Gigabit Network Connection.
Key=2steg4fzbj2sz.23418vzkd4ko3.1g34ou07z4pev.1sp3yo9yz874p
Укажите параметры шины
Если KDNET не может автоматически определить параметры шины для транспорта, можно указать параметры в командной строке с параметром /busparams
:
kdnet.exe /busparams [b.d.f] [host] [port] [-[b][h][k][w]]
Часть b.d.f
задает параметры шины для настройки устройства.
Use Device Manager on the target computer to determine the PCI bus number (b
), the device number (d
), and the function number (f
) of the adapter you want to use for debugging. These values are available in the General tab under the Location setting.
For example:
C:\>kdnet.exe /busparams 0.29.7 <Host-Computer-IP-Address> <Debug-Port> -bkw
Related articles
- Поддерживаемые сетевые адаптеры Ethernet для отладки сетевого ядра в Windows 10
- Поддерживаемые сетевые адаптеры Ethernet для отладки сетевого ядра в Windows 8.1
- Настройка отладки сетевого ядра KDNET вручную
- Начало работы с WinDbg (режим ядра)
- Отладка драйверов Windows — пошаговые лаборатории (режим эхо-ядра)