Problema
En entornos Windows es frecuente que, tras ejecutar varias herramientas anti‑malware, la conexión a Internet deje de funcionar aunque el adaptador Wi‑Fi o Ethernet siga activo. El síntoma típico es la imposibilidad de resolver nombres de dominio: los navegadores muestran errores de DNS, nslookup devuelve Server failed y los comandos ping a direcciones externas fallan aunque se pueda hacer ping a la puerta de enlace local.
Este tipo de bloqueo no es exclusivo de un caso concreto; ocurre cuando alguna capa de la pila de red (hosts, proxy, NCSI, filtros NDIS) queda corrupta o en estado “pendiente” después de la desinfección. La solución requiere una revisión sistemática de los componentes que intervienen en la resolución de nombres y en la autorización de tráfico saliente.
Causa
Los orígenes más habituales de la pérdida de conectividad DNS tras una limpieza de malware son:
-
Entradas maliciosas en el archivo
hosts
Los troyanos añaden redirecciones a dominios críticos (p.ej.www.microsoft.com) para interceptar tráfico. Si la herramienta anti‑malware elimina esas líneas pero deja el archivo con formato incorrecto (UTF‑8 con BOM, líneas en blanco con caracteres invisibles), Windows ignora todo el archivo y falla la resolución. -
Configuración de proxy persistente
Algunos agentes modifican las claves del registroHKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings(ProxyEnable,ProxyServer). La eliminación parcial deja el proxy activo sin servidor válido, lo que bloquea todo el tráfico HTTP/HTTPS y, en algunos casos, impide que el cliente DNS use UDP. -
Filtros NDIS/NDISWAN o drivers de seguridad
Soluciones como Kaspersky, Bitdefender o herramientas de rootkit pueden instalar filtros de red (NDIS). Si el proceso de desinstalación no elimina los filtros, Windows sigue enviando paquetes a un driver inexistente, lo que corta la pila de red. -
Servicio NCSI (Network Connectivity Status Indicator) deshabilitado
Windows usa NCSI para validar la conectividad mediante una petición awww.msftncsi.com. Si la claveEnableActiveProbingestá a0, el sistema marca la red como “Sin acceso” y algunos firewalls de terceros bloquean la salida. -
Registros de DNS corruptos o caché dañada
La caché de DNS puede quedar con respuestas negativas o con TTL expirados que nunca se renuevan, especialmente después de cambiar el servidor DNS sin reiniciar el cliente.
Solución
El objetivo es restablecer la pila de red a un estado limpio, sin perder configuraciones legítimas. El proceso se divide en tres fases: limpieza, reconfiguración y verificación.
1. Limpieza profunda
-
Reemplazar el archivo
hosts
Renombrar el archivo actual y crear uno nuevo vacío con codificación ANSI.move %SystemRoot%\System32\drivers\etc\hosts %SystemRoot%\System32\drivers\etc\hosts.bak echo. > %SystemRoot%\System32\drivers\etc\hosts -
Eliminar configuraciones de proxy
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /f reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /f reg delete "HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /f reg delete "HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /f -
Desinstalar filtros NDIS huérfanos
Abrir el Administrador de dispositivos → Ver → Mostrar dispositivos ocultos → Expandir “Adaptadores de red”. Desinstalar cualquier entrada que tenga “NDIS Filter” o que pertenezca a un antivirus ya desinstalado. Reiniciar. -
Restablecer NCSI
reg add "HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet" /v EnableActiveProbing /t REG_DWORD /d 1 /f
2. Reconfiguración de la pila de red
-
Resetear Winsock y la configuración IP
netsh winsock reset netsh int ip reset netsh advfirewall reset -
Renovar la dirección DHCP y limpiar la caché DNS
ipconfig /release ipconfig /renew ipconfig /flushdns -
Asignar servidores DNS públicos (Google y Cloudflare) de forma estática para descartar problemas de ISP.
netsh interface ip set dns name="Ethernet" static 8.8.8.8 primary netsh interface ip add dns name="Ethernet" 1.1.1.1 index=2 -
Reiniciar servicios críticos
net stop dnscache net start dnscache net stop nlasvc net start nlasvc
3. Verificación
-
Ping a la puerta de enlace
ping 192.168.1.1Respuesta exitosa indica que la capa L2/L3 funciona.
-
Ping a un dominio externo
ping www.google.comSi falla, pasa al paso 3.
-
Consulta DNS explícita
nslookup www.google.com 8.8.8.8Respuesta correcta confirma que el cliente DNS puede usar el servidor configurado.
-
Comprobar NCSI
Abrirhttp://www.msftncsi.com/ncsi.txten el navegador; debe devolverMicrosoft NCSI. Si el archivo no se carga, revisa firewalls locales. -
Revisar tabla de rutas
route printLa ruta predeterminada (
0.0.0.0/0) debe apuntar al router local.
Si todos los pasos anteriores son satisfactorios, la conectividad debería estar restaurada.
Cuándo aplicar esta solución
- Síntomas: error de DNS en todos los navegadores,
nslookupdevuelve Server failed, ping a dominios externos falla mientras que la puerta de enlace responde. - Entorno: Windows 10/11, después de ejecutar herramientas anti‑malware, desinstalar antivirus o modificar el archivo
hosts. - Exclusiones: Si la red funciona en modo seguro con networking, el problema probablemente está en un servicio o driver de terceros; en ese caso, el procedimiento de filtros NDIS es esencial. Si la pérdida de conectividad ocurre sólo en una aplicación específica, el problema puede estar en reglas de firewall a nivel de aplicación y no requiere el reset completo.
Código
move %SystemRoot%\System32\drivers\etc\hosts %SystemRoot%\System32\drivers\etc\hosts.bak
echo. > %SystemRoot%\System32\drivers\etc\hosts
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /f
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /f
reg delete "HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /f
reg delete "HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet" /v EnableActiveProbing /t REG_DWORD /d 1 /f
netsh winsock reset
netsh int ip reset
netsh advfirewall reset
ipconfig /release
ipconfig /renew
ipconfig /flushdns
netsh interface ip set dns name="Ethernet" static 8.8.8.8 primary
netsh interface ip add dns name="Ethernet" 1.1.1.1 index=2
net stop dnscache
net start dnscache
net stop nlasvc
net start nlasvc
Verificación
- Ejecutar
ping 8.8.8.8. Si responde, la capa IP está operativa. - Ejecutar
nslookup www.microsoft.com. Devolver una dirección IPv4 válida confirma DNS. - Abrir
http://www.msftncsi.com/ncsi.txten el navegador; debe mostrarse el texto “Microsoft NCSI”. - Comprobar que el adaptador muestra “Conectado” y que no aparecen símbolos de advertencia en el Centro de redes y recursos compartidos.
Notas adicionales
- Respaldo del registro: antes de borrar claves de proxy, exporta la rama
HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settingsconreg export. - Filtros de terceros: algunos paquetes de seguridad (ex.: ESET, Sophos) crean varios filtros NDIS. Si persiste el problema, revisa la lista completa con
netsh interface show interfacey busca entradas con “Filter”. - Restaurar configuraciones personalizadas: después de validar la conectividad, vuelve a aplicar manualmente cualquier DNS interno o proxy corporativo necesario.
- Formato del hosts: Windows solo acepta codificación ANSI sin BOM. Editar con Notepad++ → Encoding → ANSI evita problemas ocultos.
- Herramientas de diagnóstico:
Microsoft Network MonitoroWiresharkpueden ayudar a identificar paquetes que se pierden en la capa de enlace cuando los pasos anteriores no resuelven el problema.