DNS クエリが 、AWS Client VPN エンドポイントに設定されている DNS サーバーに転送されない理由を知りたい。
簡単な説明
クライアントをターゲット DNS サーバーのあるクライアント VPN エンドポイントに接続すると、通常、クエリはその DNS サーバーに転送されます。場合によっては、NSLOOKUP の DNS クエリが代わりにクライアントマシンのローカル DNS サーバーに転送されることがあります。
この動作は、Windows (Windows 2000/XP/7 を含む) のバインド順序に誤りがあることが原因です。バインディングに誤りがあると、OpenVPN クライアントは VPN アダプターの設定ではなく、デフォルトのネットワークアダプターの DNS 設定を使用するようになります。この問題を解決するには、Windows レジストリのバインド順序を TAP-Windows アダプタ V9 を優先するように変更します。
Windows 10 マシンを使用している場合は、この記事の「Windows 10 コマンド」セクションに進んでください。他の方法は Windows 10 には適用されません。
解決策
インターフェイスのインターフェイスメトリック値を変更して、バインディング順序を変更します。以下のいずれかの方法を使用してください。
Microsoft コマンドプロンプトまたは PowerShell を使用してインターフェイスメトリック値を変更する
1. AWS Client VPN サービスを使用してクライアント VPN エンドポイントに接続します。
2. コマンドプロンプトまたは PowerShell を管理者モードで開きます。
3. ipconfig /all を実行して、イーサネットアダプターのリストを取得します。
4. イーサネットインターフェイス番号と「TAP-Windows Adapter V9」の正確な説明をメモします。
5. このコマンドを実行します。
netsh interface ipv4 set interface "Ethernet 4" metric="1"
**注:**コマンドで、ステップ 4 でメモしたイーサネットアダプタのインターフェイス番号を使用します。コマンドが正常に実行されると、「OK」コードが表示されます。次に、DNS クエリは、クライアント VPN エンドポイントに設定された DNS に転送されます。
Windows のコントロールパネルを使用してインターフェイスメトリック値を変更します
1. コントロールパネルを開きます。
2. [ネットワークとインターネット] を選択し、[ネットワーク接続] を選択します。
3. TAP-Windows アダプター V9 タップアダプターを右クリックします。
4. [プロパティ] を選択し、[インターネットプロトコルバージョン 4] を選択します。
5. [プロパティ] を選択し、[詳細設定] を選択します。
6. [自動メトリック] ボックスを無効にします。
7. [インターフェイスメトリック] に 1 を入力します。
8. [OK] を選択します。
Windows 10 コマンド
Windows 10 マシンの場合は、Set-NetIPInterface PowerShell コマンドを使用してインターフェイスメトリックを設定します。
Set-NetIPInterface -InterfaceIndex 4 -InterfaceMetric 1
**InterfaceIndex ** はインターフェイス番号で、InterfaceMetric はメトリック値です。
回避策を実装したら、次のコマンドを実行して優先 DNS サーバーを確認します。
netsh interface ip show config