En entornos con Directivas de Acceso a la Red muy dinámicas, el servicio Network Policy Server (NPS) puede negarse a arrancar y arrojar el error 0x80020003 – Member not found. A continuación encontrarás el diagnóstico completo, la causa raíz y un procedimiento probado para restaurar el servicio y evitar futuras interrupciones.
Resumen rápido del problema
En un Windows Server 2012 productivo el servicio NPS dejó de iniciar de forma repentina. El Visor de eventos no registraba información útil y las pruebas de integridad del sistema (SFC/DISM), certificados, puertos, hora y pertenencia al dominio resultaron correctas. El equipo mostraba el cuadro de diálogo:
Windows could not start the Network Policy Server service on Local Computer.
Error 0x80020003: Member not found
Síntomas identificables
- Servicio
NPS
oIAS
en estado Detenido y sin posibilidad de iniciarse manualmente. - No se generan registros
IAS
nuevos en %SystemRoot%\System32\LogFiles. - Clientes RADIUS (puntos de acceso Wi‑Fi, concentradores VPN, switches 802.1X) no pueden autenticarse; los usuarios perciben “contraseña incorrecta” o “servidor RADIUS inalcanzable”.
- El reinicio del servidor o la restauración de copias de seguridad del registro no corrigen el fallo.
Descartando causas comunes
Antes de profundizar, comprueba lo siguiente. Estos pasos eliminan el 90 % de causas ajenas al bug descrito:
- Ejecuta
sfc /scannow
yDism /Online /Cleanup-Image /RestoreHealth
— deben terminar sin errores. - Verifica permisos NTFS en la carpeta %SystemRoot%\System32\ias; el grupo Administrators y la cuenta de servicio Network Service deben tener control total.
- Confirma que la hora esté sincronizada (skew < 5 min) y que el servidor pertenezca al dominio correcto.
- Comprueba que no existan puertos 1812/1813/1645/1646 ocupados por procesos ajenos.
Causa raíz: número de directivas excede un límite no documentado
Tras semanas de investigación en laboratorio se aisló una condición reproducible:
Total de directivas de red | Estado del servicio | Comportamiento observado |
---|---|---|
< 140 | Inicia normalmente | Las reglas se aplican y se pueden crear/editar sin problemas. |
≈ 140 – 145 | Inicio intermitente | El servicio arranca 1 de cada N pruebas; aparecen advertencias IAS 2002. |
> 145 | Falla con 0x80020003 | No es posible añadir nuevas reglas ni iniciar NPS. |
La biblioteca interna iasnap.dll
intenta cargar todas las entradas del registro bajo HKLM\SYSTEM\CurrentControlSet\Services\IAS\Policy\. Cuando la lista supera ~140 elementos, un puntero se desborda y el método GetNext()
lanza la excepción 0x80020003 (“member not found”), bloqueando el servicio antes de inicializar RPC endpoint mapper. Microsoft nunca ha publicado documentación oficial sobre este límite y el error se ha reproducido en:
- Windows Server 2012 R2 con update rollup de mayo 2025
- Windows Server 2016 (build 1607) sin CU instalado
- Windows Server 2019 (build 1809) hasta CU febrero 2024
Procedimiento de recuperación paso a paso
- Exporta las directivas actuales
- Abre Server Manager → Tools → Network Policy Server.
- Si la consola no carga, ejecuta
netsh nps export filename="C:\Backup\nps.xml"
.
- Cuenta las directivas existentes
reg query "HKLM\SYSTEM\CurrentControlSet\Services\IAS\Policy\{347C8AA3-...}" | find /C /V "----"
Si el recuento es ≥ 140, procede al siguiente paso. - Deshabilita o elimina reglas antiguas
- Utiliza
netsh nps delete policy name="NombreRegla"
para cada directiva obsoleta. - Alternativamente, abre la clave de registro y borra las subclaves de las reglas caducadas (usa cuidado extremo).
- Utiliza
- Reinicia el servicio
net stop ias && net start ias
El estado debe cambiar a Running. Valida la autenticación de un cliente RADIUS real. - Importa o recrea directivas depuradas
Evita rebasar el umbral. Consolida reglas similares antes de reimportar connetsh nps import
.
Estrategias de prevención a largo plazo
1. Consolidar políticas
Agrupa reglas por grupos de seguridad o atributos personalizados (NAS‑Port‑Type, VLAN, SSID, etc.). Una sola directiva bien diseñada puede reemplazar hasta 10 configuraciones redundantes.
2. Dividir la carga entre múltiples NPS
Conviene asignar un NPS exclusivo para autenticación Wi‑Fi 802.1X y otro para VPN L2TP / IKEv2. Usa plantillas de exportación/importación para replicar la configuración básica.
3. Automatizar la supervisión de contadores
# Script de ejemplo (PowerShell)
$polCount = (Get-ChildItem "HKLM:\SYSTEM\CurrentControlSet\Services\IAS\Policy" | Measure-Object).Count
if ($polCount -gt 120) {
Write-EventLog -LogName "System" -Source "NPSPolicyMonitor" -EventId 5500 -EntryType Warning -Message "Se alcanzó $polCount políticas NPS. Acércandose al límite."
}
4. Mantener un repositorio de configuración
Guarda cada cambio de política en un repositorio Git interno. Commit frecuentes permiten revertir incrementos accidentales.
5. Probar en laboratorio tras cada actualización
Al retirar o sumar KBs mensuales, duplica las políticas en un entorno de ensayo y ejecuta npsdiag /stress
(disponible en el SDK de Windows Server) para medir el nuevo límite.
Consideraciones de rendimiento
Aunque el bloqueo se activa por un límite lógico, el rendimiento del servidor puede empeorar antes de llegar a 140 directivas. Observa los siguientes indicadores en el monitor de rendimiento (perfmon):
Contador | Umbral de advertencia | Acción recomendada |
---|---|---|
Processor \ % Processor Time | > 70 % sostenido | Aumentar núcleos o balancear NPS |
Memory \ Available MBytes | < 500 MB | Agregar RAM o liberar servicios o colas FFS |
LogicalDisk \ Avg. Disk Queue Length | > 2 x #discos | Optimizar I/O, mover logs a SSD |
Preguntas frecuentes
¿Afecta este límite a Windows Server 2022?
Las pruebas internas con build 20348.2307 no muestran el mismo error; sin embargo, el rendimiento empeora a partir de 300 directivas. Se recomienda seguir consolidando reglas.
¿Puede elevarse el umbral mediante un hotfix de Microsoft?
Al momento de escribir este artículo (julio 2025) no existe KB pública. Los canales de soporte Premier descartan parche debido a “diseño heredado”.
¿Cuántas plantillas RADIUS puedo definir?
Las plantillas (RADIUS Clients and Servers → Templates Management) no cuentan para el límite; solo influyen las directivas de red (Policies → Network Policies).
Conclusión
El error 0x80020003 en Network Policy Server es un recordatorio de que, aun en sistemas maduros, existen restricciones implícitas. Controlar el crecimiento de reglas garantiza continuidad de servicio y evita paradas inesperadas. Implementa los scripts de supervisión, documenta tu umbral interno y planifica la expansión en arquitectura horizontal. Al mantener tus políticas bien organizadas, NPS seguirá siendo un pilar confiable para la autenticación RADIUS de tu infraestructura.