DNSフルリゾルバbowlineの設計と実装(IIR Vol.68 第2章)
2025年12月12日 金曜日
CONTENTS
2025年12月に発行したIIJの技術レポート「IIR vol.68」の第2章、「DNSフルリゾルバbowlineの設計と実装」では、自社開発したDNSフルリゾルバ「bowline」の設計と実装について説明します。
本報告のポイント
IIJは自社開発したDNSフルリゾルバ「bowline」をオープンソースとして公開しています。実装言語はHaskellで、試験運用で安定性を確認している段階です。
bowlineは独自実装による運用制御性と耐障害性向上を目的とし、反復検索・キャッシュ・DNSSEC検証などISPでの運用に必要な機能を備えています。設計の特徴としては軽量スレッドを用いることでサーバを「受信器/送信器」「キャッシュ検索器」「反復検索器」に分離しています。キャッシュ検索はブロックされないことを保証し、また反復検索は多数の専用スレッドで並列化して性能を確保しています。反復検索では問い合わせ名最小化(RFC9156)を採用しプライバシーへ配慮しています。
DNSフルリゾルバに求められる要件やDNSSECの署名検証が伴う反復検索の具体的なアルゴリズム、実運用を考慮した注意点、またHaskellの軽量スレッドを前提にしたアーキテクチャに興味がある方は、ぜひご一読ください。
詳細な取り組みを紹介した、本レポートの全文はこちらからご覧いただけます。
Internet Infrastructure Review(IIR) vol.68(2025年12月発行)2章