コンテンツへスキップ
IP インテリジェンス

知っておきたい IP データフィールド完全一覧

GeoIPHub のライブレスポンスに含まれるすべての IP データフィールド。10 グループ 103 フィールドそれぞれの型と実際の値の例、11 個のプレースホルダーを明示しています。

著者GeoIPHub チーム公開日更新日読了時間38 分で読めます
それぞれ 6 つのセルを持つ 10 枚のパネルが並んだ光る帯。IP データのレスポンスにある 10 のグループを表しています

「IP アドレスからどんなデータが得られるのか」と尋ねると、ほとんどの答えは「おおまかな位置」で終わります。それは IP インテリジェンスの全体像の中で最も小さな部分です。同じアドレスから、どのネットワークが所有しているか、自宅の回線か借りられたサーバーか、VPN、Tor 出口、プライバシーリレーのいずれか、ブロックリストに載っているか、検証済みのクローラーかどうかも分かります。検出フィールドの作られ方は、VPN とプロキシ検出の仕組みを参照してください。

このリファレンスは 7 月版から大きく変わりました。API にフィールドが 3 つ追加され、当社の表で 2 つが漏れており、ある Tor 出口のスコアは 79 から 100 に動き、7 月の表が誤って説明していた値を返すフィールドもいくつかあります。以下の例はすべて 2026 年 10 月 22 日の GET api.geoiphub.com/v1/lookup/{ip} によるもので、無料の IP ルックアップツールでどれも再現できます。

セルのパネルの上で 1 つのセルが拡大されている図。1 つのフィールドを詳しく説明することを表しています
10 グループのすべてのフィールドと、それぞれの用途です。

2026 年 10 月 22 日の 7 件のライブレスポンスで 103 フィールドを数えました

2026 年 10 月 22 日の 04:56 から 04:57 UTC の間に 7 件のレスポンスを取得し、10 グループにわたる 103 フィールドを数えました。7 月以降にこのリストに加わったフィールドが 5 つ、プレースホルダーが 11 つあります。7 つのアドレスは、異なるグループを浮かび上がらせるために選んだ公開インフラです。

IP正体2026 年 10 月 22 日の判定
185.220.101.1Tor 出口、TORSERVERS-NET、ハンブルク100、block
185.213.155.73Mullvad VPN サーバー、フランクフルト100、block
66.249.66.1Googlebot0、allow
104.28.46.99Cloudflare 上の iCloud プライベートリレーのエグレス9、allow
45.33.32.156scanme.nmap.org、Linode のサーバー10、allow
8.8.8.8Google Public DNS(エニーキャスト)10、allow
1.1.1.1Cloudflare DNS(エニーキャスト)10、allow

小さな Node スクリプトですべてのレスポンスを走査し、各リーフフィールドを一覧にしました。geo.country_names は翻訳のマップなので 1 フィールドとして数えています。7 件のレスポンスは、まったく同じ 103 個のキーを持っていました。内訳は次のとおりです。

グループフィールド数現在のプレースホルダー
ip10
asn120
geo150
whois80
network73(open_ports、service、cloud_region)
detection230
threat257(blocklist_sources、crawler.spoofed、botnet.last_seen、3 つのハニーポットフィールド、spammer_last_seen)
dns30
scoring40
meta51(sources)
合計10311

このリストに新しく加わったフィールドは 5 つです。 3 つは 10 月に API へ追加されたもので、detection.residential_proxy_status、residential_proxy_evidence、residential_proxy_last_seen です。これらは現在 API フィールドリファレンスに掲載され、予約済みと記されています。残りの 2 つ、threat.crawler.unverified と threat.spammer_last_seen は 7 月の時点ですでにレスポンスにあり、以前の表が単に載せ忘れていたものです。7 月のリストから削除されたフィールドはありません。

11 個のフィールドはプレースホルダーです。 API のレスポンスビルダーを確認したところ、そのうち 10 個はどのルックアップでも一定の空の値([]、"none"、0)として書き込まれており、crawler.spoofed にはまだデータソースがありません。さらに 8 個のフィールドにはデータが入っていますが予約済みで、値は掲載していません。blocklist_count、両方のグループの ptr_pattern、そして 5 つのレジデンシャルプロキシ関連フィールドです。以下の表では、どちらの種類にも印を付けています。

1 件の Tor 出口のルックアップで見る、10 グループのつながり

