Apple iOS & macOS Conflicts with DNS Filtering

Three Apple features can interfere with DNS-based content filtering: Screen Time, Safari Private Browsing protections, and iCloud Private Relay. Learn how to identify and fix each conflict so CleanBrowsing works reliably on all Apple devices.

Step 1: Overview — Three Apple Features That Break DNS Filtering

Apple devices include several privacy and parental-control features that can interfere with DNS-based content filtering services like CleanBrowsing. Three features cause the most problems:

Feature What It Does How It Breaks DNS Filtering
Screen Time
iOS 12+, macOS Catalina+
Built-in parental controls with web content restrictions Intercepts DNS requests at the device level, overriding network-based DNS filtering
Safari Private Browsing Protections
iOS 17+, macOS Sonoma+
"Advanced Tracking and Fingerprinting Protection" in Safari’s Private Browsing mode Routes DNS queries through Apple’s servers in Private Browsing tabs, bypassing your network DNS
iCloud Private Relay
iCloud+ subscribers
Encrypts and proxies all Safari traffic through two relay servers Completely bypasses network DNS — all DNS resolution happens on Apple’s relay servers

Each feature must be addressed separately. The sections below cover the problem, symptoms, and fix for each one.

Step 2: Screen Time — The Problem

Apple’s Screen Time feature, available on iOS 12+ and macOS Catalina+, includes a Content & Privacy Restrictions module with its own Web Content filtering. When this feature is active, it intercepts DNS requests at the device level — similar to how CleanBrowsing and other DNS-based content filtering services work.

Since Screen Time operates at the device level, it takes precedence over network-level DNS filtering, creating two competing filter systems that interfere with each other.

Both Screen Time and CleanBrowsing attempt to control web traffic by intercepting DNS requests:

  • CleanBrowsing filters content at the DNS level by resolving blocked domains to a block page IP address
  • Screen Time intercepts requests locally on the device, applying its own allow/deny rules before the DNS query reaches the network

When both are active, Screen Time’s device-level interception overrides the network configuration. This can cause DNS queries to bypass CleanBrowsing entirely, or create unpredictable behavior where some requests are filtered by Screen Time and others by CleanBrowsing.

Step 3: Screen Time — Symptoms

You may be experiencing a Screen Time conflict if you notice:

  • CleanBrowsing filters work on other devices but not on Apple devices
  • Blocked sites load intermittently or inconsistently on iOS/macOS
  • The CleanBrowsing block page does not appear when accessing blocked domains
  • Running nslookup -type=txt iptest.whois.dnscontest.cleanbrowsing.org 185.228.168.10 on the device does not return CleanBrowsing filter information
  • DNS-over-HTTPS or DNS-over-TLS profiles are not working as expected

Step 4: Screen Time — Fix on iOS / iPadOS

Disable Screen Time’s Web Content filtering and rely solely on CleanBrowsing for content filtering. This eliminates the device-level interception and allows network-based DNS filtering to function as intended.

  1. Open Settings on the iPhone or iPad
  2. Tap Screen Time
  3. Tap Content & Privacy Restrictions
  4. Enter your Screen Time passcode if prompted
  5. Tap Content Restrictions
  6. Tap Web Content
  7. Select Unrestricted Access (instead of “Limit Adult Websites” or “Allowed Websites Only”)

Why this is the right approach:

  • CleanBrowsing provides more comprehensive filtering with regularly updated block lists
  • Network-level filtering protects all apps, not just Safari
  • You avoid the unpredictable behavior caused by competing filter systems
  • You can still use Screen Time’s other features (app limits, downtime, etc.) without conflict

After changing this setting, verify CleanBrowsing is working by visiting a domain that should be blocked, or run a DNS debug check.

Step 5: Screen Time — Fix on macOS

  1. Open System Settings (or System Preferences on older macOS versions)
  2. Click Screen Time
  3. Click Content & Privacy
  4. Enter your Screen Time passcode if prompted
  5. Click Content Restrictions
  6. Under Web Content, set the Access to Unrestricted

Verify the fix by opening Terminal and running:

nslookup -type=txt iptest.whois.dnscontest.cleanbrowsing.org 185.228.168.10

The response should confirm you are using a CleanBrowsing filter.

Step 6: Safari Private Browsing — The Problem

Starting with iOS 17 and macOS Sonoma, Safari includes an Advanced Tracking and Fingerprinting Protection feature that activates in Private Browsing mode. When enabled, Safari routes DNS queries through Apple’s own resolvers instead of your configured network DNS.

This means that when a user opens a Private Browsing tab in Safari, their DNS requests bypass CleanBrowsing entirely. Sites that should be blocked will load normally in Private Browsing, even though filtering works correctly in regular Safari tabs.

