Hi Pi-hole team,
I would like to suggest adding native scheduled blocking rules to Pi-hole.
The idea is similar to time-based website blockers such as LeechBlock, but implemented centrally at the DNS level.
Example use case
I want to block distracting domains such as:
-
x.com
-
reddit.com
-
instagram.com
for a specific client or Pi-hole group during most of the day, but automatically allow them during defined time windows.
For example:
-
Block
x.comfrom 00:00–12:30 -
Allow from 12:30–12:45
-
Block from 12:45–18:30
-
Allow from 18:30–18:45
-
Block again after 18:45
Ideally, this would work with:
-
exact deny/allow domains
-
regex rules
-
Pi-hole groups
-
individual clients
-
days of the week
Possible UI
A domain/group rule could have an optional Schedule section:
-
Active days: Mon–Sun
-
Start time
-
End time
-
Block / Allow
-
Multiple time ranges per day
For example:
x.com → Block → Mon–Fri → 08:00–12:30, 12:45–18:30
Another possible implementation would be scheduled activation/deactivation of groups.
Why this would be useful
Pi-hole already provides centralized DNS filtering and client/group management. Scheduled rules would make it useful not only for ad blocking, but also for:
-
reducing distractions / doomscrolling
-
parental controls
-
work/study schedules
-
limiting social media during certain hours
-
different rules for different devices
This can currently be approximated with cron/scripts, but native support in the web UI would be much easier to configure, understand, and maintain.
I am specifically suggesting scheduled rules for individual domains/groups/clients, rather than simply disabling all Pi-hole blocking on a timer.
Thanks for considering it.