グループは、1 つのアドレスをたどって見るのが最も理解しやすい方法です。次は Tor 出口である 185.220.101.1 の実際のレスポンスで、その様子が分かるフィールドだけに絞っています。

GeoIPHub API
{ "ip": "185.220.101.1", "asn": { "asn": 60729, "org": "TORSERVERS-NET - Stiftung Erneuerbare Freiheit", "asn_type": "hosting", "connection_type": "datacenter", "rpki": "valid" }, "geo": { "country_code": "DE", "city": "Hamburg (Hamburg-Nord)", "timezone": "Europe/Berlin", "geo_confidence": 0.8 }, "whois": { "org": "none", "netname": "ARTIKEL10", "status": "ASSIGNED PA", "registered": "2017-09-12T00:00:00.000Z" }, "network": { "ptr_record": "none", "fcrdns_valid": "none", "abuse_contact": "abuse@artikel10.org" }, "detection": { "is_vpn": false, "is_tor": true, "is_hosting": true, "is_anonymous": true, "anonymity_level": "high" }, "threat": { "is_spammer": true, "threat_types": ["spammer", "tor"], "dnsbl_sources": ["zen.spamhaus.org"] }, "scoring": { "fraud_score": 100, "confidence": 0.7402500000000001, "recommended_action": "block", "detection_methods": ["tor_exit", "datacenter_blocklisted", "no_ptr_datacenter", "known_spammer"] }, "meta": { "last_classified_at": "2026-10-22T04:56:41.816Z", "last_scanned": "2026-10-20T18:45:48.000Z", "latency_ms": 2 } }

各グループは互いを裏付けています。ASN はホスティングを示し、detection.is_tor は Tor Project の出口リストに由来し、threat.dnsbl_sources は Spamhaus ZEN への掲載を示し、scoring グループがそのすべてを、発火した 4 つのメソッドとともに block にまとめています。

このレスポンスには、1 つの欠落も表れています。ptr_record は "none" で、そのため no_ptr_datacenter が発火しましたが、同じ朝に実行したライブの dig -x 185.220.101.1 は tor-exit のホスト名を返しました。一部のアドレスでは、API が保存している逆引き DNS がライブのレコードより遅れています。この記事の 7 月版に載っていた rdns_tor が発火しなくなったのも、この食い違いのためです。グループ間でこうした相互チェックができることが、これだけ多くのフィールドを持つ理由です。では、各グループを順に見ていきましょう。

1. IP 自体(ip)

ip フィールドは、API が解決した正確なアドレスを文字列として返します。意図したものを調べたかどうかの確認に使ってください。特に X-Forwarded-For ヘッダーを解析した後は、誤ったホップを選ぶのが典型的なバグです。また、お客様自身のキャッシュの自然なキーにもなります。

IPv4 も IPv6 も受け付けます。ご自身の公開アドレスが分からない場合は、what-is-my-IP ツールで、ウェブサイトがそこから推測できるすべての情報とともに確認できます。

2. ネットワークと ASN のデータ(asn)

asn グループは、どのネットワークがそのアドレスを広告しているかを示します。得られる IP データの中で最も信頼性の高いものの 1 つです。ルーティング可能なすべての IP は 自律システムに属しており、それは推定ではなくグローバルルーティングテーブルに由来します。

フィールド型分かること例(8.8.8.8)
asnnumberIP を広告している自律システム番号15169
orgstringその AS を運用する組織GOOGLE - Google LLC
asn_typestringネットワークの種別:isp、hosting、cdn、mobile、satellite、unknownhosting
user_typestring用途の分類。例:hosting、residential、cellular、content_delivery_networkhosting
ispstringISP 名(現在は org と同じ値)GOOGLE - Google LLC
domainstringネットワークに関連付けられたドメインnone
connection_typestringdatacenter、residential、mobile、satellite、unknowndatacenter
access_typestringrDNS のマーカーから読み取るアクセス媒体:fiber、cable、dsl、cellular、datacenterdatacenter
carrierstring携帯電話 IP の場合のモバイルキャリア名none
mccstring携帯電話 IP の場合のモバイル国コードnone
mncstring携帯電話 IP の場合のモバイルネットワークコードnone
rpkistringRPKI の経路オリジン検証:valid、invalid、unknownvalid

値はアドレスによって変わります。1.1.1.1 は asn_type: "cdn" と user_type: "content_delivery_network" で返り、Googlebot は user_type: "search_engine_spider" で返りました。プライベートリレーのエグレスは asn_type: "unknown"、connection_type: "unknown"、user_type: "consumer_privacy_network" を返しました。7 月から変わった点が 1 つあります。8.8.8.8 は現在 rpki: "valid" を返しますが、当社のドキュメントのサンプルは今も "invalid" のままです。

