【ITニュース解説】第834回 Unboundでお手軽に家庭内DNSサーバーを作ろう[Ubuntu 24.04 LTS対応版]
2024年10月16日に「Gihyo.jp」が公開したITニュース「第834回 Unboundでお手軽に家庭内DNSサーバーを作ろう[Ubuntu 24.04 LTS対応版]」について初心者にもわかりやすいように丁寧に解説しています。
ITニュース概要
Ubuntu 24.04 LTSでUnboundを使い、家庭内DNSサーバーを構築する方法を紹介。Unboundは、外部のDNSサーバーに問い合わせるキャッシュDNSサーバーとして機能する。設定をカスタマイズすることで、Webサイトの表示速度向上やセキュリティ強化が可能。初心者でも簡単に構築できるよう、手順を解説する。
ITニュース解説
今回の記事では、Ubuntu 24.04 LTSを使って、家庭内DNSサーバーを構築する方法を紹介する。DNSサーバーとは、インターネットを使う上で欠かせない仕組みであり、私たちが普段利用するウェブサイトの名前(例:google.com)を、コンピューターが理解できるIPアドレス(例:172.217.160.142)に変換する役割を担っている。
通常、私たちはインターネットプロバイダー(ISP)が提供するDNSサーバーを利用している。しかし、自分でDNSサーバーを構築することで、いくつかのメリットを享受できる。例えば、ISPのDNSサーバーよりも高速な応答速度を実現したり、セキュリティを高めたり、特定のウェブサイトへのアクセスを制限したりすることが可能になる。
今回紹介するUnboundは、これらの目的を達成するためのDNSサーバーソフトウェアの一つだ。Unboundは、キャッシュDNSサーバーとして機能し、外部のDNSサーバーから取得した情報を一時的に保存することで、同じウェブサイトへのアクセスを高速化する。また、DNSSECというセキュリティ機能に対応しており、ウェブサイトの正当性を検証することで、偽のウェブサイトへのアクセスを防ぐことができる。
Ubuntu 24.04 LTSは、Canonical社が提供するLinuxディストリビューションの一つで、長期サポート(LTS)版は、5年間の無償サポートが提供されるため、安定した環境でDNSサーバーを運用したい場合に適している。
UnboundをUbuntu 24.04 LTSにインストールする手順は比較的簡単だ。まず、aptコマンドを使ってUnboundパッケージをインストールする。
1sudo apt update 2sudo apt install unbound
インストールが完了したら、Unboundの設定ファイルを編集する必要がある。設定ファイルは /etc/unbound/unbound.conf.d/ ディレクトリに配置され、unbound.conf ファイルを直接編集するのではなく、個別の設定ファイルを作成することが推奨される。例えば、local.conf というファイルを作成し、以下のような設定を記述する。
server:
interface: 127.0.0.1
interface: ::1
interface: 192.168.1.10 # DNSサーバーのIPアドレス
access-control: 192.168.1.0/24 allow # アクセスを許可するネットワーク
do-not-query-localhost: no
forward-zone:
name: "."
forward-addr: 8.8.8.8 # Google Public DNS
forward-addr: 8.8.4.4 # Google Public DNS
上記の設定例では、Unboundがlocalhost(127.0.0.1と::1)と、ローカルネットワークのIPアドレス(192.168.1.10)でリッスンし、192.168.1.0/24 のネットワークからのDNSクエリを許可するように設定している。また、外部へのDNSクエリは、Google Public DNS(8.8.8.8と8.8.4.4)に転送するように設定している。forward-zone の設定は、UnboundがどのDNSサーバーを使って外部のウェブサイトの名前解決を行うかを指定するものだ。
設定ファイルを編集したら、Unboundを再起動して変更を反映させる。
1sudo systemctl restart unbound
Unboundが正常に動作しているかを確認するには、dig コマンドを使うことができる。例えば、google.com のIPアドレスを問い合わせるには、以下のコマンドを実行する。
1dig @127.0.0.1 google.com
このコマンドは、localhost(127.0.0.1)で動作しているUnboundに、google.com のIPアドレスを問い合わせる。コマンドの出力結果には、問い合わせたIPアドレスや、DNSサーバーからの応答時間などが表示される。
Unboundの設定をさらにカスタマイズすることで、様々な機能を追加することができる。例えば、DNSSECを有効にすることで、ウェブサイトの正当性を検証し、セキュリティを高めることができる。また、ローカルDNSゾーンを設定することで、特定のドメイン名を特定のIPアドレスに解決するように設定することも可能だ。これは、家庭内ネットワークで独自のドメイン名を使用したり、特定のウェブサイトへのアクセスをブロックしたりする場合に便利だ。
Unboundは、柔軟な設定が可能であり、様々な用途に利用できる。家庭内DNSサーバーとして利用するだけでなく、企業内のDNSサーバーとしても利用することができる。Unboundを理解し、使いこなすことで、ネットワーク管理のスキルを向上させることができるだろう。
今回の記事では、Ubuntu 24.04 LTSを使ってUnboundを構築する基本的な手順を紹介した。さらに詳しい設定や、トラブルシューティングについては、Unboundの公式ドキュメントや、オンラインの情報を参照してほしい。