Mon Adresse IP
curl ipin.io
La commande curl
standard fonctionne sur la plupart des systèmes Unix. Pour une sortie JSON :
curl ipin.io/json
curl --ipv4 ipin.io
Forcer la connexion IPv4 sous Termux. Alternative avec timeout :
curl --connect-timeout 5 ipin.io
(Invoke-WebRequest -Uri "http://ipin.io").Content
Synthaxe PowerShell simplifiée. Pour une réponse JSON :
(Invoke-WebRequest -Uri "http://ipin.io/json").Content | ConvertFrom-Json
wget -qO- ipin.io
Mode silencieux (-q
) avec sortie sur stdout (-O-
). Pour Alpine Linux (base iSH) :
apk add curl && curl ipin.io
wget -qO- --timeout=10 ipin.io
Recommandé pour les appareils à ressources limitées. Si wget
n'est pas disponible :
opkg install wget-ssl
curl --max-time 5 ipin.io
Pour les conteneurs minimaux sans curl :
docker run --rm alpine wget -qO- ipin.io
fetch('https://ipin.io/get_client_ip')
.then(r => r.ok ? r.json() : Promise.reject('Erreur API'))
.then(data => console.log('IP :', data.ip))
.catch(e => console.error('Erreur :', e))
Implémentation de base avec gestion des erreurs. Pour une utilisation en production :
- Ajouter une gestion de délai avec AbortController
- Considérer les exigences CORS pour les requêtes cross-origin
- Mettre en cache les résultats pour éviter la limitation du taux
Remarque :
Les APIs navigateur peuvent retourner des IPs différentes de celles détectées côté serveur à cause des proxys/VPN. Pour obtenir l’IP réelle du client dans une appli web, envisagez une détection côté serveur.
Présentation détaillée de l'outil de requête IP
Cet outil est une solution complète multiplateforme pour interroger les adresses IP publiques, spécialement conçue pour les développeurs et les administrateurs systèmes. Il récupère précisément l'adresse IP publique des appareils dans divers environnements réseau complexes. Contrairement aux services classiques de requête IP, cette solution est optimisée pour différents systèmes d'exploitation et environnements afin de garantir des performances stables dans toutes les situations.
L'outil prend en charge plusieurs plateformes : terminaux macOS/Linux, PowerShell Windows, terminal Android Termux, terminal iOS iSH, systèmes routeur OpenWRT et environnements Docker. Chaque plateforme dispose de commandes best practices vérifiées, prenant en compte les différences d’implémentation de pile réseau, les caractéristiques de l’outil par défaut et les limitations de configuration.
À noter également : nous proposons une implémentation complète côté navigateur en JavaScript, basée sur l'API fetch moderne et les Promises, ce qui facilite l'intégration pour les développeurs front-end. Cette solution gère le CORS et inclut une gestion robuste des erreurs.
Toutes les interfaces de requête prennent en charge à la fois les protocoles IPv4 et IPv6 en dual-stack, choisissant automatiquement la méthode optimale selon l’environnement réseau. Les résultats sont disponibles en texte brut ou en JSON, ce dernier offrant des infos complètes comme la géolocalisation, l’opérateur réseau, etc.
Guide d'utilisation détaillé
1. Commandes spécifiques à l'environnement
Selon l'environnement, nous recommandons d'utiliser les commandes optimisées suivantes :
-
Systèmes de type Unix (macOS/Linux/BSD, etc.) :
curl -s ipin.io
Utilisez curl pour la simplicité et l'efficacité, avec l’option
-s
pour activer le mode silencieux. Il est recommandé d’ajouter le paramètre de délai :--connect-timeout 3
-
Systèmes Windows :
(Invoke-WebRequest -Uri "http://ipin.io" -UseBasicParsing).Content
Commande PowerShell native. Pour les anciens systèmes, vous pouvez utiliser :
(New-Object Net.WebClient).DownloadString("http://ipin.io")
-
Appareils mobiles :
# Android Termux curl --ipv4 --silent ipin.io # iOS iSH wget -qO- --no-check-certificate ipin.io
Android force IPv4 pour éviter les problèmes dual-stack, tandis que iOS saute la validation de certificat. Ajoutez une logique de répétition pour fiabilité accrue.
2. Conseils avancés
-
Sortie au format JSON :
Ajoutez le chemin
/json
à n'importe quelle URL de commande pour obtenir des données structurées :curl ipin.io/get_client_ip
Exemple de réponse :
{"ip": "203.0.113.45"}
-
Conseils pour le débogage réseau :
Pour des environnements réseaux complexes, nous recommandons les combinaisons de paramètres suivantes :
curl --retry 2 --connect-timeout 5 --max-time 10 ipin.io
Cette commande essaie de se connecter sous 5 secondes, fait jusqu'à 2 essais et garantit que la requête ne dépasse pas 10 secondes.