Comment obtenir l'emplacement Internet (adresse IP) d'un ordinateur à l'aide de la ligne de commande?
Par exemple, en utilisant curl ou wget?
Il y a un service qui fournit ceci: ipinfo.io .
Vous pouvez l'invoquer à l'aide de curl
. Exemple:
curl ipinfo.io
Résultat:
{
"ip": "...",
"hostname": "...",
"city": "...",
"region": "...",
"country": "...",
"loc": "...,...",
"org": "..."
}
Une adresse IP spécifique peut également être demandée: curl ipinfo.io/216.58.194.46
:
{
"ip": "216.58.194.46",
"hostname": "dfw25s12-in-f14.1e100.net",
"city": "Mountain View",
"region": "California",
"country": "US",
"loc": "37.4192,-122.0574",
"org": "AS15169 Google Inc.",
"postal": "94043"
}
Source: http://xmodulo.com/geographic-location-ip-address-command-line.html
Étant donné que la question ne spécifie pas un système d'exploitation, il s'agit de savoir comment obtenir les mêmes informations avec PowerShell's curl
(en fait un alias de Invoke-WebRequest
):
(curl ipinfo.io).Content
Qui produit une chaîne JSON. Pour obtenir l'objet que JSON représente, utilisez ConvertFrom-Json
:
curl ipinfo.io | ConvertFrom-Json
Comme c'est un objet PowerShell, vous pouvez facilement obtenir des champs spécifiques. Par exemple, cette commande obtient juste l'IP externe en tant que chaîne:
(curl ipinfo.io | ConvertFrom-Json).ip
Notez que les informations géographiques de ce service ne sont pas super précises, mais cela m'a localisé dans les 20 milles environ. Les informations du FAI semblent être fiables.
Vous pouvez également utiliser de PowerShell:
Invoke-RestMethod http://ipinfo.io/json
La sortie de commande nous donnera déjà l'emplacement dans JSON
Extrait de: https://www.sysadmit.com/2019/01/windows-saber-ip-publica-powershell.html