ローカルの仮想サーバにDNSサーバ構築

  • 2020年11月9日
  • 2020年11月9日
  • DNS
  • 8575view
DNS

こんにちは、インフラ担当のちぇんです。

今回は以下の目的で DNS サーバを用意しようと思います。

・自宅の仮想環境が増えてきたので、 IP アドレスではなく名前解決できると楽かも

・サーバやネットワークの検証用

 

準備

概要

・サーバを 2 台、それぞれマスターとスレーブで構築しサーバ間の通信を暗号化します。

・ウェブサーバを IP アドレスではなくドメインでアクセスできるようにします。

 

今回のネットワーク構成
項目 ホスト名 IPv4 アドレス
ドメイン local-dns-server 192.168.1.0/24
マスターサーバ ns1.local-dns-server 192.168.1.207
スレーブサーバ ns2.local-dns-server 192.168.1.217
WWWサーバ yakiniku.local-dns-server 192.168.1.52

 

bind インストール
ポート開放
 

chroot でサービス起動

セキュリティを考慮し chroot で動かそうと思います。

 

TSIG でサーバ間通信の暗号化

・ローカル環境ではありますが、暗号化通信の設定も行います。

 

共有鍵の作成
共有鍵の確認
 

設定ファイル編集

/etc/named.conf は、マスター・スレイブそれぞれで作成しますが、正引き・逆引きのファイルマスターからスレイブへ提供するためマスター側でしか作成しません

 

マスターサーバの設定
 

IPv4 正引きマスターファイルの作成
 

IPv4 逆引きマスターファイルの作成

PTR レコードの左端の数字ですが・・・

最初は通し番号でいいんじゃね?と思って失敗しました。。。

IP アドレスとドメインの対応表なので、第 4 オクテットですよね(汗

 

スレーブサーバの設定
 

webサーバで確認

無事ドメインでアクセスできました。

ローカル環境ですと自分が管理者なので、設定変更の自動更新を待たずに手動で反映させられる為、すぐにドメインでアクセスできました。

 

dig で確認

any で確認

逆引きで確認

どちらも WARNING: recursion requested but not available が出ていますが、権威サーバとして再帰問い合わせ無効に設定しているので問題ないです。

 

まとめ

やってみた感想

困った点

・ named.conf の内容が bind のバージョンによって廃止された設定もあるようで、調整するのに時間がかかりました。

・「 ” 」をひとつ入力漏れがあったのですが、エラーは最終行が74行目なのに75行目で以下の内容でしたので原因を特定するのに、かなり時間がかかりました。

/etc/named.conf:75: unexpected end of input

よかった点

・以前、取得ドメインをクラウドのサーバに割り当てたとき、なかなかうまくいかず設定変更しても 1 回ごとの設定反映まで数時間から数十時間かかっていたので、かなり時間がかかりました。今回は手動で更新したので早かったです。

・今回の検証でドメインの仕組みや設計について勉強になりました。

・名前解決できるとローカル環境でも管理が楽になりそうなので、他のサーバやリモート端末も登録してみようと思います。

 

コロナ影響でリモートアクセスする機会がかなり増えたので、いつでもどこからでも試したいことが試せる検証環境にしたいと思います。

 

multicast Domain Name System も気になるので、時間を作って試したいと思います。

お疲れさまでした。

最新情報をチェックしよう!

DNSの最新記事8件

>システム構築・保守に特化した会社です。

システム構築・保守に特化した会社です。

システムの構築・保守運用「システムガーディアン」 社内システム担当が欲しいが、専属で雇うほどの仕事量はない。 必要な時に必要なだけ頼りたいというお悩みを持つ企業様へ専門知識を持って対応を行っております。 サーバから各種システムまで自社・他社で構築されたシステムに対してサポートを行っております。

CTR IMG