geo

geo は公開 IP の位置とネットワーク所有者を、外部サービスまたは利用可能なローカル GeoIP データベースから推定します。

ネットワークバージョン 1.2.4安定版
lil-terminal

概要

geo は IP ジオロケーションとネットワーク所有者 に使います。よく使う操作は短いままにし、必要なときだけ専用の形式で詳細を追加するため、繰り返す作業を理解・再現しやすく、lil-terminal のスクリプトにもまとめやすくなります。

IP ジオロケーションは背景情報であり本人確認ではない

VPN、プロキシ、モバイル回線、CDN、プロバイダーのルーティングで表示位置は変わります。-local は外部問い合わせを避けますが、サーバー上に互換性のある GeoIP 拡張とデータベースが必要です。

構文

lil-terminal
geo [host|ip|me] [options]

リファレンス

geo

プロバイダーとローカル GeoIP の状態を表示する

geo me

現在の訪問者アドレスを使用する

geo -c

現在の訪問者の国と大陸を表示

geo 8.8.8.8

IP の位置とネットワーク概要を表示する

geo example.com -a

利用可能な位置情報とネットワーク項目をすべて表示する

geo -db

ローカル GeoIP データベースの詳細を表示する

-c

国と大陸を表示する

-r

地域、都市、郵便番号、座標を表示する

-tz

タイムゾーン情報を表示する

-asn | -isp | -org | -dom

選択したネットワーク情報を表示する

-type

IP ファミリーを表示する

-json

プロバイダー応答を整形済み JSON で表示する

-4 | -6

ホストを IPv4 または IPv6 で解決する

-local

ローカル GeoIP 拡張だけを使用する

使い方

geo は情報源を確認し、geo me は訪問者 IP を使います。-c は国、-r は地域と概算座標、-tz は時間帯、-asn/-isp/-org/-dom はネットワーク情報を表示します。-a は全項目、-json は提供データを表示します。-4/-6 はアドレス種別、-local はローカル GeoIP のみ、-db は DB 状態を指定します。

制限と安全

プライベート IP とループバック IP は拒否されます。一部の特殊アドレスは PHP の判定を通過しても提供元で拒否される場合があります。外部照会は HTTPS の ipwho.is を使い、一時的にセッションへ保存します。ローカル GeoIP 拡張がない場合もあります。例はオフラインの架空データで実測位置ではありません。

インタラクティブな sandbox プレビュー

用意された例をページ上でそのまま実行できます。結果は事前に生成されてブラウザに表示され、サーバーではターミナルコマンドを実行しません。

データ提供元を確認してから IP を調べる

インストールと管理

現在の互換バージョンをインストールします。全機能は Base、縮小版は Minimum を選び、すでに導入済みのモジュール更新には upgrade を使います。

Base と Minimum は同じ現在のモジュールリリースの二つのパッケージです。

Base パッケージ

ローカル参照と公開済みの全モードを含む完全パッケージをインストールします。

install geo
Minimum パッケージ

縮小パッケージをインストールします。ローカルリファレンスは含まれず、help <cmd> -i で現在のサーバーリファレンスを開きます。

install geo -m
正確な公開版

この公開済みバージョンを正確に指定してインストールします。

install geo -v 1.2.4
確認または更新

upgrade が互換性を確認し、必要な場合だけブロックを置換します。

upgrade geo
モジュールを削除

コアや他のモジュールに触れず拡張ブロックを削除します。

install geo -u

例

例はコピーできますが、サイトは実行しません。実プロジェクトではパス、権限、破壊的オプションを確認してください。

