Administrar la red desde la interfaz gráfica de Windows está bien… hasta que necesitas hacerlo rápido, documentarlo, repetirlo en varios equipos o diagnosticar un problema sin perder media mañana entrando en menús. Aquí PowerShell deja de ser “la consola esa azul” y se convierte en una navaja suiza bastante seria.
En esta entrada vamos a ver cómo consultar las conexiones de red de un portátil con Windows 11, identificar la conexión principal, ver la IP actual, cambiar la configuración IP, renovar DHCP, probar conectividad y hacer diagnósticos básicos.
1. Abrir PowerShell como administrador
Para muchas consultas no hace falta elevar permisos, pero para cambiar IP, DNS o reiniciar adaptadores sí.
Haz clic derecho sobre el botón de inicio y selecciona Terminal de Windows (Administrador) o busca PowerShell y ejecútalo como administrador.
2. Ver los adaptadores de red disponibles
Lo primero es saber qué tarjetas de red tiene el equipo y cuáles están activas:
Get-NetAdapter
Ejemplo de salida:
Name InterfaceDescription Status
---- -------------------- ------
Wi-Fi Intel(R) Wi-Fi 6 AX201 Up
Ethernet Realtek PCIe GbE Family Controller Disconnected
Bluetooth Network Bluetooth Device Disconnected
Aquí nos interesa especialmente la columna Status. Si queremos ver solo los adaptadores activos:
Get-NetAdapter | Where-Object {$_.Status -eq "Up"}
3. Ver la IP actual del equipo
Para ver las direcciones IP asignadas:
Get-NetIPAddress
La salida puede ser bastante grande, así que podemos filtrarla para ver solo IPv4:
Get-NetIPAddress -AddressFamily IPv4
Una forma más limpia:
Get-NetIPAddress -AddressFamily IPv4 |
Select-Object InterfaceAlias,IPAddress,PrefixLength
Ejemplo:
InterfaceAlias IPAddress PrefixLength
-------------- --------- ------------
Wi-Fi 192.168.1.45 24
Loopback 127.0.0.1 8
La IP 127.0.0.1 es la dirección local del propio equipo, no nos interesa para conexión real a red.
4. Ver la conexión principal del portátil
Un portátil puede tener Wi-Fi, Ethernet, VPN y adaptadores virtuales. La pregunta importante es: ¿por dónde está saliendo realmente el equipo a la red?
Podemos verlo consultando la ruta por defecto:
Get-NetRoute -DestinationPrefix "0.0.0.0/0"
Para verlo más claro:
Get-NetRoute -DestinationPrefix "0.0.0.0/0" |
Sort-Object RouteMetric |
Select-Object InterfaceAlias,NextHop,RouteMetric,InterfaceMetric
Ejemplo:
InterfaceAlias NextHop RouteMetric InterfaceMetric
-------------- ------- ----------- ---------------
Wi-Fi 192.168.1.1 0 50
Esto nos dice que la conexión principal sale por Wi-Fi y que la puerta de enlace es 192.168.1.1.
También podemos obtener directamente la IP principal usada para salir a Internet con este truco:
(Get-NetIPConfiguration | Where-Object {$_.IPv4DefaultGateway -ne $null}).IPv4Address.IPAddress
5. Ver configuración completa de red
Para ver IP, puerta de enlace y DNS de cada adaptador:
Get-NetIPConfiguration
Más filtrado para adaptadores con puerta de enlace:
Get-NetIPConfiguration |
Where-Object {$_.IPv4DefaultGateway -ne $null}
Esto suele mostrar la conexión realmente activa.
6. Ver los servidores DNS configurados
Get-DnsClientServerAddress
Solo IPv4:
Get-DnsClientServerAddress -AddressFamily IPv4
Para un adaptador concreto:
Get-DnsClientServerAddress -InterfaceAlias "Wi-Fi" -AddressFamily IPv4
7. Cambiar la IP de un adaptador
Antes de tocar nada, identifica bien el nombre del adaptador:
Get-NetAdapter
Supongamos que el adaptador se llama Wi-Fi.
Configurar una IP fija
New-NetIPAddress `
-InterfaceAlias "Wi-Fi" `
-IPAddress 192.168.1.50 `
-PrefixLength 24 `
-DefaultGateway 192.168.1.1
Aquí:
192.168.1.50es la IP que queremos asignar.24equivale a máscara255.255.255.0.192.168.1.1es la puerta de enlace.
Cuidado: si eliges una IP ya usada por otro equipo, te estarás fabricando una avería con la elegancia de un ladrillo en una cristalería.
8. Cambiar los DNS
Por ejemplo, para usar Cloudflare:
Set-DnsClientServerAddress `
-InterfaceAlias "Wi-Fi" `
-ServerAddresses ("1.1.1.1","1.0.0.1")
Para usar Google DNS:
Set-DnsClientServerAddress `
-InterfaceAlias "Wi-Fi" `
-ServerAddresses ("8.8.8.8","8.8.4.4")
Para usar los DNS del router o de DHCP otra vez:
Set-DnsClientServerAddress `
-InterfaceAlias "Wi-Fi" `
-ResetServerAddresses
9. Volver a DHCP
Si el portátil debe recibir IP automáticamente desde el router o servidor DHCP:
Set-NetIPInterface `
-InterfaceAlias "Wi-Fi" `
-Dhcp Enabled
Después reseteamos DNS para que también se obtengan automáticamente:
Set-DnsClientServerAddress `
-InterfaceAlias "Wi-Fi" `
-ResetServerAddresses
Y renovamos dirección:
ipconfig /release
ipconfig /renew
También podemos hacerlo con PowerShell, pero ipconfig sigue siendo rápido y útil.
10. Eliminar una IP fija configurada previamente
Si hemos configurado una IP fija y queremos eliminarla:
Remove-NetIPAddress `
-InterfaceAlias "Wi-Fi" `
-IPAddress 192.168.1.50
Si también queremos eliminar la puerta de enlace:
Remove-NetRoute `
-InterfaceAlias "Wi-Fi" `
-DestinationPrefix "0.0.0.0/0"
Después podemos volver a DHCP:
Set-NetIPInterface -InterfaceAlias "Wi-Fi" -Dhcp Enabled
Set-DnsClientServerAddress -InterfaceAlias "Wi-Fi" -ResetServerAddresses
11. Activar o desactivar un adaptador de red
Desactivar Wi-Fi:
Disable-NetAdapter -Name "Wi-Fi" -Confirm:$false
Activarlo de nuevo:
Enable-NetAdapter -Name "Wi-Fi"
Esto es útil cuando un adaptador se queda “tonto”, que es el término técnico no oficial para “Windows dice que todo está bien, pero no funciona nada”.
12. Reiniciar un adaptador de red
Podemos hacer un reinicio rápido del adaptador:
Restart-NetAdapter -Name "Wi-Fi"
Si PowerShell no reconoce Restart-NetAdapter, podemos hacer:
Disable-NetAdapter -Name "Wi-Fi" -Confirm:$false
Start-Sleep -Seconds 3
Enable-NetAdapter -Name "Wi-Fi"
13. Probar conectividad básica
Hacer ping al router
Test-Connection 192.168.1.1
O con el comando clásico:
ping 192.168.1.1
Si responde el router, la red local funciona.
Probar salida a Internet
Test-Connection 8.8.8.8
Si responde 8.8.8.8 pero no responde una web por nombre, probablemente el problema está en DNS.
Probar resolución DNS
Resolve-DnsName google.com
También podemos probar:
nslookup google.com
14. Probar un puerto concreto
Para comprobar si un servidor responde por un puerto específico:
Test-NetConnection google.com -Port 443
Ejemplo para probar SQL Server:
Test-NetConnection 192.168.1.100 -Port 1433
Ejemplo para probar escritorio remoto:
Test-NetConnection 192.168.1.100 -Port 3389
Ejemplo para probar una web:
Test-NetConnection robirasdesign.com -Port 443
La parte importante de la salida es:
TcpTestSucceeded : True
Si aparece False, no hay conexión TCP al puerto indicado. Puede ser firewall, servicio parado, ruta incorrecta, DNS, NAT o el clásico “nadie ha encendido el servidor”.
15. Ver la tabla de rutas
Para ver todas las rutas de red:
Get-NetRoute
Para ver solo la ruta por defecto:
Get-NetRoute -DestinationPrefix "0.0.0.0/0"
Esto es muy útil cuando hay VPNs, adaptadores virtuales o varias conexiones activas.
16. Ver conexiones activas
Para ver conexiones TCP activas:
Get-NetTCPConnection
Para filtrar conexiones establecidas:
Get-NetTCPConnection -State Established
Para ver conexiones hacia un puerto concreto, por ejemplo HTTPS:
Get-NetTCPConnection -RemotePort 443
Si queremos cruzarlo con procesos:
Get-NetTCPConnection -State Established |
Select-Object LocalAddress,LocalPort,RemoteAddress,RemotePort,State,OwningProcess
Y para saber qué proceso es:
Get-Process -Id 1234
Sustituye 1234 por el valor de OwningProcess.
17. Ver perfiles de red
Windows clasifica las redes como públicas o privadas. Esto afecta al firewall:
Get-NetConnectionProfile
Ejemplo:
Name : MiWifi
InterfaceAlias : Wi-Fi
NetworkCategory : Private
Cambiar una red a privada:
Set-NetConnectionProfile `
-InterfaceAlias "Wi-Fi" `
-NetworkCategory Private
Cambiarla a pública:
Set-NetConnectionProfile `
-InterfaceAlias "Wi-Fi" `
-NetworkCategory Public
En redes de empresa o redes no confiables, no conviene marcar todo como privado por comodidad. La comodidad en seguridad suele venir con factura, y no barata.
18. Limpiar caché DNS
Si un nombre resuelve mal o se ha cambiado un registro DNS recientemente:
Clear-DnsClientCache
También puedes consultar la caché actual:
Get-DnsClientCache
19. Renovar IP y limpiar configuración rápida
Comandos clásicos que siguen salvando vidas:
ipconfig /all
ipconfig /release
ipconfig /renew
ipconfig /flushdns
ipconfig /all sigue siendo de las formas más rápidas de ver toda la configuración de red.
20. Script rápido de diagnóstico de red
Este pequeño script muestra información útil de un vistazo:
Write-Host "=== Adaptadores activos ===" -ForegroundColor Cyan
Get-NetAdapter | Where-Object {$_.Status -eq "Up"} |
Select-Object Name, InterfaceDescription, Status, LinkSpeed
Write-Host "`n=== Configuración IP principal ===" -ForegroundColor Cyan
Get-NetIPConfiguration |
Where-Object {$_.IPv4DefaultGateway -ne $null} |
Select-Object InterfaceAlias, IPv4Address, IPv4DefaultGateway, DNSServer
Write-Host "`n=== Ruta por defecto ===" -ForegroundColor Cyan
Get-NetRoute -DestinationPrefix "0.0.0.0/0" |
Sort-Object RouteMetric |
Select-Object InterfaceAlias, NextHop, RouteMetric, InterfaceMetric
Write-Host "`n=== Prueba de conexión al router ===" -ForegroundColor Cyan
$gateway = (Get-NetIPConfiguration | Where-Object {$_.IPv4DefaultGateway -ne $null}).IPv4DefaultGateway.NextHop
if ($gateway) {
Test-Connection $gateway -Count 2
} else {
Write-Host "No se ha encontrado puerta de enlace." -ForegroundColor Yellow
}
Write-Host "`n=== Prueba de conexión a Internet por IP ===" -ForegroundColor Cyan
Test-Connection 8.8.8.8 -Count 2
Write-Host "`n=== Prueba DNS ===" -ForegroundColor Cyan
Resolve-DnsName google.com
21. Script para mostrar la IP principal
Si solo queremos ver la IP principal del equipo:
$conexionPrincipal = Get-NetIPConfiguration |
Where-Object {$_.IPv4DefaultGateway -ne $null} |
Select-Object -First 1
$conexionPrincipal.IPv4Address.IPAddress
Versión con más información:
$conexionPrincipal = Get-NetIPConfiguration |
Where-Object {$_.IPv4DefaultGateway -ne $null} |
Select-Object -First 1
[PSCustomObject]@{
Adaptador = $conexionPrincipal.InterfaceAlias
IP = $conexionPrincipal.IPv4Address.IPAddress
Gateway = $conexionPrincipal.IPv4DefaultGateway.NextHop
DNS = ($conexionPrincipal.DNSServer.ServerAddresses -join ", ")
}
22. Script para cambiar IP fácilmente
Ejemplo parametrizado:
$InterfaceAlias = "Wi-Fi"
$IPAddress = "192.168.1.50"
$PrefixLength = 24
$Gateway = "192.168.1.1"
$DNS = @("1.1.1.1", "8.8.8.8")
New-NetIPAddress `
-InterfaceAlias $InterfaceAlias `
-IPAddress $IPAddress `
-PrefixLength $PrefixLength `
-DefaultGateway $Gateway
Set-DnsClientServerAddress `
-InterfaceAlias $InterfaceAlias `
-ServerAddresses $DNS
Antes de ejecutarlo, conviene comprobar que la IP no responde:
Test-Connection 192.168.1.50 -Count 2
Que no responda no garantiza al 100% que esté libre, pero si responde, desde luego no deberías usarla.
23. Script para volver a automático
$InterfaceAlias = "Wi-Fi"
Set-NetIPInterface `
-InterfaceAlias $InterfaceAlias `
-Dhcp Enabled
Set-DnsClientServerAddress `
-InterfaceAlias $InterfaceAlias `
-ResetServerAddresses
ipconfig /release
ipconfig /renew
24. Diagnóstico básico según el síntoma
Caso 1: No tengo red
- Comprueba adaptador:
Get-NetAdapter - Comprueba IP:
Get-NetIPAddress -AddressFamily IPv4 - Comprueba puerta de enlace:
Get-NetIPConfiguration
Caso 2: Tengo red local, pero no Internet
- Prueba router:
Test-Connection 192.168.1.1 - Prueba Internet por IP:
Test-Connection 8.8.8.8
Si el router responde pero 8.8.8.8 no, puede haber problema de salida a Internet, router, firewall o proveedor.
Caso 3: Internet funciona por IP, pero no por nombre
- Prueba DNS:
Resolve-DnsName google.com - Limpia caché:
Clear-DnsClientCache - Cambia DNS temporalmente:
Set-DnsClientServerAddress
Caso 4: Una web no abre
- Prueba resolución:
Resolve-DnsName dominio.com - Prueba puerto 443:
Test-NetConnection dominio.com -Port 443 - Prueba ruta:
tracert dominio.com
Caso 5: No conecta una VPN o aplicación concreta
- Mira rutas:
Get-NetRoute - Mira conexiones activas:
Get-NetTCPConnection -State Established - Prueba puerto:
Test-NetConnection servidor.empresa.local -Port 443
25. Comandos imprescindibles resumidos
| Acción | Comando |
|---|---|
| Ver adaptadores | Get-NetAdapter |
| Ver IPs | Get-NetIPAddress -AddressFamily IPv4 |
| Ver configuración completa | Get-NetIPConfiguration |
| Ver DNS | Get-DnsClientServerAddress |
| Ver ruta principal | Get-NetRoute -DestinationPrefix "0.0.0.0/0" |
| Cambiar IP | New-NetIPAddress |
| Activar DHCP | Set-NetIPInterface -Dhcp Enabled |
| Cambiar DNS | Set-DnsClientServerAddress |
| Limpiar DNS | Clear-DnsClientCache |
| Probar ping | Test-Connection |
| Probar puerto | Test-NetConnection |
| Ver conexiones TCP | Get-NetTCPConnection |
| Reiniciar adaptador | Restart-NetAdapter |
Conclusión
PowerShell permite administrar y diagnosticar conexiones de red en Windows 11 de forma rápida, precisa y repetible. Para soporte técnico, administración de sistemas o simplemente para entender qué está pasando en un portátil, estos comandos son mucho más potentes que depender únicamente de la interfaz gráfica.
La idea no es memorizarlo todo. La idea es tener una pequeña caja de herramientas: ver adaptadores, identificar la conexión principal, revisar IP/DNS/gateway, probar conectividad y cambiar configuración cuando sea necesario.
Con eso ya puedes diagnosticar la mayoría de problemas habituales de red sin ir dando palos de ciego. Y eso, en soporte, vale oro con cable RJ45.