Deux pare-feu
Dans ce scénario, vous devez effectuer le débogage du noyau sur un ordinateur dans le bâtiment A. Votre technicien se trouve dans le bâtiment C et y a accès aux symboles. Toutefois, les deux bâtiments ont des pare-feu qui n’autorisent pas les connexions entrantes.
Vous devez configurer un répéteur sur un site neutre, par exemple, le bâtiment B. Ensuite, vous pouvez connecter A vers l’extérieur à B, et connecter C vers L’extérieur à B.
Quatre ordinateurs seront impliqués dans ce scénario :
L’ordinateur cible, situé dans le bâtiment A.
L’ordinateur hôte local, situé dans le bâtiment A. Cet ordinateur exécute un serveur de connexion KD. Il sera connecté à l’ordinateur cible par un câble de débogage ou un câble 1394, et se connectera vers l’extérieur au répéteur. Laissez l’adresse IP de cet ordinateur 127.0.10.10.
Ordinateur du bâtiment B. Le répéteur est alors exécuté. Laissez son adresse IP 127.0.20.20.
Ordinateur du bâtiment C où se trouve le technicien. Cet ordinateur exécutera WinDbg en tant que client intelligent. Laissez son adresse IP 127.0.30.30.
Tout d’abord, assurez-vous que l’ordinateur cible est configuré pour le débogage et qu’il est attaché à l’ordinateur hôte local. Dans cet exemple, un câble 1394 est utilisé.
Deuxièmement, démarrez le répéteur sur 127.0.20.20 :
dbengprx -p -s tcp:port=9001 -c tcp:port=9000,clicon=127.0.10.10
Troisièmement, démarrez le serveur de connexion KD sur 127.0.10.10 dans la génération A comme suit :
kdsrv -t tcp:port=9000,clicon=127.0.20.20,password=longjump
Enfin, démarrez le client intelligent sur 127.0.30.30 dans le bâtiment C. (Cette opération peut être effectuée avant ou après le démarrage du serveur dans le bâtiment A.)
windbg -k kdsrv:server=@{tcp:server=127.0.20.20,port=9001,password=longjump},trans=@{1394:channel=9} -y SymbolPath
scénario Five-Computer
Ce scénario peut être encore plus compliqué si vous supposez que les symboles se trouvent sur un ordinateur dans le bâtiment C, mais que le technicien se trouve sur un autre ordinateur.
Supposons que 127.0.30.30 possède les symboles, comme précédemment, et que son nom local est \\BOXC. Le client intelligent peut être démarré avec la même commande que ci-dessus, mais avec un paramètre -server supplémentaire. Étant donné que personne n’utilise cette machine, le temps de traitement est moins long si vous utilisez KD au lieu de WinDbg :
kd -server npipe:pipe=randomname -k kdsrv:server=@{tcp:server=127.0.20.20,port=9001,password=longjump},trans=@{1394:channel=9} -y SymbolPath
Ensuite, le technicien, ailleurs dans le bâtiment, peut démarrer un client de débogage comme suit :
windbg -remote npipe:server=\\BOXC,pipe=randomname
Notez que le mot de passe doit être fourni par le premier non-répéteur de la chaîne (le client intelligent sur \\BOXC), et non par le débogueur final dans la chaîne.