Why Your Public IP Matters for DNS Filtering

Understanding Public IPs, Dynamic IPs, and When They Don't Matter

Every network has a public IP address that identifies it on the internet. For DNS filtering services, this IP is how your account and filtering rules are matched to your network. Learn when it matters, when it doesn't, and how to handle dynamic IPs.

Get Started

Step 1: Public vs Private IPs

Every network contains both public and private IP addresses, and understanding the difference is important for configuring DNS filtering correctly.

Your public IP is assigned by your Internet Service Provider (ISP) to your router. This is your Wide Area Network (WAN) address — the one the outside world sees. It represents your entire network as a single identity on the internet.

Your private IPs are assigned by your router to individual devices on your Local Area Network (LAN) — desktops, phones, tablets, printers, and smart devices. These typically use ranges like 192.168.1.x, 10.0.0.x, or 172.16.x.x and are invisible to the outside world.

You can find your public IP by visiting dnsleaktest.com. Your private IP can be found in your device's network settings.

Step 2: Why Public IPs Matter for DNS Filtering

DNS filtering services like CleanBrowsing use your public IP address to identify your network and apply the correct filtering rules. Here's how it works:

  • Account binding: When you sign up for a paid CleanBrowsing plan, you receive unique DNS IP pairs for each profile (e.g., Primary: 185.228.168.135, Secondary: 185.228.169.135)
  • IP matching: These shared IPv4 addresses need to be bound to your public IP so the system knows which filtering rules to apply when your network sends DNS queries
  • Network-wide coverage: Since all devices on your network share one public IP, configuring filtering at the router level protects every device automatically

This IP-based identification is what allows CleanBrowsing to apply different filtering profiles to different networks — for example, stricter rules at home and more permissive rules at the office.

Step 3: The Dynamic IP Challenge

Most ISPs assign dynamic public IPs that change periodically. This can happen when:

  • Your router reboots or loses power
  • Your ISP rotates IP assignments on a schedule
  • Your DHCP lease expires and a new IP is assigned

When your public IP changes, your DNS filtering service may not recognize your network, causing it to switch from "active" to "inactive" status. To handle this:

  • Dynamic Device links: CleanBrowsing provides Dynamic Device URLs that you can call from any device on your network to automatically update your registered IP
  • Third-party DDNS: Services like No-IP and DynDNS can automatically detect and report IP changes
  • Automated scripts: Set up a cron job or scheduled task to periodically check and update your IP with CleanBrowsing

Since all devices on your network share one public IP, updating from any single device fixes the entire network — you only need one updater running.

Step 4: When Public IPs Don't Matter

Public IP identification becomes irrelevant in several scenarios. These methods use encrypted DNS stamps or predefined filter rules that don't require IP matching:

  • Free filters: CleanBrowsing's free DNS filters (Security, Adult, Family) apply the same rules to everyone — no account or IP binding needed
  • DNS-over-HTTPS (DoH): Encrypted DNS connections include account credentials in the DNS stamp itself
  • DNS-over-TLS (DoT): Similar to DoH, the encrypted connection identifies your account without IP matching
  • DNSCrypt: Uses encrypted stamps for account identification
  • iOS and Android apps: CleanBrowsing's mobile apps use private DNS configurations that embed your account credentials
  • Mobile configuration profiles: MDM-deployed profiles carry the account information directly

If you're dealing with CGNAT or frequently changing IPs, switching to encrypted DNS is often the simplest solution — it eliminates the IP dependency entirely.

Need help with your DNS filtering setup?

Get Started with CleanBrowsing