30 open-source projects similar to miekg/dns, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
Hickory-DNS is a DNS implementation written in Rust that provides a full suite of DNS capabilities: a client library for querying and constructing DNS messages, a recursive resolver with caching, an authoritative DNS server, and support for DNSSEC validation and signing. It can operate as a DNS-over-TLS (DoT) and DNS-over-HTTPS (DoH) client, and includes a multicast DNS (mDNS) implementation for local network discovery without a central server. The project differentiates itself through its integrated DNSSEC pipeline, which validates signatures by chaining from a root trust anchor and can auto
DnsServer is a recursive and authoritative DNS server that provides domain name resolution and zone hosting. It functions as both a recursive resolver, performing iterative lookups across the internet, and an authoritative manager for primary and secondary DNS zones. The system distinguishes itself through high-availability clustering and a programmable HTTP API for automating server configurations and bulk record management. It supports a wide range of encrypted transport protocols, including TLS, HTTPS, and QUIC, and allows for custom functionality via a plugin-based request interception fr
Fasthttp is a high-performance networking framework for Go, designed to maximize throughput and minimize memory overhead in demanding web applications. It functions as a specialized HTTP server and client library that prioritizes efficient resource management, allowing developers to build scalable services capable of handling massive concurrent traffic with minimal garbage collection pressure. The library distinguishes itself through a focus on zero-allocation processing and low-level optimization. It achieves this by recycling temporary request and response objects through managed pools and
Fortio is a performance testing tool written in Go that generates constant request rates to measure latency histograms and response percentiles. It functions as a network performance benchmarker for analyzing system performance across HTTP and gRPC endpoints, and includes a specialized HTTP echo server for mirroring requests. The project distinguishes itself through a web-based HTTP load testing API used for triggering asynchronous tests and visualizing result data through graphs. It also provides server behavior simulation, allowing the echo server to inject artificial delays and vary respon
dnsproxy is an encrypted DNS proxy and traffic router that translates and forwards DNS requests between clients and upstream resolvers. It functions as a server for multiple secure protocols, including DNS-over-HTTPS, DNS-over-TLS, DNS-over-QUIC, and DNSCrypt, to protect queries from eavesdropping and tampering. The project differentiates itself through advanced routing and optimization capabilities. It utilizes a domain-based routing engine to direct queries to specific upstream servers via wildcard rules and employs parallel querying to return responses from the fastest responding network a
DNSControl is an infrastructure-as-code tool designed to manage DNS records and zones across multiple providers through a unified, programmable configuration language. By treating DNS as code, it enables teams to maintain consistent infrastructure state, automate record updates, and perform version-controlled management of network settings across diverse cloud, registrar, and network DNS services. The system functions as a multi-provider orchestrator that uses a declarative reconciliation engine to compare local configurations against live remote states. It employs a provider-agnostic abstrac
Unbound is a DNS resolver that functions as a caching, recursive, and validating server. It translates domain names into IP addresses by performing independent lookups across the internet or by forwarding queries to external resolvers. The project distinguishes itself as a programmable DNS server, offering a Python scripting interface and dynamic shared-library loading to customize the resolution pipeline. It also serves as a DNS64 NAT64 gateway, synthesizing IPv6 addresses from IPv4 records to enable communication for IPv6-only clients. The system includes security frameworks for DNSSEC cry
OkHttp is an HTTP client for the JVM and Android that enables network communication via synchronous and asynchronous requests. It provides a core identity as a comprehensive networking toolkit featuring a WebSocket client for bidirectional data synchronization, a TLS security toolkit for encrypted communication, and a programmable HTTP mock server for simulating backend responses. The project distinguishes itself through a specialized security and performance architecture. It implements mutual TLS, certificate pinning, and DNS over HTTPS to secure data in transit, while utilizing connection p
Command-line tool and library for Windows remote command execution in Go
Package for downloading things from a string URL using a variety of protocols.
gopacket is a Go library for live packet capture and multi-layer protocol decoding. It provides a framework for parsing raw network bytes into structured protocol layers, enabling inspection and analysis of network traffic directly from interfaces or packet capture files. The library distinguishes itself through a layered protocol stack that organizes decoders as independent, composable layers, and an interface-based decoder registry that supports extensible custom protocol development. It offers zero-copy packet decoding for high-throughput parsing, stream-based TCP reassembly to reconstruct
httplab is an interactive HTTP mock server, request inspection tool, and response simulator. It functions as a web server designed to capture and analyze incoming HTTP requests and headers in real time for debugging purposes. The tool enables the construction and delivery of custom HTTP responses to simulate various server behaviors. Users can forge specific headers and bodies to test how client applications handle different status codes and payloads, with the ability to save these configurations as response templates for consistent reuse across sessions. The project covers a broad surface o
This project is a Go library and framework for implementing the SSH protocol. It provides a toolkit for building custom SSH servers, managing encrypted connections, and handling remote command execution. The implementation focuses on flexible session management through callback-based handling and a pluggable authentication system that supports passwords, public keys, and certificates. It includes mechanisms for secure network tunneling, including local and reverse port forwarding for TCP and Unix domain socket traffic. The library covers a broad range of protocol capabilities, including cryp
Gmqtt is a flexible, high-performance MQTT broker library that fully implements the MQTT protocol V3.x and V5 in golang