Problemas de conexión HTTP aleatoria

Problemas de conexión HTTP aleatoria

Tengo un extraño problema de acceso a Internet que no sé cómo solucionar. Un conjunto específico de sitios no se cargará con el estado "Restablecer conexión" aproximadamente el 90% de las veces. Acceder a ellos por su IP produce los mismos resultados. Hacer ping a la IP funciona (sin pérdida de paquetes). Estoy ejecutando Windows Server 2012 con las últimas actualizaciones instaladas.

Fiddler (depurador HTTP MITM) me dice que la respuesta HTTP es "HTTP 504". Wireshark me muestra que recibo paquetes de "Restablecimiento de conexión" en el nivel TCP.

Probé los siguientes cambios:

El problema persiste cuando:

  • Accediendo por IP
  • Usando wget
  • Usar un adaptador de red diferente (teléfono conectado a USB con 3G)
  • Usando un navegador diferente
  • Usando un navegador dentro de una VM VirtualBox
  • Deshabilitar el firewall
  • Arrancar en modo seguro w. redes.
  • Cambiando el servidor DNS.
  • Iniciar sesión como un usuario diferente que no sea administrador.

El problema desaparece cuando:

  • Usando una máquina diferente
  • Usando TOR
  • Usando un sistema operativo diferente
  • Reemitir la solicitud HTTP más de cinco veces en Fiddler (es decir, las primeras 5 reemisiones fallan, luego las siguientes funcionan).
  • Capturar la solicitud HTTP usando Fiddler y reemitirla en otra máquina.

Mi último recurso será reinstalar el sistema operativo. ¿Hay algo más que pueda intentar para solucionar este problema?

Respuesta1

Las conexiones que fallaban eran conexiones TCP a sitios web habilitados para CloudFlare. Windows Server 2012 habilita la notificación de congestión explícita de forma predeterminada: los indicadores ECN y CWR (ventana de congestión reducida) se establecen como verdaderos en los paquetes TCP.

Resolví el problema ejecutando

netsh interface tcp set global ecncapability=disabled

Respuesta2

Esto es una posibilidad un poco arriesgada, pero he visto que este procedimiento soluciona algunos problemas extraños que no habría podido resolver de otra manera. Así que definitivamente vale la pena intentarlo antes de recurrir a una reinstalación completa.

Restablezca la pila TCP/IP en su máquina Windows ejecutando

netsh int ip reset c:\resetlog.txt(el parámetro final para la ruta del registro es opcional)

También hay una herramienta automatizada si sigue el enlace a continuación.

Documentación:http://support2.microsoft.com/kb/299357/en

información relacionada