web-dev-qa-db-ja.com

コマンドラインを使用してコンピューターのインターネット(IPアドレス)の場所を取得する方法

コマンドラインを使用してコンピューターのインターネット(IPアドレス)の場所を取得する方法

たとえば、curlまたはwgetを使用していますか?

10

これを提供するサービスがあります: ipinfo.io

curlを使用して呼び出すことができます。例:

curl ipinfo.io

結果:

{
  "ip": "...",
  "hostname": "...",
  "city": "...",
  "region": "...",
  "country": "...",
  "loc": "...,...",
  "org": "..."
}

特定のIPの情報もリクエストできます: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"
}

ソース: http://xmodulo.com/geographic-location-ip-address-command-line.html

12

質問ではOSを指定していないため、PowerShellのcurl(実際にはInvoke-WebRequestのエイリアス)を使用して同じ情報を取得する方法は次のとおりです。

(curl ipinfo.io).Content

これにより、JSON文字列が生成されます。 JSONが表すオブジェクトを取得するには、ConvertFrom-Jsonを使用します。

curl ipinfo.io | ConvertFrom-Json

これはPowerShellオブジェクトなので、特定のフィールドを簡単に取得できます。たとえば、次のコマンドは外部IPのみを文字列として取得します。

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

このサービスからの地理情報はそれほど正確ではありませんが、20マイルほど以内に私を見つけました。 ISP情報は信頼できるようです。

3
Ben N

PowerShellからも使用できます。

Invoke-RestMethod http://ipinfo.io/json

コマンド出力は、JSONでの場所をすでに提供しています

抽出元: https://www.sysadmit.com/2019/01/windows-saber-ip-publica-PowerShell.html

0