Key details:

  • This only affects Safari — other browsers on the device are not impacted
  • It only activates in Private Browsing mode, not regular browsing
  • The feature is enabled by default on iOS 17+ and macOS Sonoma+
  • It affects both standard DNS and encrypted DNS (DoH/DoT) configurations

Step 7: Safari Private Browsing — Fix

Disable the Advanced Tracking and Fingerprinting Protection feature so Safari uses your configured DNS in all browsing modes.

On iOS / iPadOS:

  1. Open Settings
  2. Scroll down and tap Apps, then tap Safari
  3. Scroll down to the Privacy & Security section
  4. Tap Advanced
  5. Under Privacy, turn off Advanced Tracking and Fingerprinting Protection (or set it to apply only in “Private Browsing” — then disable Private Browsing entirely via Screen Time if needed)

On macOS:

  1. Open Safari
  2. Click Safari in the menu bar → Settings (or Preferences)
  3. Go to the Advanced tab
  4. Under Privacy, uncheck Use advanced tracking and fingerprinting protection or change it from “in all browsing” / “in Private Browsing” to off

Alternative approach: If you want to keep the privacy protections but prevent DNS bypass, you can disable Private Browsing entirely through Screen Time: Settings → Screen Time → Content & Privacy Restrictions → Content Restrictions → Web Content → ensure Private Browsing is not available. This prevents users from opening Private Browsing tabs in the first place.

Step 8: iCloud Private Relay — The Problem

iCloud Private Relay is a privacy service available to iCloud+ subscribers (any paid iCloud plan). When enabled, it encrypts all Safari web traffic and routes it through two separate relay servers before reaching the destination website.

How Private Relay breaks DNS filtering:

  • All DNS resolution happens on Apple’s relay servers, not on your local network
  • Your configured CleanBrowsing DNS servers are completely bypassed
  • This affects all Safari traffic (not just Private Browsing), plus DNS queries from some apps
  • The device’s IP address is also hidden, so IP-based policies on your CleanBrowsing account won’t apply

Private Relay is different from a VPN — it only affects Safari and certain system services, not all network traffic. However, since Safari is the default and most-used browser on Apple devices, this effectively disables DNS filtering for most web browsing.

How to tell if Private Relay is active:

  • DNS debug checks return non-CleanBrowsing resolvers
  • Blocked sites load normally in Safari but are blocked in other apps (Chrome, Firefox)
  • The device’s apparent IP address changes when checking in Safari vs. other apps

Step 9: iCloud Private Relay — Fix

Disable iCloud Private Relay so Safari uses your configured network DNS for all requests.

On iOS / iPadOS:

  1. Open Settings
  2. Tap your name at the top (Apple ID)
  3. Tap iCloud
  4. Tap Private Relay
  5. Toggle Private Relay off
  6. Choose Turn Off Until Tomorrow or Turn Off Private Relay (permanent)

On macOS:

  1. Open System Settings
  2. Click your name at the top (Apple ID)
  3. Click iCloud
  4. Click Private Relay
  5. Toggle Private Relay off

Per-Network Disable (Alternative):

If you only want to disable Private Relay on specific networks (such as your home or office Wi-Fi where CleanBrowsing is configured):

  1. Open Settings → Wi-Fi
  2. Tap the (i) button next to the connected network
  3. Scroll down and toggle off iCloud Private Relay (or Limit IP Address Tracking)

This keeps Private Relay active on other networks while allowing CleanBrowsing to work on your filtered network.

For Enterprise / MDM:

If you manage devices through an MDM solution (Jamf, Mosyle, Intune, etc.), you can deploy a configuration profile that disables Private Relay across all managed devices. Use the com.apple.relay.managed payload with RelayEnabled set to false. This prevents users from re-enabling the feature.

Step 10: Recommended Configuration

For reliable DNS filtering on Apple devices, use these settings:

Feature Setting Why
Screen Time → Web Content Unrestricted Access Prevents DNS interception conflict
Screen Time → App Limits / Downtime Use as desired No conflict with DNS filtering
Safari → Advanced Tracking Protection Off Prevents DNS bypass in Private Browsing
iCloud → Private Relay Off (or per-network) Prevents Safari DNS bypass via relay servers
Network DNS CleanBrowsing IPs Handles all content filtering

Verification Steps

After applying all fixes, verify that DNS filtering is working correctly:

  1. Regular Safari: Visit a domain that should be blocked — you should see the CleanBrowsing block page
  2. Private Browsing: Open a Private Browsing tab and visit the same blocked domain — it should still be blocked
  3. DNS Debug: Open Terminal (macOS) or use a DNS lookup app (iOS) and run:
    nslookup -type=txt iptest.whois.dnscontest.cleanbrowsing.org 185.228.168.10
    The response should confirm you are using a CleanBrowsing filter.
  4. IP Check: Compare your visible IP address in Safari vs. Chrome. If they show the same IP, Private Relay is disabled.