If your ISP assigns a dynamic public IP, CleanBrowsing may lose track of your network. This guide shows you how to automate IP updates using simple scheduled scripts on Windows, macOS, and Linux.
CleanBrowsing provides a dynamic update endpoint you can call to register your current public IP. Find your unique update key in your CleanBrowsing dashboard under Settings > Dynamic IP.
The endpoint format is:
https://my.cleanbrowsing.org/dynip/update?key=YOUR-UNIQUE-KEY
Replace YOUR-UNIQUE-KEY with the key from your dashboard.
Create a script that fetches your current public IP and sends it to CleanBrowsing:
#!/bin/bash
CURRENT_IP=$(curl -s https://checkip.amazonaws.com)
curl -s "https://my.cleanbrowsing.org/dynip/update?key=YOUR-UNIQUE-KEY&ip=$CURRENT_IP"
Save this as update-cb-ip.sh and make it executable:
chmod +x update-cb-ip.sh
For Windows systems, use PowerShell:
$ip = (Invoke-RestMethod -Uri "https://checkip.amazonaws.com").Trim()
Invoke-WebRequest -Uri "https://my.cleanbrowsing.org/dynip/update?key=YOUR-UNIQUE-KEY&ip=$ip" -UseBasicParsing
Save this as update-cb-ip.ps1 in a folder you can reference later.
Open your crontab editor:
crontab -e
Add the following line to run the script every 10 minutes:
*/10 * * * * /path/to/update-cb-ip.sh
Save and exit. Your IP will now be checked and updated automatically every 10 minutes.
powershell.exe -ExecutionPolicy Bypass -File "C:\path\to\update-cb-ip.ps1"Instead of a scheduled script, you can configure your router's built-in Dynamic DNS (DDNS) feature with a provider like No-IP or DynDNS. Then reference your DDNS hostname in CleanBrowsing instead of a static IP address.
This approach works well if your router supports DDNS natively, as the router handles IP updates automatically.
Full API reference for managing filters and network settings programmatically.
Why your public IP matters for DNS filtering and what to do if it changes.
Answers to frequently asked questions about CleanBrowsing setup.