The openshift/coredns repository is an OpenShift-specific fork of CoreDNS, a DNS server and forwarder written in Go that uses a plugin-based architecture. CoreDNS is a Cloud Native Computing Foundation graduated project designed to provide flexible DNS functionality through chainable plugins, where each plugin performs specific DNS operations. The primary purpose of this repository is to maintain CoreDNS integration and customization for OpenShift environments, particularly for Kubernetes-based service discovery and container orchestration.
CoreDNS supports multiple DNS transport protocols including traditional UDP/TCP, DNS over TLS (DoT) per RFC 7858, DNS over HTTP/2 (DoH) per RFC 8484, DNS over QUIC (DoQ) per RFC 9250, and gRPC. This multi-protocol support makes it suitable for modern cloud-native deployments with varying security and performance requirements. The server can be configured through a Corefile configuration file that supports environment variable substitution and file imports using glob patterns.
The repository demonstrates significant functionality across DNS operations. It can serve zone data from files with DNSSEC support, act as a secondary server through AXFR zone transfers, perform on-the-fly DNSSEC signing, implement response load balancing, and function as a primary server with zone transfer capabilities. CoreDNS can automatically load zone files from disk, cache DNS responses, use etcd as a backend for distributed configurations, and integrate with Kubernetes as a backend for service discovery. It also supports proxying queries to other nameservers, providing Prometheus metrics, query and error logging, cloud provider integration such as Route53, and DNS query rewriting capabilities.
According to GitGenius activity tracking, this repository shows extended response latencies with a median issue and pull request response time of 24689.1 hours and a mean of 31980.1 hours, indicating slower engagement cycles. The most active issue labels tracked include tide/merge-blocker appearing in 5 items, with lifecycle/rotten and lifecycle/stale each appearing once, suggesting some issues may experience extended periods without resolution. Primary triagers and contributors tracked by GitGenius include jmguzik and sebrandon1, each with one recorded event. The repository shares overlapping contributors with openshift/installer, openshift/node-problem-detector, and openshift/descheduler, indicating collaborative development patterns across OpenShift infrastructure components.
The repository is classified across multiple domains including container orchestration, Kubernetes integration, service discovery, plugin architecture, name resolution, software-defined networking plugins, networking, cloud-native technologies, network automation, high availability, load balancing, DNS proxying, and configuration management. These classifications reflect CoreDNS's role as a foundational networking component in containerized and Kubernetes environments.
Compilation is straightforward, requiring Go 1.24.0 or higher and supporting both direct compilation via make and Docker-based builds. The project includes a deprecation policy that spans three releases to maintain backward compatibility during breaking changes, demonstrating commitment to stable upgrades. Security is prioritized with third-party audits conducted by Cure53 in March 2018 and Trail of Bits in March 2022, with a dedicated security reporting process directing vulnerabilities to [email protected] rather than public issue tracking.