dnscrypt-proxy filtering

Written by

in

특정 시간대에 맞춰 DNS 응답을 차단하는 방법이다. 조금 아쉽지만 질의한 컴퓨터 별로 차단할 수는 없다. 일괄 차단 형식이라고 생각하면 된다.

/etc/dnscrypt-proxy/dnscrypt-proxy.toml 파일에서 다음 내용을 추가해 본다.

[schedules]
  [schedules.'time-to-sleep']
    mon = [{after='21:30', before='7:00'}]
    tue = [{after='21:30', before='7:00'}]
    wed = [{after='21:30', before='7:00'}]
    thu = [{after='21:30', before='7:00'}]
    fri = [{after='21:30', before='7:00'}]
    sat = [{after='21:30', before='7:00'}]
    sun = [{after='21:30', before='7:00'}]
[blocked_names]
blocked_names_file = 'blacklist.txt'

blacklist.txt 파일에서 다음과 같이 지정한다.

*.roblox.com
*.facebook.com @time-to-sleep

이렇게 하면 roblox는 항상 차단, facebook 은 지정된 시간에 맞춰서 응답을 하지 않는다(0.0.0.0).

공유기나 PC에 저장된 DNS 정보까지는 남아 있을 수 있다. 즉시 효과를 기대한다면 방화벽을 이용하던가 해당 시간에 맞추어 cache를 flush 해야 한다.