⌂ Home

CoreDNS Deep Dive

Architecture, Corefile, Plugins, and Troubleshooting

Architecture

CoreDNS is the cluster DNS server. The kubelet programs each Pod’s /etc/resolv.conf so application DNS queries reach the cluster DNS Service. CoreDNS Pods usually run in kube-system and are exposed through the kube-dns Service (ClusterIP is commonly 10.96.0.10 on kubeadm-style clusters—yours may differ).

Resolution path: workload → OS resolver → cluster DNS Service → CoreDNS Pod → kubernetes plugin answer, or forward to upstream resolvers.
Pod getaddrinfo /etc/resolv.conf nameserver + search ndots:5 Service kube-dns ClusterIP (e.g. 10.96.0.10) UDP/TCP :53 CoreDNS Pod kube-system Answer Upstream