Parental Controls in 22.03.03

Hi All. Pretty new to the OpenWRT platform. I have experience with MerlinWRT, DDWRT, Fresh/AdvancedTomato, etc. but never had a router compatible with OpenWRT. I finally changed that with a Netgear WNDR4300v2 running OpenWRT 22.03.03. I am trying to get configure this for parental control software where I can turn off the internet at times and also block sites by either whitelisting or blacklisting, on specific MAC addresses. I have tried going through the firewall traffic rules, and whenever any time based selection is used the rule appears to be ineffective, no matter how I set the time up for. However, it if is not on a time basis it appears to block the traffic correctly.

Additionally, I attempted to install some of the other solutions via an .ipk but either I do not know how to complete it or some other error is occurring as I always get a code 255 error. I would really love to get this working and I see there are many topics but I haven't seen a working solution. Any help would be greatly appreciated.

Apologies in advance for the complete lack on knowledge on getting this set up.

Hi Foxgoku, welcome to OpenWrt!

I'm also a transplant from FreshTomato and others. Glad you found your way here.

First question, have you seen the wiki page on Parental Controls? Are you following that for making your rules?

Interesting. Here are a few things to check:

  • Check the time is set correctly, under System -> System
  • Check your time zone is set, same place
  • Remember times in the firewall rules are using 24 hour clock
  • Verify whether or not UTC is selected for times in the firewall rules, and adjust accordingly

Also, I'm curious, are you blocking by IP address or MAC address?

How exactly did you do this? Through System -> Software, or are you logged in via SSH?

Don't apologize. Nobody expects you to be an expert on OpenWrt today. We're scheduling that for Friday.


Thanks for the warm greetings. Regarding your questions, here's what I have:

  • Yes, I believe it was the wiki that I was setting up the Parental Control firewall rules on.
  • I have Time synced to public NTP servers. I believe they are the default ones
  • Time zone is set to mountain, as that is appropriate for my location.
  • Time was set to start at 21:00:00 and end at 08:00:00. Effectively cutting internet for the two device at 9PM and restoring at 8AM, per my understanding.
  • UTC box is unchecked

Regarding the IPK, I attempted to do it through System>>software, and uploading the .ipk from my computer. I also tried using the webupload option, but figured I must be doing that wrong as I had no idea where I should be pointing it to. Here are the two I tried to install:

I tried this one both as the ipk option and pointing it to this location via LUCI software.

This one I believe I only tried the ipk but same error as when I tried the top one via the download and install option

When I load the first listed ipk, it 'appears' to work as there is not a 'Access Control' option under the 'Network' tab. However, when I click on that it only gives the below information on the webpage.

/usr/lib/lua/luci/dispatcher.lua:1379: module 'luci.cbi' not found:
	no field package.preload['luci.cbi']
	no file './luci/cbi.lua'
	no file '/usr/share/lua/luci/cbi.lua'
	no file '/usr/share/lua/luci/cbi/init.lua'
	no file '/usr/lib/lua/luci/cbi.lua'
	no file '/usr/lib/lua/luci/cbi/init.lua'
	no file './luci/'
	no file '/usr/lib/lua/luci/'
	no file '/usr/lib/lua/'
	no file './'
	no file '/usr/lib/lua/'
	no file '/usr/lib/lua/'
stack traceback:
	[C]: in function 'require'
	/usr/lib/lua/luci/dispatcher.lua:1379: in function '_cbi'
	/usr/lib/lua/luci/dispatcher.lua:1056: in function 'dispatch'
	/usr/lib/lua/luci/dispatcher.lua:483: in function </usr/lib/lua/luci/dispatcher.lua:482>

Hope this is helps and please let me know what else is needed. I'll try to work hard for the Friday deadline!

Normally you just navigate to System -> Software, click "Update Lists" and then it populates a list of all the available packages. You can then browse the list and/or search for what you want from it and install it that way. When you download an individual package and try and install it, you run the risk of not satisfying dependencies that package has, or of getting a package for the wrong architecture.

I just tried the time-based filter and it seems to work ok. Just in case, here is how I set up my test case:

1 Like

Awesome, thanks for the help. I seem to have both the mac based internet access time limits, and blacklist/whitelist running now. Not sure why it didn't seem to work previously. There is no way to make the adblock filter on apply to certain MAC addresses or IP addresses is there? Didn't see any option there. Now on to my next issue. Thanks again for the help.

Hi and welcome to OpenWRT. Unfortunately i think you're attacking this issue from the wrong direction. The problem is that a router based solution using one of the web filtering DNS services would work only as long as the kid's devices are connected to your router. This is never away from the house and probably not in the house either if they disable WiFi to the router and connect over 4G. A real parental control solution surely needs you to install third party software (kaspersky safe kids, net nanny, that sort of thing) on their phone or PC.