nslookup は VPN 経由で解決できるのにブラウザはできない理由
nslookup は指定したサーバーに直接問い合わせます。ブラウザはインターフェースのリゾルバー、NRPT の規則、暗号化 DNS に従います。VPN を編集する前に、これらの経路を比較してください。
nslookup は指定したサーバーにクエリを送って答えを表示するため、ブラウザのすべてのタブが失敗している間も成功できます。ブラウザは名前解決を OS に要求し、OS はインターフェースごとのリゾルバー、名前解決ポリシーの規則、アダプターのネットワーク位置を天秤にかけます。さらにブラウザが独自の暗号化 DNS を上乗せすることがあります。三つの異なる経路、一つの症状、そしてトンネルはたいてい壊れた部分ではありません。
以下の確認はその経路をシステムから外側へたどります。どの経路が応答し、どれが失敗したかを知るまで VPN プロファイルを編集しないでください。
三つのポリシーが答えを決める
各インターフェースは独自のリゾルバー一覧と検索サフィックスを持ちます。VPN アダプターはサーバーを追加し、物理アダプターは自分のものを保ち、システムは先に答えたほうを採用できるため、誰も選んでいないのに検索がトンネルの外で処理されることがあります。名前解決ポリシーテーブルの規則は、選択したドメインを選択したサーバーへ送れます。Windows で分割 DNS を表す通常の方法です。また VPN クライアントやゲートウェイは、プライベートネットワーク内にしか存在しないリゾルバーのアドレスを押し込むことがあります。
これら三つはブラウザから見ると恣意的に思える仕方で影響し合います。分割トンネルを通る経路のないプライベートアドレスのリゾルバーが押し込まれると、どの検索も止まってから失敗します。内部サフィックスを覆い、停止したサーバーを指すポリシー規則は、経路の欠落と同じ見えるエラーを生みます。VPN アダプターから欠けた検索サフィックスは短い名前を間違ったドメインへの公開クエリに変えます。それぞれ別の修理が必要です。
ブラウザが別の問いを立てる理由
nslookup は自分が選んだサーバーに独自のクエリを出し、名前空間ポリシーもブラウザの暗号化 DNS 設定も守りません。だから公開リゾルバーへの手動クエリは答えるのに、ブラウザはサイトが存在しないと報告します。あなたは二つのプログラムを比べているのであって、一つのプログラムの二つの状態を比べているのではありません。
アドレスファミリーの優先は遅延を説明し、失敗は説明しません。IPv4 しか運ばないトンネルで最初に IPv6 レコードを求めるブラウザは、タイムアウトを待ってから後退します。Firefox はまさにこのための優先設定を持っており、それを無効にするのは診断の手順であって修理ではありません。
リゾルバー一覧と規則を読む
Windows では、理論を語る前にシステムが保持している内容を出力します。Get-DnsClientServerAddress はインターフェースごとのサーバーを示し、Get-DnsClientNrptRule は名前空間の規則を列挙し、Resolve-DnsName はシステムの経路で正確な名前へ答えます。その答えを、VPN のサーバーへアドレスで直接問い合わせた結果と比べてください。Resolve-DnsName が失敗し直接のクエリが成功する場合、容疑者はリゾルバー一覧か名前空間の規則です。
名前そのものも確認します。内部の短い名前は VPN アダプターだけが与えるプライベートサフィックスを必要とすることがあり、一方で完全修飾名は問題なく解決します。解決に成功した後の証明書警告は別の問題に属します。
到達できない押し込まれたリゾルバー
ゲートウェイやクライアントはリゾルバーのアドレスを押し込むことができ、そのアドレスはトンネル経由で到達できなければなりません。分割トンネルでは、リゾルバーを含むプライベート範囲が含まれる経路にないことがあり、応答をまったく受け取れない検索になります。経路が存在することを確認し、そのうえでそのアドレスをトンネル経由で名指しで問い合わせてください。公開リゾルバーがまだ答えているのにブラウザでドメインエラーになる裏側の失敗がこれです。
リゾルバーに到達できない場合、修理は経路か含めるサブネットであり、別の DNS サーバーではありません。
暗号化 DNS は経路全体を迂回する
DNS-over-HTTPS を使うブラウザは、選んだプロバイダーへの HTTPS 接続で自分で名前を解決します。これが有効だと、それらの検索ではシステムのリゾルバーと分割 DNS の規則が完全に迂回され、OS が正しく解決するのにブラウザでは内部名が失敗します。逆も起こります。内部名が、決して見るべきでないプロバイダーを通じてブラウザで成功するのです。これは接続ではなくポリシーの問題です。
管理対象端末で暗号化 DNS を許可するかを意識的に決め、その選択が見えるようにブラウザーの管理画面から設定してください。個人の好みに任せると、同じ VPN がノート PC ごとに違う挙動をする群れができます。
失敗に合った修理
VPN がリゾルバーを押し込むなら、トンネルがそこへの通信を運ぶようにし、同じ設定を解決に参加するアダプターで見えるようにします。接続中にローカルサイトが解決されなくなったら、リゾルバーを丸ごと交換するのではなく、明示的な名前空間の例外か条件付きフォワーダーを追加します。ブラウザの暗号化 DNS がポリシーを迂回しているなら、それが変更すべき設定です。内部名を直すために公開リゾルバーを追加してはいけません。プライベートなクエリを漏らし、名前も解決しません。
次に検索と接続を切り分けます。正しいアドレスに解決するのに接続を拒否する名前は、サービス、ファイアウォール、証明書の問題であり、DNS の変更では直りません。
どの経路が応答し、どれが失敗し、何を変えたかを記録します。そうすれば同じ症状の次の報告は、半日ではなく一つのコマンドで済みます。