Cómo solucionar problemas de firewall de MS DTC

Seleccione idioma Seleccione idioma
Id. de artículo: 306843 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Resumen

Este artículo describe pasos de solución de problemas para ayudarle a habilitar el Coordinador de transacciones distribuidas de Microsoft (MS DTC) comunicarse a través un firewall con otro MS DTC a. La siguiente lista recoge algunas de los problemas que puede experimentar cuando utiliza MS DTC a través de un servidor de seguridad:
  • Las funciones de aplicación correctamente cuando los componentes MTS o COM + tienen su propiedad de Compatibilidad de transacción establecida en No compatible o compatible , pero no funciona correctamente cuando esa propiedad está establecida a requiere o Requiere nuevo .
  • Recibirá el siguiente mensaje de error:
    Nueva transacción no puede inscribirse en Coordinador de transacciones especificado
  • Recibirá el siguiente mensaje de error:
    Error 8004d00a. Error de transacciones distribuida
Aunque varios documentos de Microsoft describen cómo solucionar este problema, este artículo resume la mayoría de ellos.

Nota Los pasos de solución de problemas que siga están diseñados para utilizar con sólo sistemas operativos Microsoft Windows NT y Microsoft Windows 2000.

Más información

Pasos para solucionar el problema

importante Esta sección, el método o la tarea contiene pasos que indican cómo modificar el registro. Sin embargo, pueden producirse problemas graves si modifica incorrectamente el registro. Por tanto, asegúrese de que siga estos pasos cuidadosamente. Realice una para agregar protección, copia de seguridad del registro antes de modificarlo. A continuación, puede restaurar el registro si se produce un problema. Para obtener más información acerca de cómo realizar una copia de seguridad y restaurar el registro, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
322756Cómo realizar una copia de seguridad y restaurar el registro de Windows
  1. Compruebe que se ha iniciado el servicio MS DTC en ambos servidores.
  2. Si el servidor se está ejecutando Windows NT 4.0, debe volver a aplicar Service Pack 6 (SP6) de Windows NT 4.0 después de instalar Windows NT 4.0 Option Pack (NTOP). Revise las versiones de archivo que se enumeran en la tabla siguiente para comprobar que Windows NT 4.0 SP6 ha se vuelvan a aplicar después de la instalación de Windows NT 4.0 Option Pack:
    Contraer esta tablaAmpliar esta tabla
    Nombre de archivoVersión después de instalar NTOPVersión después de reinstalar SP6
    Msdtcprx.dll1997.11.5321999.6.854.0
    Msdtctm.dll1997.11.5321999.6.854.0
    Xolehlp.dll1997.11.5321998.08.762
    Para obtener más información acerca de Windows NT 4.0 Option Pack la instalación, consulte el siguiente documento técnico de Microsoft:
    Procedimiento de instalación recomendado de IIS 4.0
    http://support.microsoft.com/support/iis/install/install_iis4.asp
  3. Configurar ambos servidores para que la comunicación de MS DTC fluye entre el servidor de seguridad. Siga estos pasos al control de asignación dinámica de puertos RPC.

    Nota Debe seguir estos pasos en ambos equipos.

    Nota El servidor de seguridad debe estar abierto en ambas direcciones para los puertos especificados.
    1. Para iniciar el Editor del registro, haga clic en Inicio , haga clic en Ejecutar , escriba regedt32 y, a continuación, haga clic en Aceptar .

      Debe utilizar el archivo Regedt32.exe en lugar del archivo Regedit.exe. El archivo Regedit.exe no admite el tipo de datos REG_MULTI_SZ necesario para el valor de puertos.
    2. En el Editor del registro, expanda la clave siguiente:
      HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc
    3. Haga clic en la carpeta RPC y, a continuación, haga clic en Agregar clave en el menú Edición .
    4. En el cuadro de diálogo Agregar clave , escriba Internet en el cuadro Nombre de clave y, a continuación, haga clic en Aceptar .
    5. Haga clic en la carpeta de Internet y, a continuación, haga clic en Agregar valor en el menú Edición .
    6. En el cuadro de diálogo Agregar valor , escriba puertos en el cuadro Nombre de valor .
    7. En el cuadro Tipo de datos , seleccione REG_MULTI_SZ y, a continuación, haga clic en Aceptar .
    8. En el cuadro de diálogo Editor de cadenas múltiples , especifique los puertos que RPC para utilizar asignación de puertos dinámicos en el cuadro datos y, a continuación, haga clic en Aceptar .

      Cada valor de cadena que escriba especifica un único puerto o un intervalo inclusivo de puertos. Por ejemplo, para abrir el puerto 5000, especifique "5000". Para abrir el puerto 5000 al puerto 5020 inclusive, especifique "5000-5020". Puede especificar varios puertos o intervalos de puertos especificando un puerto o intervalo de puerto por línea. Todos los puertos deben estar en el intervalo de 1024 a 65535. Si cualquier puerto está fuera de este intervalo o cualquier cadena no es válida, RPC trata la configuración toda como no válida.

      Recomendamos que abra los puertos de 5000 y superiores y abrir un mínimo de 15 a 20 puertos.
    9. Siga los pasos e a h de paso para agregar otra clave. Utilice los siguientes valores:
      • Valor: PortsInternetAvailable
      • Tipo de datos: REG_SZ
      • Datos: Y
      Esto significa que los puertos que se enumeran en el valor de puertos están estén disponibles para Internet.
    10. Configure el servidor de seguridad para permitir el acceso entrante a los puertos dinámicos especificados y al puerto 135 (puerto asignador de extremos RPC).
    11. Reinicie el equipo. Reiniciar RPC asigna puertos entrantes dinámicamente, basándose en los valores del registro que haya especificado. Por ejemplo, para abrir puertos 5000 a través de 5020 inclusive, cree los siguientes valores:
      • Puertos: REG_MULTI-SZ: 5000-5020
      • PortsInternetAvailable: REG_SZ: Y
      • UseInternetPorts: REG_SZ: Y
    DTC también requiere que puede resolver nombres de equipo mediante NetBIOS o DNS. Puede probar si NetBIOS puede resolver los nombres mediante el protocolo PING y el nombre del servidor. El equipo cliente debe poder resolver el nombre del servidor. Además, el servidor debe poder resolver el nombre del cliente. Si NetBIOS no puede resolver los nombres, puede agregar entradas a los archivos Lmhosts en los equipos. Para obtener más información acerca de cómo configurar los puertos TCP en Windows 2000, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
    300083Cómo restringir los puertos TCP/IP en Windows 2000 y Windows XP
  4. Si todavía MSDTC no funciona a través del firewall, descargue la herramienta DTCPing.exe y instalar esta herramienta en ambos servidores implicados.El archivo siguiente está disponible para descargarlo del Centro de descarga de Microsoft:
    Contraer esta imagenAmpliar esta imagen
    http://download.microsoft.com/download/
    Download DTCPing.exe now
    El archivo DTCPing.exe contiene los siguientes archivos:
       Date         Time   Version  Size     Filename
       ----------------------------------------------------------
       29-Oct-2003  22:56  1.8.0.1  274,490  Dtcping.exe
       15-Dec-2003  22:05             1,618  Eula.txt
       24-Nov-2003  20:59             1,560  Machinea_failure.log
       24-Nov-2003  20:21             1,901  Machinea_success.log
       24-Nov-2003  20:55               999  Machineb_failure.log
       24-Nov-2003  20:31             1,750  Machineb_success.log
       24-Nov-2003  20:15             2,325  Readme.txt
    Fecha de lanzamiento: 24 de noviembre de 2003

    Para obtener información adicional acerca de cómo descargar los archivos de soporte técnico de Microsoft, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
    119591Cómo obtener Archivos de soporte técnico de Microsoft desde los servicios en línea
    Microsoft exploró este archivo en busca de virus. con el software de detección de virus más reciente disponible en la fecha de publicación. Asimismo, el archivo se almacenó en servidores seguros que ayudan a prevenir que se hagan cambios no autorizados.
  5. Utilizar el archivo Readme.txt que se incluye en el DTCPing.exe descarga para probar la comunicación de llamada a procedimiento remoto (RPC) y coordinador de transacciones distribuidas (DTC) de Server1 a Server2. Si esta prueba es correcta, ejecute la prueba desde el Servidor2 al Servidor1.

    Tenga en cuenta que si RPC no puede transmitir en cualquier dirección, la comunicación de MS DTC falla en ambas direcciones. Si falla la comunicación RPC, la ventana DTCPing (en el servidor) muestra este error, que también se guarda en el archivo dtcping.log asociado. Vea el archivo Readme.txt para obtener más información. Si la prueba falla en cualquier dirección y el registro indica que el error está en la comunicación RPC, vaya al paso siguiente. Si la prueba falla en cualquier dirección y el registro indica que el error está en comunicación de DTC, continúe con el paso 9 siguiente.
  6. Si RPC falló en al menos una dirección (por ejemplo, desde el Servidor1 a Server2) directa el Administrador de servidor de seguridad para asegurarse de está abierto en ambas direcciones Internet Control Message Protocol (ICMP).

    Nota Normalmente se puede determinar si RPC error leyendo el archivo dtcping.log.

    De forma predeterminada, ICMP es port1. Puede comprobarlo en el archivo de protocolo, que se encuentra en la carpeta %windir%\WinNT\System32\Drivers\. Servidor2 ping por nombre de NetBios desde el Servidor1. Si falla el comando ping, continúe con el paso siguiente. En caso contrario, vaya al paso 8.
  7. Servidor2 ping por dirección IP de Server1 para asegurarse de que el puerto correcto está abierto para un ping en el servidor de seguridad. Una traza de Monitor de red puede comprobarlo. Si el ping de la dirección IP es correcta y falla el ping del nombre NetBios, no hay un problema de resolución de nombres.

    Nota Puede utilizar el ipconfig/all comando para recuperar la dirección IP o las direcciones IP de un servidor.

    Una forma rápida de probar la resolución de nombres es realizar una entrada en el archivo hosts del servidor cliente. Éste es el servidor en el que el NetBios nombre ping falla. Puede modelar su entrada después de la entrada ejemplo que se incluye en el archivo.

    Nota Sólo debe crear una entrada en el archivo hosts para solucionar problemas. Si la nueva entrada corrige el problema de resolución de nombre, quite la entrada del archivo hosts y realice la entrada que debe en el DNS, el servidor WINS o el archivo LmHosts.

    Existen otras soluciones a problemas de resolución de nombres, pero están fuera del ámbito de este artículo.
  8. Si falla el Servidor2 ping desde el Servidor1 por nombre NetBios, o si tiene éxito Servidor2 ping desde el Servidor1 por nombre NetBios, pero la prueba DTCPing muestra la comunicación RPC sigue sin funcionar, es posible que puerto 135 (el asignador de puntos finales o EPM) no se ha abierto bidireccional en el servidor de seguridad. Compruebe el servidor de seguridad para asegurarse de que el EPM está abierto en ambas direcciones. En este punto, una traza de Monitor de red puede ayudarle a concretar el problema.
  9. Sólo llegar este paso si la prueba DTCPing indica RPC comunicación funciona en ambas direcciones. Si DTCPing indica que no hay errores en cualquier dirección, comunicación de RPC y MS DTC se transmiten correctamente.
  10. Si DTCPing indica que falló la comunicación de DTC en al menos una dirección (por ejemplo, desde el Servidor1 a Server2), dirigir los administradores de servidor de seguridad para comprobar que los puertos están abiertos que el desarrollador especificado cuando el desarrollador pasó el artículo de configuración de MS DTC (consulte el paso 3). Además, se pueden aplicar algunas reglas al firewall que prohíbe RPC devoluciones de llamada para los servidores uno (o ambos). Una traza de Monitor de red puede ayudar a solucionar esta situación particular.
  11. Si DTCPing devuelve un mensaje de error similar al siguiente:
    Inesperado: El guid de sesión es el mismo como guid compañero
    Compruebe si el servidor actual se ha duplicado o clonar del otro servidor. Si es así, busque la clave HKEY_CLASSES_ROOT\CID en el registro. Bajo esta clave, puede que observe más de un GUID. Busque el GUID cuya clave descripción subyacente es MSDTC . Tenga en cuenta que este GUID también aparece en la ventana de resultados DTCPing. Si el otro servidor tiene un GUID que es exactamente el mismo para MS DTC en su registro, debe crear un nuevo GUID para MS DTC en uno de los registros. GuidGen se puede utilizar para ello.

    Después de agregar este nuevo GUID y también todas sus claves subyacentes a HKEY_CLASSES_ROOT\CID , asegúrese de eliminar el GUID antiguo que está reemplazando.

    Si este paso resuelve el problema, se recomienda encarecidamente que lea el artículo siguiente para aprender más acerca de cómo duplicar (o "ghosting") equipos:Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
    162001No disco duplicadas las versiones instaladas de Windows

Propiedades

Id. de artículo: 306843 - Última revisión: lunes, 29 de octubre de 2007 - Versión: 5.3
La información de este artículo se refiere a:
  • Microsoft COM+ 1.0
  • Microsoft Transaction Services 2.0
Palabras clave: 
kbmt kbproductlink kbdownload kbdtc kbhowto KB306843 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 306843
Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com