FR: Ability to federate smoothly without configuring an external DNS resolver #1766
Labels
No labels
Blocked
Bug
Changelog
Added
Changelog
Missing
Changelog
None
Cherry-picking
Database
Dependencies
Dependencies/Renovate
Difficulty
Easy
Difficulty
Hard
Difficulty
Medium
Documentation
Enhancement
Good first issue
Help wanted
Inherited
Matrix/Administration
Matrix/Appservices
Matrix/Auth
Matrix/Client
Matrix/Core
Matrix/E2EE
Matrix/Federation
Matrix/Hydra
Matrix/MSC
Matrix/Media
Matrix/T&S
Merge
Merge/Manual
Merge/Squash
Meta
Meta/CI
Meta/Packaging
Priority
Blocking
Priority
High
Priority
Low
Security
Status
Confirmed
Status
Duplicate
Status
Invalid
Status
Needs Investigation
Support
Wont fix
old/ci/cd
old/rust
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
continuwuation/continuwuity#1766
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?
Continuwuity usually recommends Unbound or another resolver to ride against its massive amounts of requests. Although this is a Matrix™ problem not a C10y problem, it increase ops and moving parts to handle. Therefore, it would be nice if C10y can performantly resolve DNS on its own.
I think it might benefit Continuwuity in this way if its hickory module can do these (very unprofessional draft ideas):
Allow pointing to custom addresses for DNS servers instead of relying on
/etc/resolv.conf. This gets around the clunky/etc/resolv.confmount in Docker, and makes it trivial to use dedicated upstream DNS for c10y without reconfiguring one's entire system.Allow slowly warming up the DNS cache before Continuwuity starts. IME most of the DNS bursts comes from a homeserver reboot, as this is usually triggered by
startup_netburstevents. So having a way to not choke then would be nice.destinations-cacheAllow saving cache to disk so it persists across restarts. Even Unbound doesn't support this natively, so implementations might still choke when both the homeserver and the resolver got rebooted.
Some cool stuff like Serve Stale for resilience against failing upstreams, or DNSSEC for security, could also be done. But I think these are enough for 90% of users. In the end I'd hope c10y's dns module(s) can function independently to attune for its own needs, and I hope hickory is performant enough for these.
To be completely frank I just don't think this is worth our time when most deployments don't even need to set up a high performance DNS server locally. The time that would be spent hacking around poor DNS setups is probably better spent writing a ten second message in the support room saying "you should set up inbound, here's the docs"