今回から2回にわたり、IETFの活動のうち、DNSプロトコルについての標準化動向を取り上げる。まずは今回、これまでの標準化の経緯とワーキンググループ（WG）の構成について述べ、dprive WG、dnssd WG、dane WGを紹介する。

DNSプロトコル標準化の歴史

DNSは1987年に発行されたRFC 1034、RFC 1035が有効であり、30年以上使い続けられている非常に古いプロトコルである。古いプロトコルではあるが、新しいアプリケーションへの対応や攻撃への対策、性能・機能向上などのためにさまざまな拡張が行われてきた。拡張の場合には、従来のプロトコルとの互換性が最大限考慮されている。

初期にはドメイン名からIPアドレスへの対応付け（Aリソースレコード）やメールの配送（MX）、逆引き（PTR）が主なアプリケーションであったが、IPv6アドレスへの対応（AAAA、RFC 1886、1995年）やサービスロケーションの指定（SRV、RFC 2052/2782、1996年）などの新しいアプリケーションへの拡張が行われた。SRVは、IP電話で使用されるSIPや、サービスディスカバリで使用される。

1990年代後半にはインターネットの急速な普及に対応するため、差分ゾーン転送（IXFR、RFC 1995、1996年）、ゾーンの更新通知（NOTIFY、RFC 1996、1996年）、動的更新（Dynamic Update、RFC 2136、1997年）といった機能が追加された。また、DNSSECやIPv6に対応するため、512バイトを超えるメッセージサイズをUDPで扱えるようにし、フラグや応答コードも拡張したEDNS0（RFC 2671→RFC 6891、1999年）も標準化された。1994年から2008年にかけて標準化されたDNS Security Extensions（DNSSEC、RFC 4033/4034/4035/5011/5155など）は、DNSに電子署名を付加し、改ざん検知機能を追加した。

2008年以降にはDNSSECの普及に必要な拡張や攻撃対策のための拡張が行われた。例えば、2009年にはキャッシュ汚染攻撃対策技術のまとめと、ソースポートランダマイゼーションの実装を勧めるRFC 5452が発行されている。また、DNS/UDPの攻撃耐性を上げるため、DNSクエリに64ビットのCookieを添付、サーバーがそのCookieを応答にコピーし、送信Cookieと受信Cookieが異なる場合には異常とするDNS Cookiesが標準化され、RFC 7873として2016年に発行された。

また、2013年には、単一リンク内のみで最小限の設定で動作するDNSライクな名前解決機能を提供するMulticast DNSが標準化された。Multicast DNSは、2003年ごろにDNSプロトコル拡張を担当するdnsext WGでの標準化が提案されたが、WGに提出されたAppleの提案とMicrosoftの提案は双方とも企業が開発したプロトコルがベースとなっていたことと、インターネットで使用するプロトコルではないために、dnsext WGでは扱われなかった。そのあと2008年に、AppleのプロトコルをベースとしたMulticast DNSがIETFのWG以外からの標準化としてIESGに提出され、2013年に標準化された。

このMulticast DNSの仕様の一部に特定のプロトコルで使用されるTLDの予約方法と.local TLDの予約が含まれていたことから、dnsext/dnsop関係者が気付きにくいかたちで標準化が進み、RFC 6761として発行された。