注目すべきフィールドは connection_type です。一般ユーザー向けのログインにデータセンターのアドレスがあれば、もう一度確認する価値があります。ただしホスティングというだけでは不正ではありません。45.33.32.156 は単なるホスティングで、スコア 10 の allow でした。どのアドレスも、無料のデータセンター IP チェックで確認でき、IP ジオロケーション API のページでは ASN モデルを説明しています。

3. ジオロケーションのデータ(geo)

geo グループは、アドレスを地図上に置くもので、最も過信されやすいグループです。15 個のフィールドすべてに、実行したどのルックアップでもデータが入っていました。

フィールド型分かること例(1.1.1.1)
country_codestringISO 3166-1 alpha-2 の国コードAU
country_namestring国名Australia
country_namesobject言語コードをキーとした、ローカライズされた国名{ en, de, es, fr, ja, ... }
country_geoname_idnumber国の GeoNames ID2077456
continent_codestring2 文字の大陸コードOC
continent_namestring大陸名Oceania
continent_geoname_idnumber大陸の GeoNames ID6255151
is_in_european_unionboolean国が EU 加盟国かどうかfalse
flag_emojistring国の Unicode 国旗🇦🇺
regionstring州、県、地域New South Wales
citystring最も確からしい市区町村Sydney
timezonestringIANA タイムゾーン。なければ "none"Australia/Sydney
latitudenumberおおよその緯度-33.8688
longitudenumberおおよその経度151.209
geo_confidencenumber市区町村の回答に対する信頼度、0 から 10.8

国は確実で、市区町村はおおよそです。 逆引き DNS によるジオロケーションの査読付き研究は、2018 年のデータを用い、2 つの商用データベースで中央値の誤差が 11.1 km と 16.7 km であると測定しました。ほかの根拠は IP ジオロケーションの精度はどれくらいかで扱っています。市区町村はピンではなく半径として扱い、IP を使って人物の所在を特定することは決してしないでください。

geo_confidence は detection.is_anycast と並べて読んでください。 1.1.1.1 はシドニーで 0.8 を返しましたが、同じアドレスが多数の場所から同時に広告されているため is_anycast: true でもあります。エニーキャストのアドレスでは、市区町村は複数ある候補のうちの 1 つにすぎません。

欠落がさらに 2 つ見つかりました。調べた米国の 3 つのアドレス(8.8.8.8、Googlebot の 66.249.66.1、45.33.32.156)はすべて、市区町村が入っているのに timezone が "none" で返りました。必要なときは、ご自身でタイムゾーンを導出してください。そしてプライベートリレーのエグレス 104.28.46.99 はアンゴラのルアンダに置かれましたが、Apple 自身のエグレスリストはその範囲をザンビアのルサカとしています。リレーの場合は、Apple の行から位置を取ってください。その理由はリレー IP と Apple のエグレスリストの照合で説明しています。

4. WHOIS と登録のデータ(whois)

whois グループは、誰がそのブロックをいつ登録したかを示し、5 つの地域インターネットレジストリから RDAP 経由で取得します。ジオロケーションが見逃す所有者情報の層を加えます。

フィールド型分かること例(1.1.1.1)
orgstring登録者の組織APNIC and Cloudflare DNS Resolver project
countrystring登録国(geo と異なることがある)AU
netnamestringネットブロック名APNIC-LABS
statusstringブロックの割り当て状況ASSIGNED PORTABLE
registeredstring (ISO 8601)登録日(公開されている場合)2011-08-11T00:00:00.000Z
last_changedstring (ISO 8601)レジストリのレコードが最後に変更された日時2023-04-26T22:57:58.000Z
has_vpn_keywordsbooleanレジストリのテキストが 46 個の VPN キーワードのいずれかに一致false
has_hosting_keywordsbooleanレジストリのテキストが 27 個のホスティングキーワードのいずれかに一致false

カバレッジはレジストリによって異なります。8.8.8.8 と 45.33.32.156 は、org、netname、status、last_changed が "none" で返り、埋まっていたのは country と registered だけでした。Mullvad サーバーのレコードは充実しており、netname: "NET-31173-185-213-155-0-24"、登録は 2017-07-19、最終変更は 2025-11-11 でした。

