v2rayNのDNS設定方法:分割DNSと漏れ対策を解説

v2rayNでDNSを変更する手順を、設定画面の場所からわかりやすく解説します。リモートDNSと直連時のDNSの使い分け、ドメインごとの名前解決、DNSリークを防ぐ確認方法を整理し、接続できない場合の切り戻し方まで紹介。初心者でも安全に分割DNSを設定できます。

v2rayNでDNSを設定するときは、DNSサーバーのアドレスだけでなく、どの問い合わせをローカルDNSへ送り、どの問い合わせをプロキシ経由のリモートDNSへ送るかまで考える必要があります。設定を誤ると、海外ドメインだけ名前解決に失敗したり、接続自体は成功しているのに端末のDNS問い合わせが通常回線から外へ出たりします。本記事では、v2rayNとXrayコアを前提に、リモートDNS、直連DNS、分割DNS、設定後の確認方法、DNSリークが疑われる場合の切り分けを順番に説明します。

本文速覧

v2rayNのDNS設定を、DNSサーバーの役割、分割ルール、v2rayNの操作手順、確認コマンド、トラブル対処の順に整理します。サブスクリプションを使う一般ユーザーは、まず既存設定をバックアップし、Xrayコアの設定画面で変更を1項目ずつ試すと安全です。

53
通常DNSポート
443
DoHの代表的なポート
2系統
直連DNSとリモートDNS
1項目
一度に変更する設定

DNSとプロキシ経路の役割を分けて考える

DNSはドメイン名をIPアドレスへ変換する仕組みであり、プロキシ接続そのものではありません。ブラウザーがサイトへアクセスするとき、まずDNS問い合わせで宛先を調べ、その後にv2rayNのローカルポートやTUN経路を通って接続が作られます。この2つを同じものとして扱うと、「プロキシは接続できるのに名前解決だけ失敗する」「海外サイトへアクセスしたのにローカル回線のDNSへ問い合わせが出る」といった問題を見落とします。

v2rayNでは、利用するコアと設定モードによって表示項目が異なります。XrayコアのJSON設定では、通常 dnsrouting、必要に応じてDNS用の出站設定を確認します。サブスクリプションをインポートした設定を使う場合、手動編集画面で全ノードへ同じDNS設定を強制する前に、現在の設定をエクスポートして保存してください。v2rayNのバージョンやコアの種類が違うと、同じ項目名でも利用できる値や動作が異なる場合があります。

国内向けは直連DNS、その他はリモートDNSへ送り、速度と漏れ対策のバランスを取ります。

適合:日常利用、国内外のサイトを併用する環境

問い合わせをプロキシ側へ統一しやすい一方、接続確立前の経路やDNSサーバー到達性を確認する必要があります。

適合:漏れ対策を優先する環境

応答は速くなりやすいものの、プロキシ接続中でもDNS問い合わせが通常回線へ出る可能性があります。

適合:国内用途のみ、診断用の一時設定

結論:DNS経路とサイト接続経路を別々に検証する

DNSをリモートへ送っただけでは、サイトへの接続が必ず同じプロキシ経路になるとは限りません。DNSログ、コアのログ、実際の接続先を順番に確認すると、設定ミスの範囲を短時間で絞れます。

直連DNSとリモートDNSを分割する設計

分割DNSの基本は、問い合わせ対象のドメインと、DNSサーバーへ接続する経路を一致させることです。国内向けドメインは近い直連DNSへ送り、海外ドメインや判定が難しいドメインはプロキシ経由のリモートDNSへ送ります。直連DNSには、現在のネットワークで到達できるDNSサーバーを指定します。リモートDNSには、通常のUDP53ではなくHTTPS形式のDoHやTLS形式のDoTを使うと、問い合わせ内容が通常の平文DNSとして見えにくくなります。

用途代表的な形式経路の考え方注意点
国内向けIP:53直連アウトバウンド応答速度と地域内の到達性を確認する
海外向けhttps://ホスト名/dns-queryプロキシアウトバウンドDoHのホスト名を先に解決する循環に注意する
IPv4のみUseIPv4IPv4アドレスを優先IPv6環境では到達性を失う可能性がある
IPv4とIPv6UseIP利用可能なアドレスを取得不要なIPv6応答が遅延の原因になることがある

