web-dev-qa-db-ja.com

WHOIS情報以外にGeoIPサービスで使用される方法は何ですか?

私は、GeoIPサービスがIPアドレスのWHOIS情報をチェックする以外に、IPの地理的位置に関するデータをどのように収集するのか疑問に思っていました。たとえば、私はこのWebサイトに出くわしました。これは、IP 74.207.244.221がカリフォルニア州フリーモントにあることを示しています。 https://ipinfo.io/74.207.244.221

しかし、私はこのIPwhois情報でこの情報を見つけることができません。 ipinfo.ioは次のように述べています。

元々、APIはMaxMindデータを使用していましたが、独自の地理位置データの作成に非常に忙しくしています。私たちは多くの進歩を遂げ、今ではすべてのリクエストの約半分を処理するために独自のデータを使用しています。ただし、MaxMindデータへのフォールバックは引き続き行います

そしてこれは私に興味を持った、ipinfo.ioやMaxMindのようなサービスがGeoIPデータを収集する方法は何ですか?

11
Learner

このようなサービスは通常、IPアドレスを地理的に特定するために3つの方法を使用します。

  1. whoisデータベースを調べて住所を検索します。
  2. 逆引きDNSクエリを追跡して、ドメイン名レコードに基づいて手がかりを見つけようとするか、宛先に送信されたパケットのパスを追跡します。これにより、手がかりが得られる場合もあります(たとえば、tracerouteを使用)。
  3. そして最後に、RTT三​​角測量を使用します。

Round-Trip Time(RTT)Triangulationは、3つの異なる場所からのping遅延を測定することにより、IPアドレスのおおよその地理的位置を取得するために使用される方法です。

たとえば、三角形の形で世界中に3つのサーバーが分散していて、3つすべてからIPアドレスにpingを実行してレイテンシーについて同じ結果が得られた場合、IPアドレスは次の場所にあることを意味します。その三角形の中心。これは三角測量が機能する方法ですが、この場合はICMPpingで使用されます。

あなたが読むことができるリソース:
pingとは何ですか?@ウィキペディア
RTT三角測量に関するSIGCOMMの論文

11
Fanatique

私は IPinfo の創設者なので、これに関する詳細を確実に提供できます。独自のジオロケーションデータベース(またはIPから会社、IPからキャリアなどの他のデータセット)を作成するために使用する単一の方法や単一のデータソースはありません。これは、さまざまなデータセット、データ処理技術、およびこれを行うことで数年間学んだ教訓を組み合わせたものです。

あまり言及されていないデータソースと手法には、次のものがあります。

  • ISPからの直接フィード。当社のサービスは、1日に約5億のAPIリクエストを処理し、多くの人気のある有名なWebサイトで使用されています。したがって、ISPは、顧客がWebで優れたエクスペリエンスを享受できるように、正確な最新の地理位置データを提供するように奨励されています。私たちは常にますます多くのISPと直接協力しています。

  • GPS位置データ。モバイル機器のGPSで正確な位置情報を収集することが可能です。これをIPアドレスおよびいくつかのネットワークトポロジ推論と組み合わせて、わずか数回の測定でIP範囲の場所を特定できます。

  • ユーザーが修正を送信しました。場所を間違えた場合(または変更後に更新されていない場合)、ユーザーからすぐにフィードバックを受け取り、手動で場所を修正するか、アルゴリズムを微調整して、次の実行時に正しい場所に配置されるようにします。私たちのデータ処理パイプライン。

IP to companyデータセットでは、実際に毎月すべてのドメイン名を取得し、そこから抽出したデータをIP所有権情報やrwhoisレコードなどと相互参照します。次に、ドメインスクレイピングデータを使用して、どのドメインがどのIPアドレスでホストされているかを示します。また、IPタイプ分類子では、他の多くのデータソースとともに、IPアドレスが主に住宅用ISPとして使用される確率を決定します。ビジネス、またはホスティングプロバイダー。また、これらのページのリンク構造を分析し、このデータの一部を Host.io に表示します。

5
Ben Dowling