キーワードのフラグは補助的な証拠であり、それだけを理由にフラグを立ててはいけません。7 つのアドレスすべてでどちらも false で、レジストリの org が「31173 Services AB infrastructure in Frankfurt, DE.」とあって VPN への言及がない Mullvad サーバーも同じでした。次の節以降にあるプロバイダーのリストが、より重要なのはそのためです。

5. ネットワークの証拠(network)

network グループには、逆引き DNS とレジストリのアブューズ連絡先が含まれます。7 つのフィールドのうち 3 つが、現在はプレースホルダーです。

フィールド型分かること例(8.8.8.8)
ptr_recordstring保存されている逆引き DNS(PTR)のホスト名dns.google
ptr_patternstringPTR ホストの分類。予約済み:値は掲載しない(表示なし)
fcrdns_validboolean、または "none"PTR ホストがこの IP に正引きできるか。PTR が保存されていなければ "none"true
abuse_contactstringレジストリのレコードにあるアブューズ連絡先アドレスnetwork-abuse@google.com
open_portsnumber[]プレースホルダー:現在は常に [][]
servicestringプレースホルダー:現在は常に "none"none
cloud_regionstringプレースホルダー:現在は常に "none"none

abuse_contact は、不審な活動を報告する必要があるときに使うフィールドで、7 つのアドレスのうち 5 つで値が入っていました。fcrdns_valid は単純な boolean ではありません。保存された PTR がない Tor 出口、Mullvad サーバー、リレーでは、文字列 "none" が返りました。=== false で判定するコードは、このケースを見逃します。

保存された PTR は、確認せずに信用しないでください。 Googlebot の 66.249.66.1 では、保存された ptr_record が隣のアドレスのものでしたが、ライブの dig -x は crawl-66-249-66-1.googlebot.com を返します。8.8.8.8 の値(dns.google)と 1.1.1.1 の値(one.one.one.one)は、同じ朝に dig -x で確認しました。

プローブが応答していても open_ports は空です。 どのルックアップでも [] として書き込まれます。Mullvad サーバーの wireguard_open はプローブの結果ではなく、Mullvad のサーバーリストがそのサーバーを WireGuard とタグ付けしていることを意味する点に注意してください。このフィールドが接続されるまでは、openvpn_open などのプローブ結果は scoring.detection_methods から読み取ってください。

6. VPN、プロキシ、Tor、リレーの検出(detection)

detection グループは、そのアドレスが利用者を匿名化しているか、またどのように匿名化しているかに答えます。23 フィールドで最大のグループで、そのうち 3 つは 7 月以降の新規です。

フィールド型分かること例(185.213.155.73、Mullvad)
is_proxyboolean能動的なプローブ中にオープンプロキシとして応答したfalse
is_vpnbooleanハンドシェイク、プロバイダーのリスト、ASN、WHOIS による VPN インフラtrue
is_torbooleanTor Project の出口リストに掲載(毎日更新)false
is_hostingbooleanホスティングまたはクラウドのインフラtrue
is_relaybooleanプライバシーリレー(VPN とは別に報告)false
is_mobilebooleanモバイルキャリアのネットワークfalse
is_satelliteboolean衛星 ISPfalse
is_anycastboolean多数の場所から広告されているfalse
is_residential_proxyboolean予約済み:機能として稼働していないので、頼らないでください(表示なし)
is_public_proxyboolean公開リストにあるオープンプロキシfalse
is_anonymousbooleanVPN、プロキシ、Tor のいずれかに該当すれば truetrue
proxy_typestring検出されたプロキシのプロトコルnone
anonymity_levelstringnone、low、medium、highmedium
vpn_providerstringリストに載っている場合の VPN 運営者名Mullvad
vpn_provider_tierstringプロバイダー名から導出されるラベル。これに基づいて構築しないでください(表示なし)
relay_providerstringリレー運営者名none
proxy_scorenumberプロキシである可能性の 0 から 1000
vpn_confidencenumber0 から 100。どの命名経路が発火したかも示す95
residential_proxy_statusstring2026 年 10 月に追加。/docs には未掲載。予約済み(表示なし)
residential_proxy_evidencestring2026 年 10 月に追加。/docs には未掲載。予約済み(表示なし)
residential_proxy_last_seenstring2026 年 10 月に追加。/docs には未掲載。予約済み(表示なし)
residential_proxy_scorenumberis_residential_proxy とともに予約済み(表示なし)
last_seenstring (ISO 8601)検出が最後に変化した日時2026-10-20T20:17:50.000Z