queryStrategy はDNS問い合わせで取得するアドレス種別を決める項目です。IPv4中心の回線であれば、まず UseIPv4 にしてIPv6アドレスへの接続待ちを避ける方法があります。ただし、これはDNSリークを防ぐ設定ではありません。IPv4だけを取得しても、DNS問い合わせ自体がどの経路を通ったかは別途確認が必要です。

また、DoHのURLに含まれるホスト名を解決するために、同じリモートDNSへ依存すると循環が発生することがあります。固定IPを hosts に置く方法や、最初の接続だけ直連で確立する構成もありますが、固定IPはサービス側の変更で使えなくなる可能性があります。サブスクリプション提供元がDNS設定を指定している場合は、それを優先し、意味が分からない項目だけを個別に確認してください。

v2rayNでDNSを設定する手順

次の手順は、2026年時点のv2rayNでXrayコアを使用する場合の一般的な流れです。画面の文言はv2rayNの版や使用コアによって異なるため、「設定」→「パラメータ設定」周辺にあるDNS、ルーティング、カーネル設定を確認してください。既存のサブスクリプションを直接書き換えるのではなく、まずテスト用の設定として保存すると、問題発生時に元へ戻しやすくなります。

  1. 設定を保存

    v2rayNを停止し、現在のサブスクリプションとカスタム設定をエクスポートします。作業前に使用中のコア名とバージョンも記録してください。

  2. コアを確認

    「設定」→「パラメータ設定」などからCoreタイプを確認し、Xrayコアでテストします。V2Rayコア専用の項目と混在させないでください。

  3. DNSを入力

    DNS設定で直連用サーバーとリモート用サーバーを登録します。DoHを使う場合は、指定されたURL、ポート、経路条件を省略せずに入力します。

  4. 分割規則を設定

    国内ドメイン用の条件を直連DNSへ割り当て、それ以外をリモートDNSへ送ります。ドメイン条件が使えない版では、まず全体をリモートDNSにして動作を確認します。

  5. 再起動して確認

    設定を保存し、Xrayコアを再起動します。ブラウザーのキャッシュを消去した後、国内サイトと海外サイトを分けてアクセスし、ログと応答時間を比較します。

JSONを直接編集する場合は、括弧、カンマ、フィールド名の大文字小文字を確認してください。たとえば dns をトップレベルではなく、誤って特定の出站オブジェクトの内部へ置くと、コアが無視するか、設定検証でエラーになります。編集後は、v2rayNの設定確認機能またはコア起動ログを確認し、「unknown field」「failed to parse」「invalid DNS server」のようなメッセージがないことを確認します。

{
  "dns": {
    "queryStrategy": "UseIPv4",
    "servers": [
      "223.5.5.5",
      "https://example.invalid/dns-query"
    ]
  }
}

上のURLは構造を示すための例であり、そのまま実運用に使用するものではありません。実際には到達可能で、利用規約とプライバシーポリシーを確認できるDNSサービスを選びます。設定例をコピーするときは、DNSサーバーのアドレスだけでなく、分割条件、リモートDNSの接続経路、IPv4・IPv6方針が現在のネットワークに合っているか確認してください。

設定後にDNSリークを確認する方法

DNSリークの確認では、通常回線へ一時的に接続した状態、v2rayNを停止した状態、v2rayNでプロキシを有効にした状態を比較します。ウェブ上のDNSテストだけではブラウザーのキャッシュ結果が表示されることがあるため、テスト前にブラウザーを終了し、コアを再起動してから複数回アクセスします。表示されたDNS事業者が想定と違っていても、利用しているプロキシ事業者やリモートDNSの仕様により、必ずしも単純な漏れとは限りません。

  • v2rayNを有効にした状態で、国内サイトと海外サイトをそれぞれ開く。
  • v2rayNのコアログでDNS問い合わせ、名前解決失敗、タイムアウトを確認する。
  • Windowsのコマンドプロンプトで nslookup example.com を実行し、通常時とプロキシ時の応答を比較する。
  • 必要に応じて ipconfig /flushdns を実行し、古いキャッシュの影響を除く。
  • システムのDNS設定、ブラウザー独自のSecure DNS、別のVPNやセキュリティソフトのDNS機能を確認する。

