DNSの拡張機能として定義されている「EDNS0」について説明する。
EDNS0(Extension Mechanisms for DNS version 0)はDNSの拡張機能であり、RFC 6891で定義されている。EDNS0を利用することによって、512バイトよりも大きいDNSメッセージをUDPで送受信可能になる。
当初のDNSの仕様(RFC 882)で定義され、RFC 1035に引き継がれたUDPにおけるDNSメッセージサイズの512バイト制限は、当時のネットワークの信頼性や制約を考慮した上で設定されたものである。
しかし、DNSSECの登場やIPv6の導入などにより、メッセージの増大に伴うUDPメッセージサイズのオーバーフローと、オーバーフローした場合に実行されるTCPフォールバックの高いオーバーヘッド(512バイトの壁)が問題として顕在化してくるようになった。EDNS0は、このUDPにおける512バイトの壁という問題を解決するために標準化された。
EDNS0の利用には、送信側と受信側双方の対応が必要であり、経路上のネットワーク機器においても、512バイト以上のDNSメッセージが通過できるように設定されている必要がある。
Copyright © ITmedia, Inc. All Rights Reserved.