Mi Dirección IP
curl ipin.io
El comando estándar curl
funciona en la mayoría de los sistemas similares a Unix. Para salida en JSON:
curl ipin.io/json
curl --ipv4 ipin.io
Forzar la conexión IPv4 en Termux. Alternativa con timeout:
curl --connect-timeout 5 ipin.io
(Invoke-WebRequest -Uri "http://ipin.io").Content
Comando PowerShell simplificado. Para respuesta JSON:
(Invoke-WebRequest -Uri "http://ipin.io/json").Content | ConvertFrom-Json
wget -qO- ipin.io
Modo silencioso (-q
) con salida a stdout (-O-
). Para Alpine Linux (base de iSH):
apk add curl && curl ipin.io
wget -qO- --timeout=10 ipin.io
Recomendado para dispositivos con recursos limitados. Si wget
no está disponible:
opkg install wget-ssl
curl --max-time 5 ipin.io
Para contenedores mínimos sin curl:
docker run --rm alpine wget -qO- ipin.io
fetch('https://ipin.io/get_client_ip')
.then(r => r.ok ? r.json() : Promise.reject('Error en la API'))
.then(data => console.log('IP:', data.ip))
.catch(e => console.error('Error:', e))
Implementación básica con manejo de errores. Para uso en producción:
- Añadir manejo de tiempo de espera con AbortController
- Considerar los requisitos CORS si se realizan solicitudes entre orígenes
- Almacenar en caché los resultados para evitar la limitación de tasa
Nota:
Las API del navegador pueden devolver IPs diferentes a las verificadas en el servidor debido a proxies/VPN. Para obtener la IP exacta del cliente en aplicaciones web, considere la detección del lado del servidor.
Introducción detallada a la herramienta de consulta IP
Esta herramienta es una solución completa multiplataforma para consultar direcciones IP públicas, diseñada específicamente para desarrolladores y administradores de sistemas. Obtiene con precisión la dirección IP pública de los dispositivos en diversos entornos de red complejos. A diferencia de los servicios tradicionales de consulta IP, esta solución está optimizada para diferentes sistemas operativos y entornos, asegurando un rendimiento estable en diversos escenarios.
La herramienta es compatible con múltiples plataformas, incluidos terminales macOS/Linux, PowerShell de Windows, terminales Android Termux, terminales iOS iSH, sistemas de routers OpenWRT y entornos de contenedores Docker. Cada plataforma proporciona comandos con mejores prácticas verificados, teniendo en cuenta las diferencias en las implementaciones de las pilas de red, las características de la herramienta predeterminada y las limitaciones de configuración comunes.
Es especialmente destacable que también ofrecemos una implementación completa para JavaScript en el navegador, basada en la moderna API fetch, que admite llamadas asíncronas basadas en Promesas, lo que facilita a los desarrolladores de frontend la integración en aplicaciones web. Esta solución maneja problemas de CORS (intercambio de recursos de origen cruzado) e incluye un manejo robusto de errores.
Todas las interfaces de consulta admiten tanto protocolos IPv4 como IPv6 en modo dual-stack, seleccionando automáticamente el método de consulta óptimo según el entorno de red. Los resultados devueltos están disponibles tanto en texto plano como en formato JSON, con el formato JSON que proporciona información completa sobre la IP, como geolocalización, operador de red y otros datos extendidos.
Guía detallada de uso
1. Comandos específicos del entorno
Dependiendo del entorno de ejecución, recomendamos usar los siguientes comandos optimizados:
-
Sistemas Unix-like (macOS/Linux/BSD, etc.):
curl -s ipin.io
Utilice la herramienta curl por simplicidad y eficiencia, con la opción
-s
para habilitar el modo silencioso y evitar salidas innecesarias. Se recomienda agregar el parámetro de tiempo de espera:--connect-timeout 3
-
Sistemas Windows:
(Invoke-WebRequest -Uri "http://ipin.io" -UseBasicParsing).Content
Comando PowerShell nativo. Para sistemas antiguos, puede usar:
(New-Object Net.WebClient).DownloadString("http://ipin.io")
-
Dispositivos móviles:
# Android Termux curl --ipv4 --silent ipin.io # iOS iSH wget -qO- --no-check-certificate ipin.io
Android obliga a usar IPv4 para evitar problemas de doble pila, mientras que iOS omite la validación de certificados. Se recomienda agregar lógica de reintentos para mejorar la fiabilidad.
2. Consejos avanzados de uso
-
Salida en formato JSON:
Añada el camino
/json
a cualquier URL de comando para obtener datos estructurados:curl ipin.io/get_client_ip
Respuesta de ejemplo:
{"ip": "203.0.113.45"}
-
Consejos para depuración de red:
Para entornos de red complejos, recomendamos las siguientes combinaciones de parámetros:
curl --retry 2 --connect-timeout 5 --max-time 10 ipin.io
Este comando intentará conectarse en 5 segundos, reintentará hasta 2 veces y garantizará que la solicitud completa se realice en 10 segundos.