13


6

PHPページを閲覧している人のISPプロバイダを見つけるにはどうすればよいですか?

それを追跡または明らかにするためにPHPを使用することは可能ですか?

私が以下のようなものを使うならば:

gethostbyaddr($ _ SERVER ['REMOTE_ADDR']);

ホスト名やISPではなく、私のIPアドレスを返します。

13 Answer


10


これはあなたが探しているもののようです。可能であれば、完全なホスト名を返そうとします。


10


あなたは以下のPHPコーディングからそれらすべてを得ることができます。

(。*?)<\ / th>(。*?)<\ / td> / s '、$ url、$ output、PREG_SET_ORDER);

$ isp = $ output [1] [2];

$ city = $ output [9] [2];

$ state = $ output [8] [2];

$ zipcode = $ output [12] [2];

$ country = $ output [7] [2];

?

ISP:

市区町村:

都道府県:

郵便番号 :

国:


9


HTTPヘッダには、ユーザがどの* ISP *から来たのかを示すものは何もないので、答えは「いいえ」です。これを知らせるPHP組み込み関数はありません。 あなたはIPをネットワーク/ ISPにマッピングするある種のサービスまたはライブラリを使わなければならないでしょう。


2


時々分野が変わるので、これは上記の記事の改善です。

<? $ ip = $ _ SERVER ['REMOTE_ADDR']; $ url = file_get_contents( "http://whatismyipaddress.com/ip/$ip"); preg_match_all( '/(.*?)<\/ th>(。*?)<\ / td> / s'、$ url、$ output、PREG_SET_ORDER); for($ q = 0; $ q <25; $ q){if($ output [$ q] [1]){if(!stripos($ output [$ q] [2]、 "Blacklist")){ echo ""。$ output [$ q] [1]。

msgstr "$ output [$ q] [2]"#:。

";}}}?>


2


なぜARINのREST APIを使わないのですか。

ハンドル:{$ result-> net-> handle  - > {'$'}}参照:{$ result-> net-> ref  - > {'$'}}名前:{$ result-> net-> name- > {'$'}} echo "OrgRef:{$ result-> net-> orgRef  - > {'@ name'}}";

終わり; // eof


2


これらすべての答えが役に立たない場合は、APIの方法を試すことができます。

1.http://extreme-ip-lookup.com/json/%5BIP ADDRESS HERE]

2.http://ip-api.com/json/%5BIP ADDRESS HERE]

それがうまくいったら、JSONをPHPに変換することを忘れないでください。


1


これであなたのインターネットアドレスがわかります。 そのアドレスをhttp://arin.net/whoisのデータベースに接続してください。


1


GeoIPはこれを手助けしてくれるでしょう:http://www.maxmind.com/app/locate_my_ip

geoipデータにアクセスするためのphpライブラリがあります。http://www.maxmind.com/app/php

しかし注意してください、あなたはそれを機能させるためにあなたのマシン上にgeoip dbを置く必要があります、すべての指示はそこにあります:)


1


誰かが使用しているISPを知るためにIPアドレスまたはホスト名のどちらにも頼ることはできません。 実際、彼は全くISPを使用していないかもしれません、あるいは彼は自分の勤務先へのVPN接続を介してそこから別のVPNまたはリモートデスクトップを使用して世界中のホスティングサービスにログインし、そこからあなたに接続するかもしれません。 あなたが取得するIPアドレスは、その最後のリモートマシンからか、あるいはそのマシンが後ろに座っているファイアウォールからのものになります。


0


IPを検索してサービスプロバイダを見つけるには、サードパーティのサービス(おそらくWebサービス)を使用する必要があると思います。