BIND

提供: Wikinote
2009年5月10日 (日) 14:13時点におけるHagio (トーク | 投稿記録)による版 (UDP と TCP)

移動: 案内検索

動作・仕様

UDP と TCP

DNS の通信には、通常 UDP が用いられる。

ただし、UDP データグラムが 512 バイト[1]
  1. を超えるような通信 (応答) が必要となった場合、TCP による通信が行われる。
    1. クライアントは UDP にてクエリをサーバへ送信する。
    2. (512 バイトを超える場合) サーバは UDP にて、ヘッダ部の TC ビットを 1 にセットした回答をクライアントへ送信する。
    3. クライアントは、TCP にてサーバへ接続し、クエリを送信する。
    4. サーバは、回答をクライアントへ送信する。
    したがって、iptables などでパケットをフィルタリングしている場合、UDP/TCP ともに 53 番ポートを通す必要がある。

    EDNS0

    BIND 8.3 以降、BIND 9 以降は EDNS0 (Extension Mechanisms for DNS version 0) に対応している。