vpn_provider は丸で囲んでおくべきフィールドです。 ほとんどの API は IP が「VPN である」とは言えますが、運営者の名前を挙げるにはプロバイダーのリストが必要です。当社は、9 つのプロバイダー自身のサーバーリスト、公開されているサードパーティのリスト、または既知の VPN ネットワークの短い表から VPN を特定し、vpn_confidence はどの経路が発火したかを示します。ここでの 95 は Mullvad 自身のリストを意味します。アドレスがどのリストにも載っていない場合、ハンドシェイクが VPN であることを証明していても、vpn_provider は "none" を返します。その経路は VPN がそれ自身のサーバーリストから特定される仕組みでたどっており、どのアドレスも VPN 検出テストで試せます。

is_relay と relay_provider は対で機能します。 104.28.46.99 は is_relay: true、relay_provider: "iCloud Private Relay"、スコア 9、allow を返しました。API はまた、Cloudflare が公開している WARP の接続範囲(WARP アプリが接続するアドレス)に対して "Cloudflare WARP" を返し、Apple のリストでカバーされないその他の Cloudflare のプライバシー用エグレスに対しては、文書化されていない "Cloudflare" を返します。

is_anonymous はリレーをカバーしません。 /docs では、リレーを含むあらゆる匿名化手段で true になると説明されていますが、リレーのエグレスは anonymity_level: "medium" で is_anonymous: false を返しました。このフラグが追跡するのは VPN、プロキシ、Tor だけなので、is_relay は別に読んでください。

新しい 3 つのレジデンシャルプロキシ関連フィールドは予約済みです。 10 月のバックエンド変更で追加されたもので、まだ文書化されていません。レジデンシャルプロキシの検出は、現時点で当社が提供する機能ではないため、5 つのレジデンシャルプロキシ関連フィールドはすべて予約済みと考え、それに基づくルールは作らないでください。そうしたトラフィックが気になる場合は、IP ルックアップが見えるものと見えないもので説明しています。

7. 脅威とボットのインテリジェンス(threat)

threat グループは、そのアドレスが悪質であると知られているか、あるいは害のないボットとして知られているかを問います。25 フィールドあり、そのうち 7 つがプレースホルダーです。

フィールド型分かること例(66.249.66.1、Googlebot)
is_abusiveboolean不正利用に特化した脅威フィードに掲載false
is_bogonboolean未割り当てまたは予約済みの空間false
is_crawlerboolean既知のクローラーまたは AI ボットtrue
is_spammerboolean既知のスパム送信元false
is_scannerbooleanインターネット全体をスキャンする範囲false
is_botnetbooleanボットネットの C2 アドレス(Feodo Tracker のデータ)false
is_cgnatbooleanキャリアグレード NAT。スコアに上限が設けられるfalse
threat_typesstring[]該当するすべての脅威カテゴリ[]
blocklist_countnumber予約済み:頼らないでください(表示なし)
blocklist_sourcesstring[]プレースホルダー:現在は値が入らない(表示なし)
dnsbl_sourcesstring[]3 つの DNS ブロックリストゾーンのうち、どれが掲載しているか[]
crawler.verifiedboolean運営者の公式 IP 範囲に一致したtrue
crawler.unverifiedbooleanクローラーらしいが、公式の範囲にはないfalse
crawler.spoofedbooleanプレースホルダー:データソースがまだない(表示なし)
crawler.namestringボット名(ハイフンなしで記述)Googlebot
crawler.operatorstringボットを運用する者Google
crawler.categorystringボットのカテゴリsearch_engine
crawler.verification_methodstring身元をどう確認したかip_range_list
botnet.rolestringボットネットでの役割(判明している場合)none
botnet.familystringマルウェアファミリー(判明している場合)none
botnet.last_seenstringプレースホルダー:現在は常に "none"none
honeypot.hits_30dnumberプレースホルダー(表示なし)
honeypot.typestringプレースホルダー(表示なし)
honeypot.last_hitstringプレースホルダー(表示なし)
spammer_last_seenstringプレースホルダー:現在は常に "none"none

Tor 出口は、この表の残りの半分を埋めます。is_spammer: true、threat_types: ["spammer", "tor"]、dnsbl_sources: ["zen.spamhaus.org"] です。Mullvad サーバーは threat_types: ["vpn"] を返したので、この配列は匿名化手段のフラグも反映します。