ブラウザーのSecure DNSが有効になっていると、v2rayNの設定とは別にブラウザー自身がDoHを使う場合があります。この状態では、v2rayN側のログに問い合わせが現れないため、コア設定だけを見ても原因を特定できません。検証時はブラウザーのSecure DNSを一時的に無効にするか、組織のポリシーに従って経路を統一してください。Windowsの名前解決、ブラウザーの名前解決、v2rayN内蔵DNSはそれぞれ別経路になる可能性があります。

分割DNSの確認

国内ドメイン
直連DNSへ送信
海外ドメイン
リモートDNSへ送信
確認方法
コアログと実アクセス

速度だけでなく、問い合わせ経路が想定どおりか確認します。

全体リモートDNS

問い合わせ
プロキシ経由を優先
初期接続
DoHホスト名に注意
確認方法
タイムアウトと漏れを確認

漏れ対策を優先する場合の診断用構成です。

名前解決の失敗とDNSリークの対処

「サイトが開かない」という症状だけでDNSを変更するのは避けてください。ノード自体が接続できない、ルーティングでブロックされている、TLSのSNIが一致しない、IPv6だけ到達できないなど、DNS以外の原因もあります。まずコアログで名前解決エラーがあるかを確認し、同じノードでIPアドレスを直接指定した接続が成立するかを比較します。IP指定だけ成功する場合はDNSまたはドメインルーティングを疑い、IP指定も失敗する場合はノードや伝送設定を確認します。

報告: failed to resolve host

原因と対処:DNSサーバーへ到達できない、または問い合わせ経路が循環しています。まず直連DNSへ一時的に変更し、リモートDNSのURLとプロキシ経路を再確認します。

報告: DNS query timeout

原因と対処:UDP53やDoH接続が現在の回線で遮断されている可能性があります。ポート443のDoH、別のDNSサーバー、またはUseIPv4を順番に試します。

報告: failed to parse config

原因と対処:JSONのカンマ、引用符、フィールド名、コア非対応の項目を確認します。直前に保存した設定へ戻し、1項目ずつ追加してください。

DNSテストに通常回線の事業者が表示される

原因と対処:ブラウザー独自DNS、OSキャッシュ、別VPN、または直連DNSが使われています。v2rayNのログとブラウザーのSecure DNS設定を同時に確認します。

DNS設定を変更した後は、短時間で何度も別の値へ変更しないことが重要です。1つの設定を保存し、コアを再起動し、DNSキャッシュを消去してから、同じサイトと同じノードで比較します。直連DNSを使う分割構成であっても、DNSサーバーが記録する問い合わせ情報、ブラウザーの独自DNS、OSのバックグラウンド通信まで完全に同一になるとは限りません。プライバシーを重視する場合は、利用する各ソフトウェアの名前解決機能を一覧にして、意図しない経路が残っていないか確認してください。

よくある質問

  • DNSを8.8.8.8へ変更すれば漏れは防げますか。いいえ。アドレスを変更しても、そのDNSへの接続が直連なら問い合わせ経路は通常回線です。サーバーの種類と経路を確認してください。
  • UseIPv4にするとDNSリークがなくなりますか。いいえ。UseIPv4は取得するアドレス種別の設定です。DNS問い合わせの送信経路やブラウザー独自DNSは別に確認が必要です。
  • 分割DNSで海外サイトだけ開けません。リモートDNSへ到達できない、DoHホスト名の初期解決が循環している、またはIPv6応答へ接続できない可能性があります。直連DNS、DoH、UseIPv4を順番にテストします。
  • 設定後に元へ戻す方法はありますか。作業前に保存したJSONまたはエクスポート済み設定を復元し、v2rayNとXrayコアを再起動してください。サブスクリプションを再更新するだけでは、手動変更が消えない場合があります。
v2rayN をダウンロード