以下の通りに対応したため、メモ。
環境
- Windows Server 2008 R2 を優先DNSとして設定し、代替DNSは存在しない
- その状態でイベントID5504「DNSサーバーは<IPアドレス>からのパケットに無効なドメイン名を検出しました」が発生する
- 上記に記載されているIPアドレスへとアクセスしようとしても、名前解決をすることができず、表示することができない
対応
EDNS0を無効にする
「Windows Server 2008 実践ガイド」の作者様のサイトにて解説があったため、そちらを参考に EDNS0 を無効化した。
すると、名前解決を行うことができるようになり、またイベントID5504も発生しなくなった。
なお、EDNS0を無効を行ったとしても、一部で名前解決を行うことができないところがあった(この場合、イベントログには何も残らない)。
Windows Server 2008 R2 のDNSでは、DNSSECの実装のために挙動が変わったとの情報もあったため、Windows Server 2003 R2 のDNSで代替DNSを構築・設定したところ、名前解決を行うことができるようになった(この方法が良いかはあまり自信なし)。