Conocer nuestra IP externa desde línea de comandos en Windows, usando PowerShell

En el pasado vimos cómo podíamos descubrir nuestra IP externa desde línea de comandos en Linux, sirviéndonos tanto de cURL como del comando wget. Como ahora ya todos sabéis que soy un apaniaguado del Tito Bill vamos a ver cómo hacerlo con el PowerShell de Microsoft.

Como siempre, cuando se trata de la IP externa, tenemos que recurrir a un servicio web externo. Hay un buen montón de opciones para esto, pero por comodidad (comodidad para mí, porque ya tengo las pruebas hechas con ese) recurriremos a https://api.ipify.org

En PowerShell podemos usar el cmdlt Invoke-WebRequest para lanzar peticiones http y https a una web y recoger su respuesta. Si llamamos al api que os ponía arriba obtendremos nuestra IP.

Invoke-WebRequest -uri "https://api.ipify.org/"

¿Y ya está? Pues no, porque eso nos devolverá como texto plano además de la IP el status de la respuesta y las cabeceras, por lo que aunque podemos leer la IP sería incómodo trabajar con ella. Pero por suerte el cmdlt nos permite filtrar y obtener solo el valor que nos interesa. Tal que así:

(Invoke-WebRequest -uri "https://api.ipify.org").content

De esa forma sí que obtendríamos solo la línea con el valor de la IP, ya que accedemos únicamente al contenido de la respuesta, al valor de content. Si quisiéramos meter el valor de la IP en una variable para trabajar con un script podríamos hacerlo tal que así:

$miDirIP = (Invoke-WebRequest -uri "https://api.ipify.org/").Content

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.