オープンリゾルバ確認サイトで自分が使うDNSが
オープンリゾルバになっていないか確認できます。
こちらでも紹介されています。
【簡単チェック】お宅のルーターは大丈夫? 悪用されないかどうかチェックしてみよう
仕組みと注意点について書いておきます
仕組み
仕組みは以下の通り、リクエストのたびに一意なドメイン(xxxxxx.chk.openresolver.jp)にリダイレクトさせ、名前解決をさせます。
ns.chk.openresolver.jp側ではxxxxxx.chk.openresolver.jpの名前解決を要求してきたIPアドレスが分かるので、
そのIPをオープンリゾルバかチェックしています。
clientのIPアドレスはリクエストしてきた時点で分かります。
注意点
この仕組みから分かる通りチェックしてくれるのは権威サーバに問い合わせたIPだけです。
例えばGoogleのPublic DNSの8.8.8.8を使って引くと74.125.16.211が
DNSサーバとしてチェックされます。(※IPアドレスは場所と時間により変わります)
以下の通り、クライアントから名前解決要求を受け付けるIPアドレスと
DNSの再帰検索をするIPアドレスが違うためです。
自分でチェックする
と言うわけで、なんらかの理由で名前解決要求を受け付けるIPアドレスと再帰検索をするIPが違う場合は自分でチェックします。
外から以下のコマンドを打ちます。(そもそも外部からアクセスできないのであればセーフです)
203.0.113.1は自分が設定しているDNSアドレスです
$ dig @203.0.113.1 example.com.
コマンドを打った結果
flagsにraがある or IPアドレスが返ってきちゃった場合は多分駄目です。