お恥ずかしながら全部Aレコードにしてました。が、ちょっと調べてみてやっとわかったのでwメモ。
参考URL
http://ascii.jp/elem/000/000/458/458858/
http://d.hatena.ne.jp/japanrock_pg/20090410/1239355230
ドメイン名とIPの関係
ドメイン名:IPアドレス = 1:n
dig
コマンドで私のドメイン makei.nu を調べてみると
~
[pharaohkj]$ dig makei.nu
略
;; ANSWER SECTION:
makei.nu. 1800 IN A 49.212.145.XX
makei.nu = 49.212.145.XX とわかる。が実は
「ドメイン:IPアドレス」 は 「1:1」 ではない。dig
で
google.comを調べてみる。
~
[pharaohkj]$ dig google.com
略
;; ANSWER SECTION:
google.com. 2 IN A 173.194.117.230
google.com. 2 IN A 173.194.117.227
google.com. 2 IN A 173.194.117.238
google.com. 2 IN A 173.194.117.231
google.com. 2 IN A 173.194.117.233
google.com. 2 IN A 173.194.117.228
google.com. 2 IN A 173.194.117.224
google.com. 2 IN A 173.194.117.229
google.com. 2 IN A 173.194.117.232
google.com. 2 IN A 173.194.117.225
google.com. 2 IN A 173.194.117.226
google.com = 173.194.117.230と同.227と・・・たくさん
つまり、 ドメイン名:IPアドレス = 1:n
IPアドレス:ドメイン名 = 1:n
それじゃあその逆は?というと次はdig
で 11ya.net を調べてみるとVirtualHostnameベースで運用しているので、IPアドレス1つにいろんな名前がついている。
~
[pharaohkj]$ dig 11ya.net
略
;; ANSWER SECTION:
11ya.net. 120 IN A 49.212.145.XX
これは makei.nu と同じIPアドレスである。
49.212.145.XX = makei.nuと11ya.netと・・・たくさん
つまり、 IPアドレス:ドメイン名 = 1:n
Aレコード
Aレコードはドメイン名と対応するIPアドレスを ドメイン名:IPアドレス = 1:n で定義する。
同じIPと別ドメイン名を並べて定義すれば IPアドレス:ドメイン名 = 1:n できる。
CNAMEレコード
CNAMEレコードはすでにAレコードで定義されてるドメイン名と別名を定義する。なのでここは ドメイン名:参照ドメイン名 を書くことで IPアドレス:ドメイン名 = 1:n を定義することができる。
だから違いは
Aレコードは本来のドメイン名とIPの関係を定義。CNAMEはドメイン名と別ドメイン名をつけることができる。