Compartir a través de


Elección del mejor método de depuración remota

Hay dos métodos principales para realizar la depuración remota, así como varios métodos adicionales y un gran número de métodos de combinación.

Estas son algunas sugerencias para ayudarle a elegir la mejor técnica.

  • La depuración remota a través del depurador suele ser el mejor método. Si simplemente tiene un servidor y un cliente y pueden conectarse libremente entre sí, los mismos archivos binarios del depurador se instalan tanto en el cliente como en el servidor, y el técnico de depuración que va a operar el cliente podrá comunicarse con alguien en la sala con el servidor, este es el método recomendado.

    El cliente y el servidor pueden ejecutar cualquier versión de Windows. No tienen que ejecutar la misma versión que las otras.

    Si el cliente no puede enviar una solicitud de conexión al servidor, pero el servidor puede enviar una solicitud al cliente, puede usar la depuración remota a través del depurador con una conexión inversa mediante el parámetro clicon .

  • La depuración remota a través de remote.exe se usa para controlar de forma remota una ventana del símbolo del sistema. Se puede usar para controlar de forma remota KD, CDB o NTSD. No se puede usar con WinDbg.

    Si el cliente no tiene copias de los archivos binarios del depurador, debe usar el método remote.exe.

  • Se puede usar un servidor de procesos o un servidor de conexión KD si el técnico de depuración no podrá comunicarse con alguien en la sala con el servidor. El cliente realiza todo el trabajo de depuración real (denominado cliente inteligente); esto elimina la necesidad de tener una segunda persona presente en el propio servidor.

    Los servidores de procesos se usan para la depuración en modo de usuario; Los servidores de conexión KD se usan para la depuración en modo kernel. Aparte de esta distinción, se comportan de maneras similares.

    Este método también es útil si el equipo en el que se ejecutará el servidor no puede controlar cargas pesadas de procesos, o si el técnico que ejecuta el cliente tiene acceso a archivos de símbolos o archivos de origen confidenciales y a los que el servidor no puede acceder. Sin embargo, este método no es tan rápido o eficaz como depuración remota a través del depurador. Este método no se puede usar para la depuración de archivos de volcado.

    Consulte Servidores de procesos (modo de usuario) y Servidores de conexión KD (modo kernel) para obtener más información.

  • Un repetidor es un servidor proxy ligero que retransmite datos entre dos equipos. Puede agregar un repetidor entre el cliente y el servidor si está realizando la depuración remota a través del depurador o si usa un servidor de procesos.

    El uso de un repetidor puede ser necesario si el cliente y el servidor no pueden comunicarse directamente entre sí, pero cada uno puede acceder a un equipo externo. También puede usar conexiones inversas con repetidores. Incluso es posible usar dos repetidores en una fila, pero esto rara vez es necesario.

    Consulte Repetidores para obtener más información.

  • También es posible controlar CDB (o NTSD) desde el depurador de kernel. Esta es otra forma de depuración remota. Consulte Control del depurador de User-Mode desde el depurador de kernel para obtener más información.

Se pueden realizar variaciones en todos estos métodos.

Es posible encadenar varios equipos juntos para aprovechar más de un método de transporte. Puede crear secuencias de transporte complicadas que tengan en cuenta dónde está el técnico, dónde se encuentran los símbolos y si hay firewalls que impiden conexiones en determinadas direcciones. Consulte Escenarios avanzados de depuración remota para ver algunos ejemplos.

Incluso puede realizar la depuración remota en un solo equipo. Por ejemplo, podría resultar útil iniciar un servidor de procesos con pocos privilegios y después conectarse a él con un cliente inteligente con privilegios elevados.