Managed Service Column <システム運用コラム>

DNS(DomainNameSystem)

Category: 入門編

2020.12.16

はじめに

DNSとは?インターネットを支える仕組み – ルートサーバーとキャッシュサーバーについても解説」でも解説した通り、DNSは、私たちが何気なく利用しているインターネットのさまざまな場面で活躍しています。
例えば、ブラウザからWebページを閲覧するときや、メールを送信するときにも必ず利用する機能です。その際、PC機器のやりとりは、数字によって成立しています。これはネットワークも同じで、膨大な数字の並びを使い、世界中の電子機器同士がつながっているのです。

しかし、そういった数字の並びは私たちには分かりにくく、多くの人が理解することは困難といえます。そこで、登場したのが「ドメイン」といわれる文字です。ドメインは、普段使っているアドレスの一部で、ネットワーク上の場所を示しています。

今回は、そんなドメインを管理するシステムであるDNSの2つの提供形態についてご紹介します。

DNSとは?

まずは、DNSとは何なのか、どう機能するか、からおさらいします。

DNSとは、Domain Name Systemの略で、ドメイン名を管理するシステムのことです。
ドメイン名とは、aaa@example.co.jp というメールアドレスの、@以降にかかれている example.co.jp の部分を指します。また、サイトURLでは www.example.com の、example.com 部分を表す言葉です。このドメインと www のようなホスト名を組み合わせて、URL ができています。

URL,ホスト名,ドメイン名,FQDN
URL,ホスト名,ドメイン名,FQDN

ドメインが必要な理由は、サイトやメールの送受信先を、人間が分かりやすくするためです。PCは本来、IPアドレスという数字の羅列によってやり取りをしていて、当然、私たちが目にするサイトのアドレスも、さまざまな数字が使われています。

しかし、IPアドレスをそのまま表してしまうと、覚えにくいばかりか、変更があった場合の対応が難しくなります。そこで、IPアドレスを人間にも把握しやすくすることで、スムーズに目的のサーバーやWebサイトなどと通信できるようにしたのがドメインであり、そのドメインを管理し、運用するシステムが DNS なのです。

DNS はDNSサーバーと呼ばれることもあります。DNSサーバーとはDNS機能を付随したサーバーのことで、具体的にはドメインとIPアドレスの変換ができるサーバーを指します。

DNSの仕組み

より具体的なDNSの仕組みを見ていきましょう。
私たちがWebサイトを閲覧する際には、DNSサーバーの中でもキャッシュDNSサーバーとルートDNSサーバーと呼ばれる2種類のDNSサーバーが連携しています。キャッシュDNSサーバーはどのドメイン名がどのIPアドレスを担当しているかを一時的に保管しておくためのもので、ルートDNSサーバーはドメインのオリジナルの情報をどのサーバーが持っているかを保管しているサーバーです。

あるサイトにアクセスしようとした場合、最初にキャッシュDNSサーバーへそのIPアドレスがあるか問い合わせします。キャッシュDNSサーバーにデータがあれば必要なIPアドレスを返し、なければルートDNSサーバーに対してどのDNSに必要なデータがあるかを問い合わせるのです。

DNSキャッシュサーバー,DNSルートサーバー
DNSキャッシュサーバー,DNSルートサーバー

すると、ルートDNSサーバーが情報を持っているDNSサーバーを教え、キャッシュサーバーは情報があるDNSサーバーにアクセスします。そして最終的には、キャッシュサーバーから必要なIPアドレスがPCやスマホに返されることで、Webページを見ることができるという仕組みです。

このようにキャッシュDNSサーバーがルートDNSサーバーに聞き込みをし、IPアドレスを発見することで、私たちはメールの送受信やサイトの閲覧ができています。

関連記事:「DNSとは?インターネットを支える仕組み – ルートサーバーとキャッシュサーバーについても解説

DNSの提供形態

インターネットを利用するために必要不可欠なDNSサーバーですが、「インターネットプロバイダが提供するDNS」「パブリックDNS」「自社運用のDNS」と3つの形態があります。ここでは前2者についてご紹介します。

プロバイダ提供のDNS

プロバイダと契約すると、DNSが提供されます。プロバイダとは、インターネットを開通させる際に、自宅の回線とインターネットを繋ぐ業者のことです。
プロバイダを介してインターネットに接続する際には、プロバイダが提供する独自のDNSサーバーを利用し、IPアドレスのやり取りをします。そのため、プロバイダと契約する際にはほぼ自動的にDNSも一緒についてきます。

