DEV Community

DevCorner2
DevCorner2

Posted on

🌐 How Does Your Browser Know the IP Address of a DNS Server?

Have you ever wondered what actually happens when you type a website like example.com into your browser? Most people know that your browser needs to find the IP address of that website — and to do that, it uses something called DNS (Domain Name System). But a curious question arises:

How does your computer know the IP address of the DNS server in the first place?

Let’s dive into the full journey — step-by-step — to understand how this works.


🧭 The Big Picture: How Your Browser Resolves Domain Names

Here’s the high-level flow of what happens when you type a domain name into your browser:

  1. You type example.com in the browser.
  2. The browser asks the operating system for the IP address of example.com.
  3. The OS checks:
  • Browser cache
  • System DNS cache
  • Hosts file (manual overrides)
  • If not found, it queries a DNS server.

That leads us to the real question…


🤔 But Wait — How Does Your OS Know Which DNS Server to Ask?

The IP address of the DNS server is preconfigured in your system, and it doesn’t come from the browser. Instead, it’s typically provided by your network setup — specifically via something called DHCP.


🛠️ How Your Device Gets the DNS Server IP

1. Automatically via DHCP (Most Common)

When you connect to a network (e.g., home Wi-Fi, mobile hotspot, office LAN), your device contacts the DHCP server — usually your router. The DHCP server gives your device:

  • A local IP address (e.g., 192.168.0.10)
  • Subnet mask
  • Default gateway (e.g., the router IP)
  • DNS server IP addresses

The DNS server IPs might be:

  • Your router itself (e.g., 192.168.0.1), which then forwards to public DNS servers
  • Directly set to public DNS servers like:

    • Google DNS: 8.8.8.8, 8.8.4.4
    • Cloudflare: 1.1.1.1, 1.0.0.1
    • OpenDNS: 208.67.222.222, 208.67.220.220

2. Manually Configured DNS

Advanced users or system administrators sometimes manually set the DNS IPs on devices. This can be done in:

  • System network settings
  • Router configuration
  • VPN settings

📲 The Browser’s Role: It Doesn’t Talk to DNS Directly

It’s important to understand that your browser doesn’t directly know or care about the DNS server’s IP. It simply delegates domain resolution to the operating system, which then handles the DNS query using the pre-configured DNS server(s).


❌ What Happens If DNS Server IP Is Wrong or Unreachable?

If your DNS server:

  • Is misconfigured
  • Doesn’t respond
  • Is blocked by a firewall
  • Or just doesn’t exist

Then DNS resolution will fail, and your browser will show errors like:

  • DNS_PROBE_FINISHED_NXDOMAIN
  • ERR_NAME_NOT_RESOLVED
  • Server not found

In that case, websites won’t load — even if you’re connected to the internet.


🔁 Recap: How Does the Browser Find the IP of a Website?

  1. You type a domain name.
  2. The browser asks the OS for its IP.
  3. The OS uses a DNS server IP — which it got from:
  • DHCP
  • Or manual settings
    1. The DNS server returns the actual IP of the website.
    2. The browser connects to that IP.

🧠 Bonus: Want to See Your DNS Server IP?

Here’s how you can check which DNS server your system is using:

  • Windows: Open Command Prompt and run:
  ipconfig /all
Enter fullscreen mode Exit fullscreen mode

Look under "DNS Servers".

  • macOS / Linux: Check /etc/resolv.conf or run:
  scutil --dns     # (macOS)
Enter fullscreen mode Exit fullscreen mode
  • Mobile Devices: Go to Wi-Fi settings and tap the network you're connected to. DNS info is usually shown under "Advanced".

📶 How DNS Works When You're Using a Mobile Hotspot

✅ Your Setup:

  • PC is connected to your mobile phone's hotspot over Wi-Fi.
  • The phone acts as a router + DHCP server + DNS forwarder.

🧩 Key Details from Your ipconfig:

Wi-Fi:
   IPv4 Address. . . . . . . . . . . : 192.168.142.200
   Default Gateway . . . . . . . . . : 192.168.142.112
   DHCP Server . . . . . . . . . . . : 192.168.142.112
   DNS Servers . . . . . . . . . . . : 192.168.142.112
Enter fullscreen mode Exit fullscreen mode

🔎 Interpretation:

  • 192.168.142.112 is the IP of your mobile phone on the hotspot network.
  • Your phone:

    • Assigned your PC an IP via DHCP.
    • Told your PC to use itself as the DNS server (192.168.142.112).
    • Internally, it likely forwards DNS queries to your mobile carrier's DNS (e.g., Jio, Airtel, etc.) or to a public DNS like Google.

🌐 DNS Resolution Flow in This Case:

  1. You type a domain like example.com in the browser.
  2. Browser asks your Windows OS for the IP.
  3. Windows queries the DNS server 192.168.142.112 — your phone.
  4. Your phone (via Android or iOS) forwards the request to the mobile network's DNS or Google DNS.
  5. The response flows back: Mobile Network → Phone → PC → Browser.

🧪 Bonus Tip: You Can Verify This

If you're curious which external DNS your phone is really using, you can:

On Android:

  • Use a terminal emulator + getprop or an app like Network Info II.
  • Go to Settings > About > Status > IP and DNS details (on some phones).

On iPhone:

  • iOS usually doesn’t show DNS directly, but you can test via browser or DNS tools.

Alternatively, you can change your phone’s DNS manually (e.g., Cloudflare 1.1.1.1) and see how it affects your PC's DNS responses.


✅ TL;DR

Because you're using a mobile hotspot, your phone acts as the DNS provider (192.168.142.112). But in reality, it’s just forwarding your DNS queries to an upstream provider — likely your mobile carrier's DNS or a public DNS.

✨ Final Thoughts

DNS is one of those invisible systems that “just works” — until it doesn’t. But understanding how your system knows which DNS server to use clears up a surprisingly deep question. Whether it’s through automatic configuration from your router or a manually set IP, your OS knows how to reach a DNS server so your browser can reach the internet.

Let me know in the comments if you want a deep dive into how DNS resolution works under the hood, including recursive vs. authoritative DNS servers!

Top comments (0)