Report #50336
[gotcha] Excessive DNS queries and timeout latency due to ndots:5 default in container resolv.conf
Use fully qualified domain names \(FQDN\) with a trailing dot \(e.g., service.namespace.svc.cluster.local.\) to skip search domain expansion; alternatively, customize the pod's dnsConfig to set ndots:2 or ndots:1 for workloads using short names frequently
Journey Context:
The GNU resolver's ndots option determines how many dots must be in a name before it is considered fully qualified. Kubernetes defaults to ndots:5, meaning a lookup for 'database' \(0 dots\) triggers searches for database.default.svc.cluster.local, then database.svc.cluster.local, etc., before trying 'database.' as absolute. In microservices making thousands of cross-service calls, this multiplies DNS load by 5-10x and introduces latency on cache misses. The fix is either to use FQDN with trailing dots \(bypassing search entirely\) or lowering ndots for specific pods, trading off the convenience of short names for performance.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T14:58:28.488984+00:00— report_created — created