domain-list-communityのgeositeデータを読む
コミュニティ管理ドメインのリスト。ドメイン リスト コミュニティに移動 このプロジェクトは、プロジェクト V でルーティング目的のジオサイトとして使用されるドメインのリストを管理します。
ひと目でわかる
- これは何?
- v2ray/domain-list-communityのREADMEに沿って、機能、導入条件、運用上の境界を確認する記事です。
- 誰に向いている?
- domain-list-communityのgeositeデータを読むは、READMEに記載された対象環境と作業目的が一致するチームに向きます。向かないのは、未記載の性能、対応範囲、運用保証を前提に短時間で本番採用を決めるケースです。
- 商用利用できる?
- できます。MIT は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
- 今もメンテナンスされている?
- されています。最後のコミットは 1 日前です。
- 何の言語で書かれている?
- 主に Go です(GitHub の言語統計による)。
回答はプロジェクトの GitHub データ(最終同期:2026年9月15日)と当サイトの分析に基づくもので、法的助言ではありません。
オープンソース詳細解説
旧リポジトリとv2flyへの移行
v2ray/domain-list-communityのREADMEと基線を読み、Community managed domain list. Move To Domain list community This project manages a list of domains, to be used as geosites for routing purpose in Project V.という位置づけを日本語で整理します。ここで扱うのはリポジトリが明示する機能、導入条件、利用例、ライセンスです。メタデータのスター数は利用規模や品質を保証しないため、判断材料から切り離します。
README の冒頭は移行の告知です。開発は v2fly/domain-list-community に移りました。理由として、コードレビューを担当できるメンバーが不足していること、移行により何度か成功した pull request を経た貢献者が管理者権限を得やすくなることが挙げられています。移行後、このリポジトリは dlc.dat の公開だけを行い、issue と pull request は新しいリポジトリで扱われます。リポジトリのメタデータはデフォルトブランチを master と示していますが、README は旧リポジトリが新たな作業の場ではないことを明記しています。メタデータは archived を false としていますが、README は凍結ではなく開発場所の変更を伝えています。
geositeとして使うドメインデータ
このプロジェクトは、Project V のルーティングルールで geosite として使うためのドメインリストを管理しています。README はこのリストが特定の立場を取らないことを強調しています。つまり、あるドメインをブロックすべきだとか、プロキシすべきだとか、そういった主張や暗示は一切ありません。リストは必要に応じてルーティングルールを生成するために存在します。同じデータは、それを消費する設定に応じて、直接接続のルールにも、プロキシのルールにも、拒否のルールにも使えます。README にはどのドメインが含まれるかの一覧はなく、ブロックやプロキシの推奨もありません。
data内のincludeと4種類の規則
data ディレクトリ内の各ファイルは、名前の付いたドメインのサブリストです。各行は、# で始まるコメント、同じディレクトリ内の別ファイルを取り込む include: 行、有効なドメイン名の後に続く domain: 行、keyword: 行、Go の正規表現構文を使う regex: 行、完全なドメイン名のための full: 行のいずれかです。コメントはファイル内のどこにでも書け、# 以降は生成時に無視されます。domain: の接頭辞は省略できます。これらのドメイン型の行には、@ に続く属性名で1つ以上の属性を付けることができます。README の例には domain:google.com @attr1 @attr2 があり、属性と行タイプを組み合わせられることも示しています。
dlc.datの生成とProject Vでの参照
ビルドプロセスは data ディレクトリ全体を取り込み、Project V 向けの1つの外部 geosite ファイルに変換します。入力ファイルのそれぞれが、生成されたファイルの1つのセクションになります。各ファイルについて、コメントは削除され、include: 行は参照先ファイルの内容に置き換えられ、空行は省かれ、残った各行はルーティングルールとして出力されます。README は domain: をサブドメインルーティングルールに、keyword: を通常のドメインルールに、regex: を正規表現ルールに、full: を完全ドメインルールに対応づけ、v2ray-core 内の関連 proto 定義へのリンクを示しています。生成されるファイル自体の内容は README には示されていません。
属性、命名、プルリクエスト
README は、geosite:category-ads-all や geosite:cn のように、ファイル名で geosite を参照するルーティングルールを示しています。ダウンロードリンクは、release ブランチにある dlc.dat とその sha256 チェックサムを指しています。dlc.dat を手動で生成するには、README によると golang と git をインストールし、go get -u -v --insecure github.com/v2ray/domain-list-community を実行し、生成されたバイナリを実行します。datapath オプションを付けない場合は、$GOPATH にあるこのリポジトリの data ディレクトリを使います。--datapath=/path/to/your/custom/data/directory を付けると、カスタムディレクトリを読みます。他のビルドコマンドは README には記録されておらず、Windows や macOS での違いも説明されていません。
MITライセンスと運用上の線引き
ファイル名は、ドメインの決定的なグループを表すべきで、通常は google や netflix のような所有者名です。evil のような範囲が不明瞭な名前は推奨されません。属性を使うとファイル内のサブグループを作れます。たとえば google@ads は広告配信ドメインを表し、ルーティングでは geosite:google@ads として参照できます。貢献は、1つのファイルを変更する小さな pull request から始めるべきです。pull request は別のメンバーによるレビューと承認が必要です。何度か成功した pull request の後、貢献者は管理者権限を申請できます。このリポジトリは MIT ライセンスで、2018-2019 V2Ray が著作権を持ち、使用、コピー、変更、結合、公開、配布、サブライセンス、販売の権利を条件付きで許諾します。ライセンスはソフトウェアが現状のまま提供され保証がないと述べており、サポートやセキュリティについては何も触れていません。README の貢献ガイドラインは pull request の手順だけを扱っており、コードスタイルやテスト要件には言及していません。
このリポジトリを使うときは、開発先がv2fly/domain-list-communityへ移り、旧リポジトリはdlc.datの公開に限られる点を最初に固定します。利用側はreleaseブランチのdlc.datとdlc.dat.sha256sumを取得し、チェックサムを照合してからProject Vの設定へ渡します。dataのファイル名はgeosite:filenameで参照され、domainはサブドメイン、keywordは通常のドメイン、regexはGoの正規表現、fullは完全一致へ変換されます。includeは同じディレクトリの別ファイルを展開するため、生成前後の内容を比較します。google@adsのような属性はgeosite:google@adsで絞り込めますが、リスト自体はブロックやプロキシを推奨しないため、実際のoutboundは利用者の設定として監査します。
v2ray/domain-list-communityについて記録を残すときは、READMEに書かれた版、入力、出力、実行環境を一組にします。たとえばCLIなら実行したコマンドと標準出力、サーバー連携なら接続先の種類と応答、配布物ならファイル形式と端末を対応づけます。機能名だけを転記すると、同名の機能でも対象サービスやOSが違う場合に結果を取り違えます。READMEが説明していない既定値は推測で埋めず、設定ファイル、ログ、リリースノートのどこで確認できたかを作業記録に書きます。更新時は変更前後の差分を同じ入力で比較し、失敗した条件も残します。対象プロジェクトの実行結果とREADMEの表現が食い違った場合は、成功例だけを採用せず、再現条件と失敗理由を分けて保存します。
編集部の結論
domain-list-communityのgeositeデータを読むは、READMEに記載された対象環境と作業目的が一致するチームに向きます。向かないのは、未記載の性能、対応範囲、運用保証を前提に短時間で本番採用を決めるケースです。先に参照するgeosite名、dlc.datのチェックサム、適用するoutboundを確認してください。記載のない性能や安全性は、このJSONからは判断できません。
コミュニティノート