ボットに関する判断が置かれているのは crawler オブジェクトです。 66.249.66.1 について API は、verified: true、name: "Googlebot"、operator: "Google"、verification_method: "ip_range_list" を返しました。10 の運営者による 19 の公式クローラー範囲フィードと照合した結果です。10 月のルックアップで確認したカテゴリは search_engine、ai、fetcher です。名前からはハイフンが落とされるため、Google のユーザー起動型フェッチャーは GoogleUserTriggeredFetcher として返ります。

偽装の検出は、お客様のコードで行います。 API が見るのは IP だけで、User-Agent は見ません。Googlebot を名乗るのに crawler.verified: false が返るリクエストは未検証であり、その比較はお客様の仕事です。その方法は IP によるボット検出と IP、rDNS、CIDR による AI クローラーの検証で示しています。

is_cgnat は、判断を厳しくするのではなく和らげるべきものです。 CGNAT のアドレスは多数の契約者に共有されるため、スコアには上限が設けられており、1 人の悪質な利用者のためにキャリア全体をブロックすべきではありません。このグループの背後にあるフィードについては、脅威インテリジェンスの概要を参照してください。

8. 逆引き DNS(dns)

dns グループは、network にある 3 つの逆引き DNS フィールドを繰り返したもので、rDNS だけが必要なコードは小さなオブジェクト 1 つを読めば済みます。値は、取得したすべてのレスポンスで network のコピーと同一でした。

フィールド型分かること例(1.1.1.1)
ptr_recordstring保存されている PTR のホスト名one.one.one.one
ptr_patternstring予約済み:値は掲載しない(表示なし)
fcrdns_validboolean、または "none"PTR がこの IP に正引きできるtrue

信頼できるのは fcrdns_valid です。同じ IP に正引きで戻る PTR は、逆引きゾーンを管理する人なら誰でも設定できる PTR の文字列だけよりも、はるかに強い証拠です。5 節と同じ注意が当てはまります。保存された PTR を引用する前に、ライブの dig -x と比べてください。

9. リスクスコアリング(scoring)

scoring グループは、証拠を判断に変えます。4 つのフィールドで、スコアを監査可能にするのは detection_methods です。

フィールド型分かること例(185.220.101.1、Tor)
fraud_scorenumber0 から 100 のリスクスコア。高いほど危険100
confidencenumber判定の根拠となる証拠、0 から 10.7402500000000001
recommended_actionstringallow、review、step_up、blockblock
detection_methodsstring[]発火したシグナルそのものtor_exit, datacenter_blocklisted, no_ptr_datacenter, known_spammer

fraud_score は 36 の重み付けされた理由を組み合わせており、中には減点する理由もあります。Googlebot がその例で、datacenter_ip と verified_crawler の両方が発火し、スコアは 0 になりました。リレーのスコアには上限 60 が設けられているため、リレーが block に達することは決してありません。recommended_action は、スコアを次の区分に対応づけます。

スコアrecommended_action意味
0 から 25allow意味のあるリスクの証拠はない
26 から 50reviewいくつかのシグナルが発火。記録して様子を見る
51 から 75step_up有力な証拠あり。チャレンジを追加する
76 から 100block複数のシグナルによる強い証拠

confidence は文字列ではなく数値として出力してください。浮動小数点の端数をそのまま含んで届きます。このモデルは IP 不正スコアのガイドと、各理由がスコアと信頼度をどう決めるかで説明しており、しきい値をどこに置くかはログイン、サインアップ、決済の IP 不正スコアのしきい値の選び方で扱っています。どのアドレスも IP 不正スコアチェックでスコアを確認できます。

10. メタデータ(meta)

meta グループは、回答の日時を示し、リクエストを識別します。5 つのフィールドのうち 2 つは、名前から連想されるものとは意味が異なります。

フィールド型分かること例(104.28.46.99)
last_classified_atstring (ISO 8601)このレスポンスが作られた日時2026-10-22T04:56:51.010Z
last_scannedstring (ISO 8601)この IP の検出が最後に変化した日時2026-10-20T18:52:36.000Z
request_idstringこのルックアップの一意の ID。サポートに連絡するときに引用するaa25852e-0dc1-4fd6-8780-3b9283d13aba
latency_msnumberサーバー側の処理時間3
sourcesstring[]プレースホルダー:現在は常に [][]

