Windows ServerでDMZ上にDNSを建てているが、設定で失敗した話。
Windwos ServerのDNSはデフォルトで、「再帰を無効にする」がチェックされていない。

この状態だと、自身のドメイン以外のクエリ要求に対しても検索を行なってしまう。
つまり、オープンリゾルバ状態となってしまう。
今までは、この状態でも特に問題は無かったのだが、ある日突然、インターネット回線が輻輳状態になってしまった。
WireSharkでパケットキャプチャし、解析を行なったところ、上記のオープンリゾルバ状態を狙った攻撃であった。
1秒間に多数のDNSクエリが複数IP(多分、偽装)から要求され、それぞれの要求に対して検索,回答を行なっていたため、回線が輻輳した模様。
DNS設定を見直し、「再帰を無効にする」にチェックをいれ、かつ、DNSにフィルタを付与して余計な回答を返さないようにした所、輻輳は止まった。
フィルタは以下のような感じ。
# Query Type ANYを無視
Add-DNSServerQueryResolutionpolicy -Name "IgnoreANY" -Action Ignore -QType "EQ,ANY" -PassThru
# Query Type TXTを無視(自ドメイン除く)
Add-DNSServerQueryResolutionpolicy -Name "IgnoreTXT" -Action Ignore -QType "EQ,TXT" -FQDN "NE,<MyDomain>" -PassThru皆さんもDMZ等にWindows Server DNS設定する場合は、気を付けてね。





Users Today : 12
Users Yesterday : 13
Users Last 7 days : 163
Users Last 30 days : 769
Users This Month : 278
Users This Year : 9003
Total Users : 103518
Views Today : 13
Views Yesterday : 24
Views Last 7 days : 206
Views Last 30 days : 913
Views This Month : 340
Views This Year : 10799
Total views : 143245
Who's Online : 0