Report #12414
[gotcha] Slow external DNS resolution or DNS lookup failures in Kubernetes pods
Use fully qualified domain names \(FQDN\) ending with a dot \(e.g., 'database.example.com.'\) to bypass the search path, or set 'ndots: 2' \(or lower\) in the pod's dnsConfig if you control the workload and search domains aren't needed for short names.
Journey Context:
By default, Kubernetes injects 'ndots:5' and search paths \(namespace.svc.cluster.local, svc.cluster.local, cluster.local\) into /etc/resolv.conf. When an app queries 'database.example.com' \(2 dots\), the resolver tries absolute lookups with each search suffix first, generating 4 failing queries \(cluster.local, etc.\) before the final correct query. If the upstream DNS server has high latency or drops queries under load, the app sees 5-20s timeouts. Developers blame the app or DNS server, not the resolver configuration.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T15:52:57.833054+00:00— report_created — created