last_classified_at は分類した時刻ではなく、レスポンスの時刻です。 7 件のルックアップすべてで、リクエストを送った時刻の約 1 秒以内でした。鮮度の判断には、代わりに last_scanned を使ってください。すべてのレスポンスで detection.last_seen と同じ値を持ち、7 件すべてが 10 月 20 日の日付でした。

範囲の持ち主は入れ替わるので、古い IP データは誤った IP データです。分類が誤っていると思うときに引用するのが request_id です。サーバー側のレイテンシーは、7 件のルックアップで 0 から 3 ミリ秒でした。

他のプロバイダーは同じフィールドをどう呼んでいるか

他の IP データプロバイダーも、異なるフィールド名で重なる領域をカバーしており、より充実したフィールドを上位プランに置いているところもあります。2026 年 10 月 22 日に 3 社の公開ドキュメントを読み、それらのページに書かれていることだけを残しました。

プロバイダードキュメントに記載のフィールドドキュメントの記述最も近い GeoIPHub のフィールド
MaxMindlocation.accuracy_radius座標を中心とした「おおよその精度半径(キロメートル)」geo.geo_confidence(0 から 1。半径なし)
MaxMindtraits.user_type15 個の値。consumer_privacy_network、content_delivery_network、search_engine_spider を含むasn.user_type。当社のルックアップでは同じ 3 つの文字列が返った
MaxMindanonymizer オブジェクト匿名化手段のフラグを traits から 1 つのオブジェクトに移動。provider_name を含むdetection.vpn_provider
IPinfovpn、proxy、tor、relay、hosting、serviceservice は「VPN、プロキシ、匿名化サービスの名前」detection.is_* フラグ、vpn_provider、relay_provider
IPinfoプランごとのカバレッジCore は is_anonymous と is_hosting のみ。Plus と Max は /anonymous エンドポイントを使用すべてのプランですべてのフィールド
IPinfoasn.type例として isp、business、hosting、education を挙げているasn.asn_type
IPQualityScorefraud_scoreIP、ユーザーエージェント、言語などの任意の入力から構築。75 以上は疑わしく、90 以上でのフラグ付けまたはブロックを提案scoring.fraud_score。IP のみから算出。75 超で block
IPQualityScoreis_crawlerホスト名または IP で検証された、確認済みの検索エンジンのクローラーthreat.crawler.verified。公式の IP 範囲による
IPQualityScoreconnection_typeResidential、Corporate、Education、Mobile、Data Centerasn.connection_type

出典:MaxMind GeoIP web services responses、IPinfo privacy detection data、IPinfo ASN data、IPQualityScore proxy detection response parameters。

実務上の注意点が 2 つあります。スコアの尺度は、文書化されたしきい値と並べて初めて意味を持ちます。IPQualityScore の 75 は「疑わしい」ですが、当社の 76 はすでに block です。また、同じ名前のフィールドが別の意味を持つことがあるので、名前ではなく文書化された意味でフィールドを対応づけてください。IP データプロバイダーを選ぶための購入者向けチェックリストは、これをどの API にも試せる短いテストにしています。

判断ごとに重要な IP データフィールド

103 個のフィールドすべてが一度に必要になることはまずありません。判断に合わせてフィールドを選び、プレースホルダーは飛ばしてください。

ユースケース最も重要なフィールド注意点
ログインや決済での不正チェックscoring.fraud_score、recommended_action、detection_methods、detection.is_vpn、is_tor、is_proxygeo だけでハードブロックしない。is_cgnat がスコアに上限を設けるのには理由がある
ジオコンプライアンスとライセンスgeo.country_code、geo.region、detection.is_relay市区町村はおおよそ。リレーの geo は Apple のリストと食い違うことがある
ボットとクローラーの管理threat.crawler.verified、crawler.name、crawler.category名乗られた User-Agent との比較は自分で行う。crawler.spoofed はプレースホルダー
不正利用の報告と調査network.abuse_contact、whois.netname、threat.dnsbl_sources保存された PTR は、引用する前に dig で確認する
ローカライズgeo.country_code、geo.timezonetimezone が "none" のことがある。エニーキャスト IP では geo_confidence は目安

調査では、どのフィールドを読むかと同じくらい、グループを読む順序が重要です。IP アドレスの調査をステップごとに解説したガイドでは、実際の 3 つの IP を使い、これらのグループを順に用いる 12 のパッシブチェックを説明しています。

構築する前に、自分でフィールドを確認する

フィールドの一覧は変化するので、最も安全な習慣は自分で数えることです。ルックアップを 1 回実行して、リーフのキーを一覧にします。

