背景
自宅のWindows 10で検証環境サーバの名前解決をしようとすると、IPv6アドレスで名前解決しようとしている状態になった。
検証環境サーバはIPv4オンリーのため結果的に名前解決ができずアクセスできない。
nslookup(DNSサーバ指定なし)
C:>nslookup rhel7.mylab.local
サーバー: UnKnown
Address: 2404:1a8:7f01:d::3*** UnKnown が rhel7.mylab.local を見つけられません: Non-existent domain
nslookup(DNSサーバ指定あり)
C:>nslookup rhel7.mylab.local 192.168.10.251
サーバー: rhel7.mylab.local
Address: 192.168.10.251名前: rhel7.mylab.local
Address: 192.168.10.251ping
C:>ping rhel7.mylab.local
ping 要求ではホスト rhel7.mylab.local が見つかりませんでした。ホスト名を確認してもう一度実行してください。
対処方法
クライアント(Windows 10)側でIPv6を無効にすると名前解決できるようになるんだけど、IPv6無効化以外に
何かないかなと思って探したら、WindowsのIPv6のプロパティでDNSサーバを『ffff::<DNSサーバのIPv4アドレス>』のように
指定するとnslookupは失敗するけど、pingでは疎通が確認できるようになった。
nslookup(DNSサーバ指定なし)
C:>nslookup rhel7.mylab.local
DNS request timed out.
timeout was 2 seconds.
サーバー: UnKnown
Address: ffff::c0a8:a01DNS request timed out.
timeout was 2 seconds.
DNS request timed out.
timeout was 2 seconds.
DNS request timed out.
timeout was 2 seconds.
DNS request timed out.
timeout was 2 seconds.
*** UnKnown への要求がタイムアウトしましたping
C:>ping rhel7.mylab.localrhel7.mylab.local [192.168.10.251]に ping を送信しています 32 バイトのデータ:
192.168.10.251 からの応答: バイト数 =32 時間 =2ms TTL=64
192.168.10.251 からの応答: バイト数 =32 時間 =3ms TTL=64
192.168.10.251 からの応答: バイト数 =32 時間 =2ms TTL=64
192.168.10.251 からの応答: バイト数 =32 時間 =4ms TTL=64192.168.10.251 の ping 統計:
パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
最小 = 2ms、最大 = 4ms、平均 = 2ms
nslookupが失敗する理由がわからないけど、ブラウザで http(s)接続もできたのでとりあえずはこれで。