# coredns/coredns

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/coredns-coredns).**

14,109 stars · 2,469 forks · Go · Apache-2.0

## Links

- GitHub: https://github.com/coredns/coredns
- Homepage: https://coredns.io
- awesome-repositories: https://awesome-repositories.com/repository/coredns-coredns.md

## Topics

`cncf` `coredns` `dns-server` `go` `plugin` `service-discovery`

## Description

CoreDNS is a modular domain name system server designed for cloud-native environments. It functions as a flexible DNS resolver and forwarder that manages network traffic by routing queries based on zone-based rules and authoritative data. The server is built to integrate with service discovery systems, enabling it to map service names to network addresses within containerized infrastructure.

The project is defined by a plugin-based request pipeline that allows for the extension of server functionality through custom modules. These plugins can intercept, modify, or log network requests in real time, providing a mechanism to tailor the server to specific routing or resolution requirements. Configuration is handled through a declarative format that supports snippet reuse and environment variable injection, allowing for consistent settings across complex deployments.

Beyond core resolution and forwarding, the server provides comprehensive operational visibility through standardized metric instrumentation, traffic logging, and health monitoring endpoints. It supports standard zone file serving and recursive lookups, ensuring compatibility with both local records and upstream resolvers. The software is distributed as a container-ready binary, including the necessary components for encrypted transport and secure network communication.

## Tags

### Networking & Communication

- [DNS Servers](https://awesome-repositories.com/f/networking-communication/dns-servers.md) — Implements a modular DNS server that uses plugin chains to handle resolution, service discovery, and traffic routing.
- [Modular DNS Servers](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-infrastructure-configuration/network-and-server-infrastructure/domain-name-system-services/modular-dns-servers.md) — Operates a flexible domain name system that uses modular plugins to handle complex routing and request processing.
- [DNS Resolution](https://awesome-repositories.com/f/networking-communication/dns-resolution.md) — Relays network requests to upstream recursive resolvers using domain-specific routing rules. ([source](https://coredns.io/manual/toc))
- [DNS Services](https://awesome-repositories.com/f/networking-communication/dns-services.md) — Retrieves address information from local files or service discovery systems to respond to DNS queries. ([source](https://coredns.io/manual/toc))
- [Recursive DNS Resolvers](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-infrastructure-configuration/network-infrastructure/recursive-dns-resolvers.md) — Functions as a flexible DNS resolver that integrates with service discovery to translate domain names in cloud-native environments. ([source](https://coredns.io/manual/toc))
- [Middleware-Based Request Pipelines](https://awesome-repositories.com/f/networking-communication/communication-protocols-architectures/request-processing-architectures/request-processing/middleware-based-request-pipelines.md) — Processes network queries through a chain of pluggable handlers that intercept and modify traffic.
- [DNS Query Routers](https://awesome-repositories.com/f/networking-communication/dns-query-routers.md) — Routes DNS queries to upstream resolvers or local zones using a configurable pipeline of functional modules.
- [Zone-Based Routing](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-infrastructure-configuration/network-and-server-infrastructure/domain-name-system-services/domain-based-routing/zone-based-routing.md) — Directs incoming DNS queries to specific server configurations by matching domain names against defined authoritative zones.
- [Request Routing](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-routing-traffic-management/request-routing.md) — Directs incoming DNS requests to specific server configurations based on domain name matching rules. ([source](https://coredns.io/manual/toc))
- [Network Traffic Routing](https://awesome-repositories.com/f/networking-communication/network-traffic-routing.md) — Directs domain name queries to specific upstream resolvers or local records to manage private network traffic.

### DevOps & Infrastructure

- [Kubernetes Service Discovery](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/cluster-service-orchestration/kubernetes-service-discovery.md) — Provides native service discovery for containerized environments by mapping service names to network addresses within clusters.
- [Containerized Deployments](https://awesome-repositories.com/f/devops-infrastructure/containerized-deployments.md) — Packages the server as a lightweight container image for consistent deployment. ([source](https://coredns.io/manual/toc))
- [Reusable Configuration Blocks](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/configuration-distribution-and-sharing/reusable-configuration-blocks.md) — Supports importing shared configuration blocks to minimize duplication across server definitions. ([source](https://coredns.io/manual/toc))

### Software Engineering & Architecture

- [Modular Plugin Architectures](https://awesome-repositories.com/f/software-engineering-architecture/modular-plugin-architectures.md) — Extends core server functionality through a modular architecture that loads custom components at runtime.
- [Declarative Configuration](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/configuration-sourcing-and-binding/declarative-configuration.md) — Defines server behavior and plugin sequences using structured, human-readable configuration files.
- [Plugin Execution Engines](https://awesome-repositories.com/f/software-engineering-architecture/plugin-execution-engines.md) — Executes sequences of functional modules to transform or respond to network queries. ([source](https://coredns.io/manual/toc))
- [Environment Variable Injection](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/environment-variable-management/environment-variable-injection.md) — Substitutes system environment variables into configuration files at runtime to manage dynamic settings. ([source](https://coredns.io/manual/toc))

### Development Tools & Productivity

- [Plugin Development Kits](https://awesome-repositories.com/f/development-tools-productivity/plugin-development-kits.md) — Extends server functionality by creating and chaining custom modules to intercept and modify network requests. ([source](https://coredns.io/manual/toc))

### System Administration & Monitoring

- [Server Network Configurations](https://awesome-repositories.com/f/system-administration-monitoring/administrative-operations/linux-system-administration/networking/server-service-binding/server-network-configurations.md) — Configures authoritative zones, listening ports, and communication protocols via modular files. ([source](https://coredns.io/manual/toc))
- [Monitoring and Observability](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability.md) — Exposes standardized metrics and health data to provide visibility into DNS query performance and server operational status.
- [Server Metrics](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/observability-platforms/metric-performance-monitors/server-metrics.md) — Exposes internal server performance and health metrics through standardized namespaces for operational observability.
- [Health Monitoring Endpoints](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/observability-platforms/operational-health-alerting/health-monitoring-endpoints.md) — Exposes network endpoints that report operational status and readiness for use in load balancing and orchestration. ([source](https://coredns.io/manual/toc))

### Data & Databases

- [Zone File Readers](https://awesome-repositories.com/f/data-databases/file-storage-management/zone-file-readers.md) — Reads standard domain record files to provide authoritative responses for specific domains. ([source](https://coredns.io/manual/toc))
