DNS
■ DNSのラウンドロビン機能
以下のようにゾーンを定義したとする
www IN A 10.20.5.1
www IN A 10.20.5.2
www IN A 10.20.5.3
www IN A 10.20.5.4
www IN A 10.20.5.5
すると、DNSのラウンドロビンの機能を利用できる。
nslookupを実行すると
C:\>nslookup
Default Server: localhost
Address: 127.0.0.1
> www.example.co.jp …1回目の問い合わせ
Server: localhost
Address: 127.0.0.1
Name: www.example.co.jp
Addresses: 10.20.5.5, 10.20.5.4, 10.20.5.3, 10.20.5.2
10.20.5.1 …1回目の問い合わせ結果
> www.example.co.jp …2回目の問い合わせ
Server: localhost
Address: 127.0.0.1
Name: www.example.co.jp
Addresses: 10.20.5.4, 10.20.5.3, 10.20.5.2, 10.20.5.1
10.20.5.5 …2回目の問い合わせ結果
> www.example.co.jp …3回目の問い合わせ
Server: localhost
Address: 127.0.0.1
Name: www.example.co.jp
Addresses: 10.20.5.3, 10.20.5.2, 10.20.5.1, 10.20.5.5
10.20.5.4 …3回目の問い合わせ結果
と結果の順番がくるくる回る。
これにより、DNSを使用するアプリケーションはDNSラウンドロビン機能を使用できる。
たとえば、10.20.5.1が故障したとする。
運悪く、このwwwの名前解決にこのIPアドレスを引いてしまったアプリケーションは
接続エラーとなる。
このあと、再度他のIPアドレスにアクセスするかどうかはアプリケーションのつくりに依存する。
最近のブラウザの場合、接続エラーとなった場合、再度他のIPアドレスに自動で接続してくれるが
厳密に言えば、接続エラーを踏んでいるので、レスポンス(反応速度)は悪くなっている。
■ DNSのプライオリティ(優先度)
SMTPクライアント(MTA)は、MXレコードに登録されているホストを、プライオリティ順に接続を試みます。同じプライオリティの場合は(特に明確な理由がない限り)ランダムに順番を決定しないといけません。
(http://www.ietf.org/rfc/rfc2821.txt P.60付近を参照)
以下のようなケースの場合、
-----
MX 10 mail1.example.co.jp
MX 10 mail2.example.co.jp
MX 20 mail3.example.co.jp
-----
(1) mail1とmail2にアクセスが試みられる(どちらが先になるかはランダムで決定)
(2) mail3にアクセスが試みられる
という順に接続動作をすることになります。