パブリックDNS

プロバイダ提供のDNS以外に、契約を必要としないパブリックDNSと呼ばれるものもあります。
パブリックDNSのメリットとしては、プロバイダDNSの速度が遅い場合や、何らかのトラブルがあったときでも影響を受けにくい点が挙げられます。また、危険なサイトへのアクセス防止や、フリーWi-fiを使用する際の安全性向上といったセキュリティ面でも役立ちます。

利用するDNSサーバーをパブリックDNSへ変更するメリット

利用するDNSサーバーを個人で変更するメリットとしては、セキュリティの強化と通信速度の向上が挙げられます。

セキュリティ強化

特にセキュリティ面でのメリットを感じられるのが、外出先でのネット利用です。ホテルや商業施設などでフリーのWi-Fiに接続した場合、通常はWi-Fiに付随するDNSサーバーを使うことになります。しかし、同じDNSサーバーの利用者の中にハッカーがいた場合、情報の盗み見やウイルスサイトへの誘導が行なわれる可能性もあります。

このようなときにパブリックDNSを設定することで、上記のようなリスクを回避できるのです。

通信速度の向上

Wi-Fiの速度が遅い場合、原因がDNSサーバーにある可能性も考えられます。プロバイダがDNSへの投資をあまりせずに機能的に脆弱な場合、混雑や不調が発生してしまい、速度が遅くなるケースがあるのです。
通信が遅くなっている場合は、利用するDNSサーバーを変更することでスムーズなネット利用ができるようになるかもしれません。

利用するDNSサーバーをパブリックDNSへ変更するデメリット

このように利用するDNSサーバーの変更にはいくつもメリットがありますが、その反面デメリットも存在します。

まずセキュリティ面ですが、たしかにパブリックDNSを使う設定をすることで強固になることが期待できます。しかし、適切に設定できていないと悪用されてしまい、被害にあう危険性もあるのです。

また、現在利用しているプロバイダのDNSサーバーが優秀な場合、設定を変更することでかえって速度が遅くなることも考えられます。DNSサーバーを切り替えて速度ダウンしたときには、元に戻すようにしましょう。

デメリットをいくつか紹介しましたが、DNSの仕組みや設定方法を理解し適切に利用すればこれらは回避できます。現在のネットワーク環境に不満があるという方は、一度チャレンジしてみても良いでしょう。

DNSのセキュリティ対策について

DNSのセキュリティ対策は、現代のネット利用においては最重要項目といえます。もし、適切な対策を講じていなければ、有害ソフトのダウンロードや、偽サイトへのアクセスなどを促され、思わぬ事態になることもあります。そのため、セキュリティを設定しておくことが重要なのです。

DNSのセキュリティ対策として、もっとも有名なのが「ファイヤーウォール」でしょう。ファイヤーウォールは、危険性のある通信を遮断してくれるセキュリティシステムです。また、万が一サイバー攻撃を受けた際にも、情報を流出させる通信をストップさせる役割もあるため、被害を食い止められます。

関連記事:「ファイアウォール(FW)とは?仕組みや機能と併せてWAFなどとの違いについても解説

インターネット接続には、セキュリティ上さまざまな危険がつきまといます。そのため、防衛策をしっかりと施し、被害にあわないようにすることが重要です。

おわりに

インターネットを利用するうえで、DNSは非常に重要となる要素の一部です。DNSによって私たちはさまざまなWebサイトを閲覧できているため、DNSがなければインターネットはここまで浸透していなかったかもしれません。

普段からDNS意識することは多くないと思いますが、利用するDNSサーバーを自分で変更することで、よりスムーズかつ安全にインターネットを利用できることもあります。

自分で設定変更できるとはいえ、個人的なDNSの設定変更にはメリットもあればデメリットもあります。そのため、まずはDNSがどのようなものなのかをしっかりと理解することが重要です。そのうえで、適切に利用できれば、より快適で安全なインターネットライフを送ることができるでしょう。

Free

資料ダウンロード

課題解決に役立つ詳しいサービス資料はこちら

資料ダウンロード
  • システム運用代行サービスカタログ

    システム運用代行サービスのメニューと料金をご確認いただけます。

システム運用個別相談会(無料)

Tag: DNS

関連記事

Contactお問い合わせ

お見積もり・ご相談など、お気軽にお問い合わせください。

single.php