How Rust and Wasm power Cloudflare's 1.1.1.1

This post details the development of BigPineapple, a new Rust-based recursive DNS resolver for Cloudflare's 1.1.1.1 service, replacing the previous Knot Resolver. It addresses limitations in Knot Resolver's Lua plugin system, I/O blocking, cache efficiency, and module isolation. BigPineapple utilizes Rust's async runtime (tokio) for non-blocking I/O and work-stealing, a redesigned module system for better isolation, and a component-based architecture (server, worker, cache, recursor, conductor, sandbox) for improved performance and maintainability. Key improvements include an updated I/O architecture with a "frame" abstraction for unified protocol handling and a conductor component for intelligent upstream nameserver selection and connection management.
More from the DNS Infrastructure & Naming Conventions trail
- The keys to the Internet change on October 11, 2026. Are you ready?
- 1.1.1.1 now supports post-quantum DNSSEC, all 2,420 bytes of it
- How we saved 100 terabytes of memory by optimizing 1.1.1.1’s DNS cache
- BGP ORIGIN attribute manipulation and its impact on the Internet
- Cloudflare Internal DNS is now generally available