mirror of
https://github.com/hickory-dns/hickory-dns.git
synced 2026-04-24 18:55:55 +03:00
[GH-ISSUE #1209] [Advice Needed] Looking to build a friendly UI and schedule domain disabling for Home/Business networks #628
Labels
No labels
blocked
breaking-change
bug
bug:critical
bug:tests
cleanup
compliance
compliance
compliance
crate:all
crate:client
crate:native-tls
crate:proto
crate:recursor
crate:resolver
crate:resolver
crate:rustls
crate:server
crate:util
dependencies
docs
duplicate
easy
easy
enhance
enhance
enhance
feature:dns-over-https
feature:dns-over-quic
feature:dns-over-tls
feature:dnsssec
feature:global_lb
feature:mdns
feature:tsig
features:edns
has workaround
ops
perf
platform:WASM
platform:android
platform:fuchsia
platform:linux
platform:macos
platform:windows
pull-request
question
test
tools
tools
trust
unclear
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/hickory-dns#628
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @rrichardson on GitHub (Sep 18, 2020).
Original GitHub issue: https://github.com/hickory-dns/hickory-dns/issues/1209
First, thanks for building such an amazing set of libraries and tools! This is a pretty amazing body of work. Also, apologies in advance for the length of this message.
Question setup: Living the COVID lifestyle, I have 3 young kids at home that conduct 90% of their school curriculum on a computer. They find themselves being distracted by the multitude of gaming websites out on the interwebs instead of doing their schoolwork.
I'd like to be able to create a DNS server for home use that can fail-to-resolve a number of deny-lilsted domains during a pre-set schedule. I plan to build a UI in Sauron or Yew that would provide a simple way to schedule domains to be disabled at fixed times of the day/week. I figure this could also be useful for businesspeople who find themselves drifting to Reddit or Facebook too often.
Question A: It seems to me that what I'm asking for is a way to build a DNS server that intentionally returns incorrect answers. I
can think of 2 way to do this:
In both cases, I am guessing that the server would have to insist on executing only recursive queries.
Question B: What would be the best strategy for executing dynamic updates on a DNS server that is also a web server? It seems like a DNS server that returns incorrect answers.
I guess this depends on answer 0. If I'm using option 2, then I would just use the DNS Server lib and add my custom hooks, then I'd link in Warp or some other HTTP framework library to serve the Web UI portion.
If it is going to option 1, and issue dynamic updates, should I use RFC2136 from the Client (Linking the client in with the server) or is there an API in the server to directly update the zone DB records?
@bluejekyll commented on GitHub (Sep 18, 2020):
This is possible and in fact many people have done work in this area. You can find blackhole lists here. From there you can probably find some examples for implementing with others.
I think you are asking for an interesting feature which is a time based period for these lists to be activated. I haven't looked into a lot of this at this point.
For trust-dns, we have some things started in this area, but I'd say there are still some gaps, for example, here is the forwarding configuration (which is part of what you'd need for this).
We have some similar requests from the past: #13