Partager via


Choix de la meilleure méthode de débogage à distance

Il existe deux méthodes principales d’exécution du débogage distant, ainsi que plusieurs méthodes supplémentaires et un grand nombre de méthodes combinées.

Voici quelques conseils pour vous aider à choisir la meilleure technique.

  • Le débogage distant via le débogueur est généralement la meilleure méthode. Si vous avez simplement un serveur et un client et qu’ils peuvent librement se connecter les uns aux autres, les mêmes fichiers binaires du débogueur sont installés sur le client et le serveur, et le technicien de débogage qui fonctionnera le client sera en mesure de communiquer avec quelqu’un dans la salle avec le serveur, il s’agit de la méthode recommandée.

    Le client et le serveur peuvent exécuter n’importe quelle version de Windows. Ils n’ont pas besoin d’exécuter la même version que les autres.

    Si le client ne parvient pas à envoyer une demande de connexion au serveur, mais que le serveur est en mesure d’envoyer une demande au client, vous pouvez utiliser le débogage à distance via le débogueur avec une connexion inversée à l’aide du paramètre clicon.

  • La communication à distance à l'aide de remote.exe permet de contrôler à distance une fenêtre de l'Invite de commande. Il peut être utilisé pour contrôler à distance KD, CDB ou NTSD. Il ne peut pas être utilisé avec WinDbg.

    Si votre client n’a pas de copies des fichiers binaires du débogueur, vous devez utiliser la méthode remote.exe.

  • un serveur de processus ou un serveur de connexion KD peut être utilisé si le technicien de débogage ne sera pas en mesure de parler à quelqu'un dans la salle avec le serveur. Tout le travail de débogage réel est effectué par le client (appelé de client intelligent) ; cela supprime la nécessité d’avoir une deuxième personne présente au serveur lui-même.

    Les serveurs de processus sont utilisés pour le débogage en mode utilisateur ; Les serveurs de connexion KD sont utilisés pour le débogage en mode noyau. À part cette distinction, ils se comportent de manière similaire.

    Cette méthode est également utile si l’ordinateur sur lequel le serveur s’exécute ne peut pas gérer de charges de processus lourdes, ou si le technicien exécutant le client a accès aux fichiers de symboles ou aux fichiers sources confidentiels et qui ne sont pas accessibles par le serveur. Toutefois, cette méthode n’est pas aussi rapide ou efficace que le débogage à distance via le débogueur. Cette méthode ne peut pas être utilisée pour le débogage de fichiers dump.

    Pour plus d’informations, consultez serveurs de processus (mode utilisateur) et serveurs de connexion KD (mode noyau).

  • Un répéteur est un serveur proxy léger qui relaye les données entre deux ordinateurs. Vous pouvez ajouter un répéteur entre le client et le serveur si vous effectuez un débogage distant via le débogueur ou si vous utilisez un serveur de processus.

    L’utilisation d’un répéteur peut être nécessaire si votre client et votre serveur ne peuvent pas communiquer directement entre eux, mais peuvent chacun accéder à un ordinateur extérieur. Vous pouvez également utiliser des connexions inversées avec des répéteurs. Il est même possible d’utiliser deux répéteurs dans une ligne, mais cela est rarement nécessaire.

    Voir Répéteurs pour plus de détails.

  • Il est également possible de contrôler CDB (ou NTSD) à partir du débogueur du noyau. Il s’agit d’une autre forme de débogage à distance. Veuillez consulter la section Contrôler le débogueur en mode utilisateur depuis le débogueur noyau pour plus de détails.

Les variations de toutes ces méthodes sont possibles.

Il est possible de chaîner plusieurs ordinateurs ensemble pour tirer parti de plusieurs méthodes de transport. Vous pouvez créer des séquences de transport complexes qui prennent en compte l’endroit où se trouve le technicien, où se trouvent les symboles et si des pare-feu empêchent les connexions dans certaines directions. Consultez scénarios de débogage à distance avancés pour obtenir des exemples.

Vous pouvez même effectuer un débogage à distance sur un seul ordinateur. Par exemple, il peut être utile de démarrer un serveur de processus à faible privilège, puis de se connecter à celui-ci avec un client intelligent à privilèges élevés.

Important

Il existe des considérations importantes en matière de sécurité lors de l’utilisation du débogage à distance. Pour plus d’informations, notamment sur l’activation du mode sécurisé, consultez Sécurité pendant le débogage à distance et considérations relatives à la sécurité pour les outils de débogage Windows.