• ベストアンサー

IPアドレスから国名を取得

閲覧者のIPアドレスを取得し、そこから国名を引っ張り出して、データベースに登録する。 IP取得と、登録のやり方は分かるのですが、国名はどのようにすれば取ってこれるのでしょうか? ちなみに、IPアドレスはいろいろと調べて$_server[remote_add]でとっています。どなたか宜しくお願いします。

  • PHP
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.2

>これをスクリプトに組み込むにはどうすればいいのでしょうか? file_get_contents関数等でwhoisからデータを取得し、Country:をキーにして国名を抜き出します。 一行ずつ比較していっても良いと思いますが、正規表現を使っても楽かも知れません。

briantaphy
質問者

お礼

返事が遅くなりすみませんでした。素晴らしい!の一言です。いろんな関数があるんですね。もっと勉強します。有難う御座いました。

その他の回答 (1)

回答No.1

whois で検索し、その結果のCountry値でどうでしょうか。 ex: yahoo.com 66.94.234.13 の場合 http://whois.ansi.co.jp/?key=66.94.234.13

参考URL:
http://whois.ansi.co.jp/?key=66.94.234.13
briantaphy
質問者

補足

ご指摘のwhois検索,country値を見る。これをスクリプトに組み込むにはどうすればいいのでしょうか?そもそもそんなこと出来ないのでしょうか? 以下、考えてるフローです。 $ip = $_server[remote_addr]; $country = ここで関数?をつかって国名を取得 $sql = "insert into ......以下続く" 可能でしょうか?宜しくお願いします。

関連するQ&A

  • ASPでIPアドレスの逆引きした結果をしりたい

    サーバーの不正利用者の特定をするため、データーベースにIPアドレスか、 或いはIPアドレスを逆引きした結果を記録したいと考えています。 IPアドレスの取得については、 Request.ServerVariables("REMOTE_ADDR") で取得できることが分かるのですが、逆引きしたものは どうすれば取得できるのでしょうか?

  • PerlでIPアドレスを取得する方法

    Perl5.6 or 5.8を使っております。 環境変数からIPの取得をするのは、CGIで動いている前提?ですが、 CGIでなくてperlスクリプトが単体で動作した場合に他の例えばサーバーのアドレスを知るにはどのようにしたらよいのでしょうか? 自アドレスはgethostbyaddrで取得できます。 REMOTE_ADDRの値を取得したいです。

    • ベストアンサー
    • Perl
  • IPアドレス取得

    IPアドレスを取得しているということはどういうことを意味しますか? 自動取得であれば、DHCPでPC側にIPアドレスを割り振って いる・・・ということになりますがIPを取得していても、その時はページの表示ができて、しばらくすると、『ページを表示できません』の表示。 IP再取得するとまた、ホームページを表示するのですが、その後しばらく、閲覧していると、ホームページの表示ができなくなります。

  • IPアドレスを取得するには

    IPアドレスで閲覧拒否をしたいと思っています。 Webページを見に来た人のIPアドレスを取得するにはどうしたら良いのでしょうか? PHPでそういったAPIが用意してあるのでしょうか?

    • ベストアンサー
    • PHP
  • DHCPで取得したIPアドレスが頻繁に変わってしまうのですが

    LINUX(RedHat9)をファイルサーバにしています。 これとは別にDHCPサーバがあります。 DHCPサーバは都合上環境等を知ることは出来ません。 ファイルサーバのIPアドレスはDHCPで取得します。 本来、サーバにはDHCPでIPアドレスを取得してはいけないと思うのですが、都合上DHCPでIPアドレスを取得しています。 IPアドレスのリース期限は1日単位なのですが(と思っています)、頻繁にIPアドレスが変わってしまいます。1日数回というレベルです。 その都度リンクが切れてしまうので困っています。 なぜ1日単位というのがわかったかと言うと、同じDHCPサーバからIPアドレスを取得している別のWindowsマシンからipconfig /allコマンドで確認しました。 LINUXのファイルサーバマシンでは確認できていません。(LINUXではどう確認すればよいのでしょうか?) 現在はDHCPサーバが悪いのか、LINUXのファイルサーバのほうが悪いのか切り分けすらできてません。 何か心当たりのある方ご助言いただけませんでしょうか?

  • IPアドレスについて

    インターネットを閲覧するプロバイダーはヤフーBBを使っています。 独自ドメイン取得して有料サーバーであるサイトを公開しています。 もう1つ別会社のサーバーに契約してサイトを公開したとします。 この場合、IPアドレスっていうのは別々になるんですか? それとも同じプロバイダー(ヤフーBB)なので、サーバー会社を分けても同じIPアドレスになるんですか?(グーグル側が二つのサイトを同じIPアドレスと見るかどうか この辺よくわかりません。

  • IPアドレスなどの設定について

    お世話になります。 インターネット用のWi-Fi親機のIPアドレスが192.168.10.3で データベースサーバーのIPアドレスが192.168.10.50の時 クライアント側でインターネットできて データベースサーバーにも接続できる設定はどのようにすればよいのでしょうか。 クライアントのIPアドレスは192.168.10.21です。 ちなみに、 クライアントのデフォルトゲートウェイを192.168.10.3 優先DNSを192.168.10.50にした時 データベースにはpingが通のですが インターネットはできませんでした。 お手数をお掛けしますが教えて頂けませんでしょうか。 よろしくお願いいたします。

  • IPアドレス等について

    IPアドレス等の基本的なことがわからなくなっているのですが、 プロバイダに加入するという事は、 プロバイダのサーバとLANで接続されるという事なのでしょうか? 自分のマシンにはローカルIPアドレスが基本的には自動割振りされているのですか? それから、カテゴリーが違う質問かも知れませんが、 CGIの環境変数のREMOTE_HOSTやREMOTE_ADDRとは CGIプログラムを実行した人のプロバイダのホスト名やIPアドレスを言っているのでしょうか? よろしくお願いします。

  • グローバルIPアドレスの取得。

    自宅サーバで、CGIで作成したホームページを開設しています。 回線は光で、回線終端装置(ルータなどが含まれる)の不具合等で、終端装置をリセットすると、グローバルIPアドレスが、変わってしまい、CGIを何箇所も書き換えなければなりません。 グローバルIPをCGIで取得して、CGIで、IPを自動的に変更したいのですが、IPの取得はどうしたらできますか。 IPの取得部分のCGIプログラムが欲しいのですが。 よろしくお願いします。

    • ベストアンサー
    • CGI
  • DHCPからIPアドレスの取得が出来ません

    会社の社内LANに接続しています。 サーバーの設定で、IPアドレスのリリース期間を1日しているので、 毎日DHCPサーバーからIPアドレスを再リリースしています。 昨日まで問題なかったのですが、本日IPアドレスが取得できなくなりました。 「169.254.XX.XX」と言うIPアドレスになってしまいます。 DHCPからIPアドレスが取得できない時に、APIPA機能が働いて、 「169.254.XX.XX」になってしまうと言うところまでは分かりました。 LANケーブルを変えたり、ドライバの削除・再インストールを行っても、 全く改善されません。 とりあえず、固定IPアドレスにして社内LANに繋ぎました。 この現象を改善する方法を教えてください。

専門家に質問してみよう