第17章 ドメインネームシステム

第17章 ドメインネームシステム
DNS

IPアドレスとsymbolickな名前との写像
– インターネット全体にわたる写像をどう実現す
るか.
– 分散型データベース


平坦な名前空間
階層的な名前空間
平坦な名前空間

利点
– 名前が簡単、短い

欠点
– 大規模なシステムに合わない.
• 名前のconflict
• 一元管理
– 新たなマシンをつなぐたびに中央の認証が必要
– 更新…各サイトのコピーを正しくする
– トラフィックの集中
階層的な名前空間


権威を委任し、分割統治
分散データベース
– 協調して名前とIPアドレスの解決をする.
• ほとんどがローカルに解決
• インターネットへ出て行くのはわずか.
– 一つのサーバのダウンでシステムがだめにならない.
• Reliable

domain name server, name resolver
DNS databaseとUNIX filesystem
名前の読み方
名前の衝突
domain名とdirectory
複数domainに所属するノード
domain名とhost名
別名とcanonical name
Subdomain の管理
domainとzone
名前の解決
recursive and iterative

解決
– recurse
完全な解決
– non-recurse
部分的な解決
– domain name query
• 名前、型、マッピングのタイプ,recurse or not

サーバ
– query を受け取る.
– 自らがauthorityであれば返事をする.
– Else
• キャシュを見る.あればnon-authoritative answer
を返す.
• なければ他サーバに問い合わせる.


Clientはauthoritative answer がほしけれ
ば、改めて問い合わせればよい.
サーバを知る仕組み.
– ルートサーバを知っている.
– フォワーダが指定されている.
– キャッシュを持つ.

ClientはどうやってNSと通信するか.
– Well-known port + Ipaddress
– IP address … 組み込み、boot時
• /etc/resolv.conf
信頼性と能率
– secondary server
– キャッシュ

情報は変更が起きる.(一貫性の保持)
– TTL
• authoritative server が決める.
• ttl が expire すると廃棄する.
• 変更の多い名前には短いTTLを設定する.
キャッシュ

HOSTでもcacheできる.
– 実際にはやっていない.
– Networkをそのつど使わなくてもすむ.
– サーバの故障に対応できる.
– サーバの負荷を減らすことができる.
inverse query

逆引き.アドレスから名前への写像
– IPアドレス 15.16.192.152
in-addr.arpa domain
resource record
Nslookup, dig
brahms2% nslookup
Default Server: bach.net.is.uec.ac.jp
Address: 130.153.66.130
> uecisb.is.uec.ac.jp
Server: bach.net.is.uec.ac.jp
Address: 130.153.66.130
Non-authoritative answer:
Name:
uecisb.is.uec.ac.jp
Address: 130.153.64.130
> set q=ns
> is.uec.ac.jp
Server: bach.net.is.uec.ac.jp
Address: 130.153.66.130
Non-authoritative answer:
is.uec.ac.jp
nameserver = maekawa.maekawa.is.uec.ac.jp
is.uec.ac.jp
nameserver = uecisb.is.uec.ac.jp
is.uec.ac.jp
nameserver = uecisf.is.uec.ac.jp
Authoritative answers can be found from:
maekawa.maekawa.is.uec.ac.jp
internet address = 130.153.66.2
uecisb.is.uec.ac.jp
internet address = 130.153.64.130
uecisf.is.uec.ac.jp
internet address = 130.153.158.5
> set q=soa
> is.uec.ac.jp
Server: bach.net.is.uec.ac.jp
Address: 130.153.66.130
Non-authoritative answer:
is.uec.ac.jp
origin = uecisb.is.uec.ac.jp
mail addr = is-admin.is.uec.ac.jp
serial = 199904280
refresh = 3600 (1 hour)
retry = 900 (15 mins)
expire = 1080000 (12 days 12 hours)
minimum ttl = 3600 (1 hour)
Authoritative answers can be found from:
is.uec.ac.jp
nameserver = maekawa.maekawa.is.uec.ac.jp
is.uec.ac.jp
nameserver = uecisb.is.uec.ac.jp
is.uec.ac.jp
nameserver = uecisf.is.uec.ac.jp
maekawa.maekawa.is.uec.ac.jp
internet address = 130.153.66.2
uecisb.is.uec.ac.jp internet address = 130.153.64.130
uecisf.is.uec.ac.jp internet address = 130.153.158.5
> server uecisb.is.uec.ac.jp
Default Server: uecisb.is.uec.ac.jp
Address: 130.153.64.130
> ls -d is.uec.ac.jp
[uecisb.is.uec.ac.jp]
is.uec.ac.jp.
admin.is.uec.ac.jp.
(199904280 3600 900 1080000 3600)
is.uec.ac.jp.
NS
is.uec.ac.jp.
NS
is.uec.ac.jp.
NS
is.uec.ac.jp.
MX
is.uec.ac.jp.
MX
assoc-s-gw
MX
assoc-s-gw
A
uecisk
MX
uecisk
A
hol-gw
A
hol-gw
MX
uecisl
A
uecism
A
of1win
A
news
CNAME
SOA
uecisb.is.uec.ac.jp is-
uecisb.is.uec.ac.jp
uecisf.is.uec.ac.jp
maekawa.maekawa.is.uec.ac.jp
10
uecisb.is.uec.ac.jp
100 uecisf.is.uec.ac.jp
10
terminal.is.uec.ac.jp
130.153.210.1
10
uecisk.is.uec.ac.jp
130.153.64.145
130.153.208.1
10
terminal.is.uec.ac.jp
130.153.64.157
130.153.64.158
130.153.64.154
uecisb.is.uec.ac.jp
taka
NS
taka1.taka
A
taka
NS
utopia.taka
A
taka
NS
uecish
A
uecisi
A
uecisj
A
is.uec.ac.jp.
admin.is.uec.ac.jp. (199904280 3600
> exit
taka1.taka.is.uec.ac.jp
130.153.158.20
utopia.taka.is.uec.ac.jp
130.153.158.103
uecisb.is.uec.ac.jp
130.153.64.142
130.153.64.143
130.153.64.144
SOA
uecisb.is.uec.ac.jp is900 1080000 3600)
absolute and relative
uecisb.is.uec.ac.jp
uecisb.is.uec.ac.jp.←
/etc/resolv.conf
net.is.uec.ac.jp
補完をして探す.
named

BIND (Berkeley Internet Name Domain)
– /etc/named.boot
– directory
– DNS database
Bach1% cat /etc/resolv.conf
nameserver
130.153.66.130
domain
net.is.uec.ac.jp
bach2% cat /etc/named.boot
;
; primary server for net.is.uec.ac.jp
;
directory
/var/named
cache
.
named.ca
primary
localhost
local.zone
primary
0.0.127.in-addr.arpa
local.rev
primary
net.is.uec.ac.jpnet.is.uec.ac.jp
forwarders
130.153.64.130 130.153.66.2 130.153.158.5
xfrnets
130.153.0.0 172.21.0.0 192.168.0.0
bach3%