EXトネリングの設定は正しいと考えられるのに、社内のWebサーバへのアクセスができない場合で、
1)Javaのコンソールログを調べて見ると、社内Webサーバやそのほかのサイトへの名前解決問い合わせのログが見当たらない
2)社内Webサーバへのアクセスは名前(ホスト名)でできるようにしていて、ドメイン名はグローバルのものと共通になっている
ようなケースへの対処方法です。
ご利用のPC(特にWindows10)では、ループバックアダプタをインストールしていただき、そのループバックアダプタにDNSサーバのアドレスとして127.0.0.1が設定されていますが、OSレベルでは複数のインタフェースにそれぞれ設定されたDNSサーバの情報に対して、インタフェースの「優先度」順にDNSサーバへの名前解決の問い合わせを行います。インタフェースの「優先度」は各インタフェースに割り当てられた「メトリック」の小さい順に高い優先度が割り当てられます。
例えば、Windowsのコマンドプロンプトでnetstat -rを実行した以下の例では
198.51.100.254のIPアドレスが割り振られたループバックアダプタのインタフェースメトリック値は296と他に比べて大きく(つまり優先度は低く)、名前解決問い合わせの順番としてはほかのインタフェースに割り当てられたDNSサーバへの問い合わせの後となります。
このようなケースでは、社内Webサーバのアクセスのドメイン名がグローバルのものと共通している場合(例えばareabe.comやwww.areabe.comがパブリックサーバとして動作していて、internal.areabe.comが社内サーバとして社内のDNSサーバで名前解決されるような設定)では、OSは別のインタフェース(図の例ではイーサネットアダプタ)に割り当てられているグローバルDNSに名前解決のリクエストを発行しその応答が返ってきてしまっているためにループバックアダプタに割り当てられたDNSへは名前解決のリクエストを発行しないために問題が発生します。
解決方法
ループバックアダプタに割り当てるメトリック値を小さくします。
1)「Microsoft KM-TEST Loopback Adapter」のプロパティを開きます。
2)「インターネットプロトコルバージョン4(TCP/IPv4)」の「プロパティ」を開きます
3)「詳細設定(V)」で表示される画面内の「自動メトリック」のチェックをはずし、「インタフェイスメトリック」に20を設定し「OK」をクリックします。更に開いた画面を閉じます。
4)コマンドプロンプトでnetstat -rの出力を確認し、198.51.100.254のメトリック値が他よりも小さくなっており、「インタフェース一覧」で「Microsoft KM-TEST Loopback Adapter」がリストの先頭にあることを確認します。
補足:FAQ ID:603047「EXトネリング機能で設定は正しいはずなのにアクセスできません」で「アダプターとバインド」を開いてインタフェースの優先度を変更する方法を開示していますが、Windows10の最新版では「アダプターとバインド」の画面がなくなっています