[PHP]inet-ip.infoを使って、PHPプログラムから自身のグローバルIPを取得する

カテゴリ: PHP

http://inet-ip.info/というサイトでは、特定のURLに対してHTTPリクエストを投げることで自分のPCのグローバルIPを取得することができます。

Linuxからcurlコマンドで確認する場合は以下のようにな形になります。

# curl http://inet-ip.info/ip
13.115.7.223

このように応答データとしてIPアドレスだけを返すシンプルなサービスなので、PHPのプログラムからもアクセスできます。

<?php
$globalIp = file_get_contents('http://inet-ip.info/ip');
echo $globalIp . PHP_EOL;

より多くの情報を取得したい場合は、http://inet-ip.info/jsonにアクセスすると良いようです。

<?php
$networkInfos = json_decode(file_get_contents('http://inet-ip.info/json'), true);
foreach ($networkInfos as $key => $value) {
    printf( "%16s : %s\n", $key, json_encode($value));
}

上記のスクリプトの実行結果は以下のような出力となります。

              IP : "13.115.7.223"
        Hostname : "[foo-bar.com.]"
     CountryCode : "JP"
     CountryName : "Japan"
          Accept : null
  AcceptEncoding : null
  AcceptLanguage : null
       UserAgent : null
   XForwardedFor : ["13.115.7.223"]
  XForwardedPort : ["80"]
 XForwardedProto : ["http"]
      RequestURI : "\/json"
Amazonでポイントを賢くGETする方法
Amazonギフト券チャージ で最大2.5%もお得!
こちらもおススメ
カテゴリ: PHP

コメントを残す

メールアドレスが公開されることはありません。