少し背景:
LAN上にCisco871のパブリックIPに静的にNATされるサーバーがあります。トラフィックを分離するために、同じローカルサブネットの残りの部分は別のパブリックIPに静的にNATされます。私のドメインの信頼できるパブリックネームサーバーには、サーバーに関連する正しいレコードがすべてあります。また、情報は数週間前に世界の他の地域に完全に広まりました。
問題:
サーバーと同じ物理LAN上の任意のマシンからドメインのnslookupを実行すると、サブネット(2つのサブネットがあります)に関係なく、パブリックIPではなくサーバーのローカルIPが返されます。 nslookupは、このネットワークの外部から実行されると、正しい(パブリック)IPを返します。
私がこれまでに知っていること:
サーバーの静的NATを削除すると、問題が即座に解消されることを知っています(以下の構成の太線を参照)。DNSトラフィックまたはそのような性質のものにCBACを使用していません。同僚そして私はひどく困惑しています。
これが私の設定からの関連するスニペット(意図的に変更されたアドレス)です:
誰かがこれが起こっている理由を理解するのを手伝ってくれませんか?
これは「DNSドクター」と呼ばれ、ローカルクライアントにNATアドレス:
NAT FAQ とリンク
IOSファイアウォールコード(PIXやASAによく似ています)はデフォルトでDNSを検査するため、これを行っています。無効にするには、「noinspectdns」を発行します。おそらくIOS静的NATの使用を開始すると、ファイアウォールの動作が始まります。
dNS Doctoringを無効にするには、次のコマンドを試してください。
no ip nat service alg udp dns
DNS解決構造に関する情報を投稿することをお勧めします。たとえば、クライアント->サーバーA-> ISPA。サーバーのNATが解決のために使用される最後の内部DNSシステムが配置されている場合、「ループ」を作成しているようです。外部サーバーへの接続は、ISPではなくサーバーのパブリックIPを参照していますか?
少し明確にするために。 NATが設定されていない場合、ルーターは解決策を提供するか、ISPに転送します。ただし、NATを使用すると、トラフィックはサーバー自体に送り返されます。