Back to blog
DNS & Networks August 20, 2026

How to Resolve Cannot Resolve Hostname Connection Errors

How to Resolve Cannot Resolve Hostname Connection Errors

In distributed systems, application components must continually resolve hostnames (like api.stripe.com or db.internal.net) to establish connections. If this lookup fails, your application will throw errors like cannot resolve hostname, EAI_AGAIN in Node.js, or UnknownHostException in Java.

These failures indicate that your system resolver cannot translate the human-readable domain name into an IP address.

If you are asking: How do I resolve cannot resolve hostname connection errors? This guide covers diagnosing DNS issues with terminal tools, flushing DNS caches, resolving Docker network isolation bugs, and setting up automated monitors.


1. Isolating the DNS Resolution Failure

When your application encounters a hostname failure, you must determine whether the issue lies in your local server network, your external DNS provider, or the domain configuration itself.

Test the Local Resolver

Run nslookup (or dig) to check if your server's default DNS server can resolve the hostname:

nslookup api.example.com

Bypass Local Resolvers

To test if your server's configured DNS provider is failing, query public DNS resolvers (Google DNS at 8.8.8.8 or Cloudflare DNS at 1.1.1.1):

nslookup api.example.com 8.8.8.8
  • If the bypass succeeds but the local test fails: Your server's local nameserver is offline or misconfigured.
  • If both tests fail: The domain name itself is unregistered, has expired, or lacks correct routing records.

2. Flushing Local DNS Resolvers

System resolvers cache DNS queries locally to reduce network lookups. If a DNS record is updated, servers may continue trying to connect to the outdated IP address until the cache TTL (Time to Live) expires.

Flush the DNS cache across different operating systems:

  • Linux (Systemd-Resolved):
    sudo resolvectl flush-caches
    
  • Windows (Command Prompt):
    ipconfig /flushdns
    
  • macOS:
    sudo killall -HUP mDNSResponder
    

3. Troubleshooting Hostname Failures in Docker

A common source of hostname errors in containerized architectures is Docker's internal DNS resolver. Containers inside a custom bridge network use Docker’s internal resolver at 127.0.0.11 to resolve container names.

If a container cannot reach external hostnames, execute a test from inside the container:

docker exec -it my-running-container getent hosts api.stripe.com

If it fails to resolve, configure public fallback DNS servers in your host's /etc/docker/daemon.json file:

{
  "dns": ["1.1.1.1", "8.8.8.8"]
}

Restart the Docker daemon to apply changes:

sudo systemctl restart docker

4. Key DNS Record Types to Audit

When publishing new endpoints, ensure the authoritative DNS zone contains the correct records. The table below lists the essential DNS records to audit:

Record TypeTarget ContentVerification Purpose
AIPv4 address (e.g., 192.0.2.1)Maps a hostname directly to a physical server.
AAAAIPv6 address (e.g., 2001:db8::1)Maps a hostname to an IPv6 server node.
CNAMEHostname alias (e.g., lb.aws.com)Points your subdomains to external load balancer endpoints.
NSNameserver host (e.g., ns1.provider.com)Identifies the servers hosting your zone records.

Inspect your domain's live records using the dig utility:

dig api.example.com A

5. Persistent DNS Auditing with Pingzo

DNS errors are difficult to capture because they are often regional. A DNS lookup might succeed in your local office but fail for customers in Europe due to nameserver replication latency or registrar locks.

Pingzo helps prevent these silent errors with dedicated DNS monitors:

  • Multi-Region Resolvers: Pingzo queries your domain records from global vantage points, ensuring DNS resolution works worldwide.
  • Nameserver Health Audits: Pingzo alerts you instantly if a nameserver drops connections or returns invalid IP mappings.
  • WhatsApp Outage Alerts: If your DNS records expire or drop, Pingzo routes a critical alert to your WhatsApp chat thread, allowing you to resolve registrar issues before your site goes offline.
Try Pingzo Free

Know before your users do

Connect official WhatsApp notification channels, Discord webhooks, Telegram bots, and public status pages. Start in 30 seconds.

Create Free Monitor