How to block internet access for kids by schedule using pfsense
Or block by schedule, not only for kids but for devices
First things first, create an alias on pfsense that will aggregate all the IPs that should be blocked from accessing the network. You can look in Status/DHCP Leases to find the required device IP address. So note them down and head to Firewall/Aliases. The first tab should be the one selected by default: IP.
Now click on Add button to create a new IP alias.
Give it a name, Kids in my example, set the IP address and click on Add Host to add other IP addresses as needed. Once you're done click Save. It should look like in the screenshot below.
Now that you have an alias that contains the IPs, you will need to create a schedule for the internet access. For this, go to Firewall/Schedules and click Add to create a new one.
My AccessDenied schedule has gaps from 9AM to 12AM and 14:00 to 19:00 in the evening, for every day of the week.
With the alias and the schedule in place, we are going to create a firewall rule that will block all traffic going to the IPs in the alias according to the specified schedule.
So go to Firewall/Rules and select the LAN tab. Click Add to create a new rule.
Action should be Block, Protocol set to Any. Source is "Single host or alias" and the value is the name of the alias Kids. Show the Advanced Options and scroll to Schedule where you enter the name of the schedule you have previously created, AccessDenied in my example. Click Save, don't forget to Apply Changes.
Now you can grab a cup of coffee and listen to the kids trying to argue about the schedule...