データ提供元を確認してから IP を調べる
geo
オフライン学習用例 — 実際の照会なし
Remote       ipwho.is
HTTPS        yes
Local GeoIP  no
ローカル GeoIP データベースの詳細を表示する
geo -db
オフライン学習用例 — 実際の照会なし
Local GeoIP database unavailable
現在の訪問者アドレスを使用する
geo me
オフライン学習用例 — 実際の照会なし
IP           8.8.8.8
Source       ipwho.is
Type         IPv4
Continent    Example continent (XX)
Country      Example country (ZZ)
Region       Example region (XX-01)
City         Example city
Postal       00000
Coordinates  0, 0
ASN          AS64500
ISP          Example ISP
ORG          Example Network
Timezone     Etc/UTC (+00:00)
IP の位置とネットワーク概要を表示する
geo 8.8.8.8
オフライン学習用例 — 実際の照会なし
IP           8.8.8.8
Source       ipwho.is
Type         IPv4
Continent    Example continent (XX)
Country      Example country (ZZ)
Region       Example region (XX-01)
City         Example city
Postal       00000
Coordinates  0, 0
ASN          AS64500
ISP          Example ISP
ORG          Example Network
Timezone     Etc/UTC (+00:00)
利用可能な位置情報とネットワーク項目をすべて表示する
geo 8.8.8.8 -a
オフライン学習用例 — 実際の照会なし
IP           8.8.8.8
Source       ipwho.is
Type         IPv4
Continent    Example continent (XX)
Country      Example country (ZZ)
Region       Example region (XX-01)
City         Example city
Postal       00000
Coordinates  0, 0
ASN          AS64500
ISP          Example ISP
ORG          Example Network
Domain       example.test
Timezone     Etc/UTC (+00:00)
Local time   2026-11-01T12:00:00Z
現在の訪問者の国と大陸を表示
geo -c
オフライン学習用例 — 実際の照会なし
IP         8.8.8.8
Source     ipwho.is
Continent  Example continent (XX)
Country    Example country (ZZ)
国と大陸を表示する
geo 8.8.8.8 -c
オフライン学習用例 — 実際の照会なし
IP         8.8.8.8
Source     ipwho.is
Continent  Example continent (XX)
Country    Example country (ZZ)
公開ジオロケーション対象外のアドレスを拒否する
geo 8.8.8.8 -r
オフライン学習用例 — 実際の照会なし
IP           8.8.8.8
Source       ipwho.is
Region       Example region (XX-01)
City         Example city
Postal       00000
Coordinates  0, 0
タイムゾーン情報を表示する
geo 8.8.8.8 -tz
オフライン学習用例 — 実際の照会なし
IP        8.8.8.8
Source    ipwho.is
Timezone  Etc/UTC (+00:00)
選択したネットワーク情報を表示する
geo 8.8.8.8 -asn
オフライン学習用例 — 実際の照会なし
IP      8.8.8.8
Source  ipwho.is
ASN     AS64500
選択したネットワーク情報を表示する
geo 8.8.8.8 -isp
オフライン学習用例 — 実際の照会なし
IP      8.8.8.8
Source  ipwho.is
ISP     Example ISP
選択したネットワーク情報を表示する
geo 8.8.8.8 -org
オフライン学習用例 — 実際の照会なし
IP      8.8.8.8
Source  ipwho.is
ORG     Example Network
選択したネットワーク情報を表示する
geo 8.8.8.8 -dom
オフライン学習用例 — 実際の照会なし
IP      8.8.8.8
Source  ipwho.is
Domain  example.test
IP ファミリーを表示する
geo 8.8.8.8 -type
オフライン学習用例 — 実際の照会なし
IP      8.8.8.8
Source  ipwho.is
Type    IPv4
プロバイダー応答を整形済み JSON で表示する
geo 8.8.8.8 -json
オフライン学習用例 — 実際の照会なし
{
    "ip": "8.8.8.8",
    "type": "IPv4",
    "continent": "Example continent",
    "continent_code": "XX",
    "country": "Example country",
    "country_code": "ZZ",
    "region": "Example region",
    "region_code": "XX-01",
    "city": "Example city",
    "postal": "00000",
    "latitude": 0,
    "longitude": 0,
    "connection": {
        "asn": 64500,
        "isp": "Example ISP",
        "org": "Example Network",
        "domain": "example.test"
    },
    "timezone": {
        "id": "Etc/UTC",
        "utc": "+00:00",
        "current_time": "2026-11-01T12:00:00Z"
    }
}
国と大陸を表示する
geo 8.8.8.8 -c -r -tz
オフライン学習用例 — 実際の照会なし
IP           8.8.8.8
Source       ipwho.is
Continent    Example continent (XX)
Country      Example country (ZZ)
Region       Example region (XX-01)
City         Example city
Postal       00000
Coordinates  0, 0
Timezone     Etc/UTC (+00:00)
ローカル GeoIP 拡張だけを使用する
geo 8.8.8.8 -local
オフライン学習用例 — 実際の照会なし
Local GeoIP data unavailable
ホストを IPv4 または IPv6 で解決する
geo example.test -4 -c
オフライン学習用例 — 実際の照会なし
Target     example.test
IP         8.8.8.8
Source     ipwho.is
Continent  Example continent (XX)
Country    Example country (ZZ)
ホストを IPv4 または IPv6 で解決する
geo example.test -6 -c
オフライン学習用例 — 実際の照会なし
Target     example.test
IP         2606:4700:4700::1111
Source     ipwho.is
Continent  Example continent (XX)
Country    Example country (ZZ)
Geo · 20
geo 10.0.0.2
オフライン学習用例 — 実際の照会なし
Public IP address required
Geo · 21
geo 127.0.0.1
オフライン学習用例 — 実際の照会なし
Public IP address required
Geo · -4
geo 8.8.8.8 -4 -6
オフライン学習用例 — 実際の照会なし
Choose either IPv4 or IPv6
Geo · -what
geo 8.8.8.8 -what
オフライン学習用例 — 実際の照会なし
?
Geo · -c
geo bad.invalid -c
オフライン学習用例 — 実際の照会なし
Host not found

関連ドキュメント

現在の公開版

v1.2.42026-10-31

ホスト指定なしの GeoIP フィルター

geo -c などのフィールド指定のみの呼び出しでは、訪問者の IP アドレスを自動使用します。