DNSの役割をまず押さえる
DNS(Domain Name System)は、私たちが入力するドメイン名(例:example.com)を、実際に通信する相手を示すIPアドレスに変換するための仕組みです。Webサイト閲覧やメール送信など、日常の通信ではこの「名前解決」が欠かせません。
DNSを使うメリット
DNSを利用する最大の利点は、利用者側の運用負担を下げられることです。サービスはIPアドレスが変わっても、DNSの設定を更新することで同じドメイン名のまま到達先を切り替えられます。その結果、ユーザーはIPを意識せずにアクセスできます。
また、DNSは名前解決を共通化するため、アプリや機器は「ドメイン名→IPアドレス」という前提で動けます。これにより、通信の互換性や移行のしやすさが高まります。
さらに、DNSにはキャッシュ機能があり、同じ問い合わせが短時間に繰り返される場合、待ち時間や負荷を抑えられます。とはいえ、キャッシュは後述するデメリット(誤った情報の残り)にも関係します。
DNSを使うデメリット
デメリットの中心は、DNSが「通信の入口」であり、その問い合わせに関する情報がセキュリティ上の手がかりになり得る点です。たとえば、どのドメインに問い合わせたか(問い合わせ先、時刻、頻度など)は、ネットワーク上や中継経路にいる第三者が観測できる場合があります。
また、DNSの応答を誤らせたり偽装したりする攻撃が理論上・現実的に考えられます。攻撃者が応答を改ざんできれば、ユーザーは意図しないIPアドレスへ誘導される可能性があります。さらに、キャッシュが絡むと、誤った応答が一定時間残って影響が長引くことがあります。
加えて、DNSをめぐる妨害(応答遅延や応答不能)によって、アクセスが不安定になる場合もあります。
