Probar conectividad LDAP (puerto 389) con PowerShell
Test-NetConnection -ComputerName tu_dominio.local -Port 389
Sustituye tu_dominio.local
por el FQDN real del dominio (o el nombre del controlador de dominio, como dc1.empresa.local
).
Resultado esperado si LDAP está activo:
ComputerName : dc1.empresa.local
RemotePort : 389
TcpTestSucceeded : True
Si TcpTestSucceeded
es False
, entonces:
- El puerto LDAP está bloqueado (firewall o red).
- O el servidor no está funcionando como DC/LDAP.
Usar PowerShell con DirectoryEntry
Esto intenta hacer una conexión LDAP real usando .NET sin necesidad de RSAT:
try {
$ldap = New-Object System.DirectoryServices.DirectoryEntry("LDAP://$env:USERDNSDOMAIN")
if ($ldap.Name) {
Write-Output "Conexión LDAP exitosa con el dominio $($env:USERDNSDOMAIN)"
}
} catch {
Write-Output "Fallo al conectar con LDAP en el dominio $($env:USERDNSDOMAIN): $_"
}
Esto intentará conectar con el servidor LDAP según el dominio de usuario actual (USERDNSDOMAIN
). Si falla, mostrará el error.
Desde CMD con nltest
(integrado en Windows)
nltest /dsgetdc:tu_dominio.local
Este comando consulta el controlador de dominio, y si responde, implicará que LDAP está activo.
Ejemplo de salida:
DC: \\DC1.empresa.local
Address: \\192.168.1.10
LDAP port: 389
...
The command completed successfully
Escanear puerto con telnet
(si está habilitado)
telnet tu_dominio.local 389
Si la pantalla se queda en blanco, es que el puerto responde. Si da error, el puerto está cerrado o no hay servicio LDAP.
Nota sobre LDAP seguro (LDAPS)
- Si quieres probar LDAPS (LDAP sobre TLS), usa el puerto 636:
Test-NetConnection -ComputerName tu_dominio.local -Port 636