Два брандмауэра
В этом сценарии необходимо выполнить отладку ядра на компьютере в сборке A. Ваш техник находится в здании C и имеет доступ к символам там. Однако оба здания имеют брандмауэры, которые не разрешают входящие подключения.
Необходимо настроить повторитель на нейтральном сайте — скажем, здание В. Затем можно подключить А к В и подключить С к В.
В этом сценарии будет задействовано четыре компьютера:
Целевой компьютер, расположенный в здании A.
Локальный главный компьютер, расположенный в здании A. На этом компьютере будет запущен сервер подключения KD. Он будет подключен к целевому компьютеру с помощью отладочного кабеля или кабеля 1394 и будет подключаться к ретранслятору. Позвольте этому компьютеру иметь IP-адрес 127.0.10.10.
Компьютер в здании B. Это приведет к запуску повторителя. Пусть IP-адрес будет 127.0.20.20.
Компьютер в здании C, где находится техник. Этот компьютер будет запускать WinDbg в качестве смарт-клиента. Пусть IP-адрес будет 127.0.30.30.
Сначала убедитесь, что целевой компьютер настроен для отладки и подключен к локальному узлу. В этом примере используется кабель 1394.
Во-вторых, запустите повторитель прокси-сервера 127.0.20.20:
dbengprx -p -s tcp:port=9001 -c tcp:port=9000,clicon=127.0.10.10
В-третьих, запустите сервер подключения KD на 127.0.10.10 в сборке A следующим образом:
kdsrv -t tcp:port=9000,clicon=127.0.20.20,password=Password
Наконец, запустите смарт-клиент 127.0.30.30 в сборке C. (Это можно сделать до или после запуска сервера в сборке A.)
windbg -k kdsrv:server=@{tcp:server=127.0.20.20,port=9001,password=Password},trans=@{1394:channel=9} -y SymbolPath
Сценарий Five-Computer
Этот сценарий можно сделать еще более сложным, если предположить, что символы находятся на одном компьютере в здании C, но технический специалист находится на другом компьютере.
Предположим, что 127.0.30.30 имеет символы, как и раньше, и что его локальное имя \\BOXC
. Смарт-клиент можно запустить с той же командой, что и выше, но с дополнительным параметром -server. Так как никто не будет использовать этот компьютер, это займет меньше времени обработки, если вы используете KD вместо WinDbg:
kd -server npipe:pipe=randomname -k kdsrv:server=@{tcp:server=127.0.20.20,port=9001,password=Password},trans=@{1394:channel=9} -y SymbolPath
Затем технический специалист, в другом месте здания, может запустить клиент отладки следующим образом:
windbg -remote npipe:server=\\BOXC,pipe=randomname
Обратите внимание, что пароль должен быть предоставлен первым не повторяющимся в цепочке (смарт-клиент на \\BOXC
), а не конечным отладчиком в цепочке.
Важный
При использовании удаленной отладки необходимо учитывать важные аспекты безопасности. Дополнительные сведения о включении безопасного режима см. в разделе Безопасность во время удаленной отладки и вопросы безопасности для средств отладки Windows.