GeoIPHub API
curl -s https://api.geoiphub.com/v1/lookup/8.8.8.8 \ -H "x-api-key: YOUR_API_KEY" \ | jq 'del(.geo.country_names) | [paths(type != "object") | select(all(.[]; type == "string"))] | length + 1'

このフィルターは、各配列を 1 フィールドとして数え、配列の要素は飛ばし、country_names を 1 フィールドとして加え直します。保存した 7 件のレスポンスすべてで 103 が出力されました。数が違う場合は、キーを API リファレンスとこの記事と照らして差分を確認してください。キーなしでテストする場合は、呼び出しの間隔を空けてください。1 分間に 30 回目のキーなしリクエストはすでに 429 を返し、IP が 2 時間ロックアウトされます。

よくある質問

IP アドレスからどんなデータが得られますか?

位置情報よりはるかに多くです。2026 年 10 月 22 日の GeoIPHub のライブルックアップは、10 グループ 103 フィールドを返しました。IP 自体、ネットワーク(ASN、ISP、接続タイプ、RPKI)、おおよそのジオロケーション、WHOIS レジストリデータ、ネットワークの証拠と逆引き DNS、リストに載っている場合はプロバイダー名付きの VPN・プロキシ・Tor・リレーの検出、脅威と検証済みクローラーのシグナル、説明可能な 0 から 100 のリスクスコア、リクエストのメタデータです。そのうち 11 フィールドは、現時点では固定の空の値を返すプレースホルダーです。

IP アドレスから自宅の正確な住所が分かりますか?

いいえ。IP ジオロケーションが推定するのはおおよその地域(せいぜい市区町村や地域)であって、番地や特定の個人ではありません。市区町村レベルの結果は不正確で、モバイル、CGNAT、VPN の接続ではさらに弱くなります。IP だけで番地レベルの精度をうたうのは誇張です。

IP データにおける ASN とは何ですか?

自律システム番号(Autonomous System Number)は、IP アドレスをインターネットに広告しているネットワークを識別します。たとえば 8.8.8.8 は AS15169、GOOGLE - Google LLC を返します。ASN とその組織はグローバルルーティングテーブルに由来するため、物理的な位置の推測とは違い、IP データの中で最も信頼性の高いフィールドの 1 つです。

IP 不正スコアとは何で、どのように計算されますか?

IP 不正スコアは、アドレスがどれだけ危険に見えるかを 0 から 100 の 1 つの数値にまとめたものです。GeoIPHub は 36 の重み付けされた理由を組み合わせ、検証済みクローラーなどの免責の理由を差し引き、発火したメソッドと推奨アクションを返します。25 までは allow、50 までは review、75 までは step_up、75 を超えると block です。2026 年 10 月 22 日に調べた Tor 出口は、4 つのメソッドが挙がってスコア 100 でした。

住宅向け IP とデータセンター IP の違いは何ですか?

住宅向け IP は、個人向け ISP が家庭の回線に割り当てたものです。データセンター(ホスティング)IP は、クラウドやサーバーのプロバイダーのものです。この区別は asn.connection_type と asn.asn_type のフィールドにあります。10 月の 7 件のルックアップでは、Mullvad VPN サーバー、Tor 出口、Googlebot のいずれも connection_type が datacenter で返りました。

すべての IP API プロバイダーは、どのプランでも同じフィールドを返しますか?

いいえ。IPinfo のドキュメントによると、Core プランに含まれるプライバシーフラグは is_anonymous と is_hosting だけで、より詳細なプライバシーフィールドは Plus、Max、カスタム API で提供されます。GeoIPHub は、1 日 1,500 回のルックアップの無料プランを含め、すべてのプランですべてのフィールドを返します。

IP ジオロケーションの精度半径とは何ですか?

精度半径とは、返された座標を中心とした、実際の位置が収まる可能性の高い距離(キロメートル)です。MaxMind は location.accuracy_radius として文書化しています。GeoIPHub は半径を返さず、geo.geo_confidence を返します。0 から 1 の値で、市区町村を特定する十分な証拠がない場合は 0 になります。

執筆者

GeoIPHub チーム

GeoIPHub API を支えるチーム

GeoIPHub IP インテリジェンス API とそのスキャナーを開発している GeoIPHub チームが執筆しています。下書きは AI の支援を受けて作成し、チームが編集しています。API の例は、「説明用」と明記したものを除き、本番 API に対する実際のルックアップです。

この記事をシェア
その他の記事

関連 記事