Ako oni koriste tvoj OpenWrt ruter za DNS, kombinacija ipset, dnsmasq i iptables bi trebali da reše stvar.
Da razjasnimo, u /etc/config/firewall imam odeljak koji kreira ipset za IPv4 i još jedan za IPv6 adrese:
config ipset
option enabled '1'
option name 'no_youtube'
option family 'ipv4'
option storage 'hash'
option match 'dest_ip'
option timeout '2400'
config ipset
option enabled '1'
option name 'no_youtube6'
option family 'ipv6'
option storage 'hash'
option match 'dest_ip'
option timeout '2400'
Imam unos u /etc/dnsmasq.conf:
ipset=/youtube.com/no_youtube,no_youtube6
i imam pravila u iptables:
config rule 'no_youtube'
option target 'REJECT'
option src_ip '192.168.0.105'
option ipset 'no_youtube'
option proto 'tcp udp'
option src 'lan'
option dest 'wan'
config rule 'no_youtube6'
option target 'REJECT'
option src_ip '192.168.0.105'
option ipset 'no_youtube6'
option proto 'tcp udp'
option src 'lan'
option dest 'wan'
Ako bilo ko u mreži traži youtube.com ili *.youtube.com, dnsmasq će dodati odgovarajuću IP adresu u pomenuti ipset, u zavisnosti od IP verzije.
Vatrozid će zatim koristiti ipset za sav saobraćaj koji dolazi sa određene IP adrese (naravno, promeni to na računaru svog deteta). Ako sadrži odredišnu IP adresu, pretpostavlja se da je dodata zbog prethodnog pretraživanja youtube.com, i veza se REJECT-uje.
Može da se desi da failuje zatvoreno (blokira saobraćaj koji ne treba) u određenim okolnostima, prvenstveno zato što je Google tako veliki i možda (nepotvrđeno) koriste iste IP adrese za druge Google usluge. npr. www.google.com može imati istu IP adresu kao youtube.com, jer Google poseduje oba. U tom slučaju, ako je youtube prethodno pretražen, kasniji pokušaji pristupa google.com mogu da failuju. Mislim da je to malo verovatno, ali zbog Google-ovog načina rada, postoji realna mogućnost kolizije. Samo želim da napomenem to.