web-dev-qa-db-fra.com

Comment obtenir l'emplacement Internet (adresse IP) d'un ordinateur à l'aide de la ligne de commande?

Comment obtenir l'emplacement Internet (adresse IP) d'un ordinateur à l'aide de la ligne de commande?

Par exemple, en utilisant curl ou wget?

10
AlikElzin-kilaka

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

12
AlikElzin-kilaka

É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.

3
Ben N

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

0
Peter McAllister