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

10

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

Par exemple, en utilisant curl ou wget?

AlikElzin-kilaka
la source
4
Pourriez-vous préciser ce qu'est un "emplacement Internet"?
Carsten S
L'adresse de l'adresse IP. Ajout aux questions ...
AlikElzin-kilaka

Réponses:

12

Un service fournit ceci: ipinfo.io .

Vous pouvez l'invoquer avec 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

AlikElzin-kilaka
la source
3
Veuillez noter que ce service ne fournit pas un emplacement précis. 50km de mal pour moi.
DavidPostill
1
Je ne sais pas comment ça marche. Je suis actuellement sur Internet mobile. Google maps parvient à me localiser parfaitement.
DavidPostill
1
La commande curl ci-dessus va simplement à un service sans rien fournir de privé. ipinfo.io n'a presque que l'adresse IP source à utiliser pour déterminer l'emplacement et obtenir des données.
AlikElzin-kilaka
2
geoip est notoirement inexact ... Je peux être en Idaho, au Minnesota ou en Oregon en fonction du réseau DHCP de la journée.
Fiasco Labs
2
@ DavidPostill Google Maps utilise le GPS pour vous positionner sur la carte, c'est assez précis. La géolocalisation par adresse IP donne généralement la bonne région.
Alexey Ivanov
2

Comme la question ne spécifie pas de système d'exploitation, voici comment obtenir cette même information avec PowerShell curl(en réalité, un alias de Invoke-WebRequest):

(curl ipinfo.io).Content

Cela produit une chaîne JSON. Pour obtenir l'objet que JSON représente, utilisez ConvertFrom-Json:

curl ipinfo.io | ConvertFrom-Json

Comme il s'agit d'un objet PowerShell, vous pouvez facilement en extraire des champs spécifiques. Par exemple, cette commande obtient uniquement l'adresse IP externe sous forme de chaîne:

(curl ipinfo.io | ConvertFrom-Json).ip

Notez que les informations géographiques de ce service ne sont pas très précises, mais il m’a localisée à moins de 20 miles. Les informations sur les FAI semblent fiables.

Ben N
la source