とりあえずの備忘録

主にパソコンやインターネットに関するメモ

BIND ドメインとサブドメインを設定する

BINDで「お名前.com」で取得した独自ドメインとサブドメインを設定したときのメモです。

ドメインの設定

IPアドレスが「192.168.0.23」のサーバーに、ドメイン「myserver.com」でもアクセス出来るようにする。

ネームサーバーとは?

インターネット上でのコンピュータの名前にあたるドメイン名を、住所にあたるIPアドレスと呼ばれる4つの数字の列に変換するコンピュータ。
個々のネームサーバは自分が管理するネットワークに接続されたコンピュータのドメイン名とIPアドレスの対応表を持っており、外部からの問い合わせに答える。
インターネットには無数のネームサーバが存在しており、ドメイン名に対応した階層構造になっている。最上位に位置するネームサーバは「ルートサーバ」と呼ばれ、全世界に13台が分散配置されている。
全世界のネームサーバが連携してドメイン名とIPアドレスを対応させるシステムを「DNS」(Domain Name System)と呼ぶため、ネームサーバは「DNSサーバ」とも呼ばれる。

http://e-words.jp/w/E3838DE383BCE383A0E382B5E383BCE38390.html

ネームサーバーを設定する

BINDの設定ファイル「named.conf」にマスターのネームサーバーを追加する。

#vi /etc/named.conf

↓追加す
zone "myserver.com" {
  type master;
  file "/var/named/myserver.com.db";
};

ゾーンファイルを作成する

ゾーンファイルを作成してネームサーバーの動作を記述する。

#vi /var/named/myserver.com.db

↓記述す
$TTL 14400
@ IN SOA ns1.myserver.com. root.myserver.com. (
    2008111401
    14400
    7200
    3600000
    86400 )
  IN A 192.168.0.23
  IN NS ns1.myserver.com.
  IN NS ns2.myserver.com.
  IN MX 0 mail.myserver.com.
ns1 IN A 192.168.0.23
ns2 IN A 192.168.0.23
mail IN A 192.168.0.23
www IN CNAME myserver.com.
blog IN CNAME www

ゾーンファイルの中身について

@ IN SOA ns1.myserver.com. root.myserver.com.
  • myserver.comのマスターネームサーバーは、ns1.myserver.com
  • 管理者のメールアドレスは、root@myserver.com
IN A 192.168.0.23
  • myserver.comのIPアドレスは、192.168.0.23
IN NS ns1.myserver.com.
IN NS ns2.myserver.com.
  • myserver.comのネームサーバーは、ns1.myserver.comとns2.myserver.com
  • ns2はスレーブのネームサーバーで、マスターの予備なので本当は別マシンにしたい
IN MX 0 mail.myserver.com.
  • ユーザー名@myserver.com宛メールは、mail.myserver.comへ転送
www IN CNAME myserver.com.
  • www.myserver.comは、myserver.comの別名

BINDを再起動する

BINDを再起動して設定を反映させる。

# ps -ef | grep name
# kill -HUP 1016

namedのプロセスIDを調べて、killコマンドで再起動する。

ネームサーバーを反映させる

独自ドメインを取得した「お名前.com」にネームサーバーを登録する。

ネームサーバーのホストとIPアドレスを登録する。
f:id:notei:20180714080806j:plain

myserver.comに対するIPアドレスの問い合わせを答えるネームサーバーを登録する。
f:id:notei:20180714080814j:plain

登録後しばらく時間が経過(数分~数日)すると、インターネット全体にこの情報が行き渡る。

動作確認

ブラウザで「www.myserver.com」を開くと、対応するIPアドレスを問い合わせに行く。
それを答えるネームサーバーは、「ns1.myserver.com(192.168.0.23)」だと通知する。
今回設定したネームサーバーへ問い合わせに来るので、対応するIPアドレスを答える。

サブドメインの設定

ドメインが「myserver.com」、WEBサーバーが「www.myserver.com(IPアドレス:192.168.0.1)」で動作しているマシンに、サブドメインを設定する。

DNSとは?

インターネット上のホスト名とIPアドレスを対応させるシステム。全世界のDNSサーバが協調して動作する分散型データベースである。IPアドレスをもとにホスト名を求めたり、その逆を求めたりすることができる。
インターネット上で運用されているDNSサーバのほとんどは、カリフォルニア大学バークリー校(UCB)で開発されたBINDである。

http://e-words.jp/w/DNS-2.html

ゾーンファイルの場所を調べる

BINDの設定ファイル「named.conf」を開いて確認する。

# cat /etc/named.conf

↓中
zone "myserver.com" {
  type master;
  file "/var/named/myserver.com.db";
};

「myserver.com」のゾーンファイルが「/var/named/myserver.com.db」だと分かる。

ゾーンファイルを編集する

例、別のマシン「192.168.0.2」に対して、サブドメイン「ftp.myserver.com」を設定する。

#vi /var/named/myserver.com.db

↓最後の行にAレコードを追
www IN A 192.168.0.1
ftp IN A 192.168.0.2

例、同じマシン(ホスト名www)に対して、サブドメイン「blog.myserver.com」を設定する。

#vi /var/named/myserver.com.db

↓最後の行にCNAMEレコードを追
www IN A 192.168.0.1
blog IN CNAME www

SOAレコードを編集して内容を反映させる

SOAレコードの最初の数字を部分を、前回よりも大きな数字にする。基本的に「日付+連番」の形式。

@ IN SOA ns1.myserver.com. root.myserver.com. (
  2008111402
  14400
  7200
  3600000
  86400 )

ここでは「2008111401」を「2008111402」に変更。

BINDを再起動する

BINDを再起動して設定を反映させる。

# ps -ef | grep name
# kill -HUP 1016

namedのプロセスIDを調べて、killコマンドで再起動する。

3分間DNS基礎講座

3分間DNS基礎講座