- Feat: support handling not-forwarded domains and local domains by default. For example,
resolver.arpa
is not forwarded to the upstream resolver, andlocalhost
is always resolved to127.0.0.1
or::1
. - Refactor: Various minor improvements
- Deps.
- Feat: Support anonymous token based on blind RSA signatures.
- Feat: DNS query logging (
qrlog
feature) - Feat: Library error handling improvement (Changed the error type)
- Refactor: Various minor improvements
- Feat: Support TCP and UDP bootstrap DNS protocols. In addition to the existing format like "1.1.1.1" that means "udp://1.1.1.1:53", formats like "tcp://1.1.1.1:53" (TCP support) "udp://1.2.3.4:50053" (Non standard port) works. See "README.md" and "doh-auth-proxy.toml" for configuration for the detail.
- Refactor: Lots of minor improvements
- Fix several error handlers
- Totally restructured and reimplemented all components
- [Breaking] Support multiple bootstrap resolvers, which requires to modify the config file.
- Periodic health check of all path candidates.
- Periodic nexthop IP address resolution via the proxy itself, bootstrap resolver is only used at the first time and fall-back.
- Periodic fetching of access token with refresh token.
- Hot reloading of configuration files, including block and override files.
- Configurable "user-agent" as whatever you like.
- Docker UID:GID: Update Dockerfiles to allow arbitrary UID and GID (non-root users) for rpxy. Now they can be set as you like by specifying through env vars.
- Refactor: Various minor improvements
- Change inner structure of proxy's supplemental services other than UDP/TCP acceptors.
- Update override-list format to use individual lines for representing multiple matching for a name, i.e., (name, IPv4) and (name, IPv6).
- Updates required args to run. Now it works without args.
- Fix matching rule for blocklist and override-list
- Used a forked version of Cloudflare's
odoh-rs
library for frequently maintenance by @junkurihara: https://github.com/junkurihara/odoh-rs.git - Domain-based filtering and domain-override
- Add on-memory DNS cache to make query-response faster.
- Refactor to merge some global variables in
Arc
s intoArc<Globals>
. - Update deps
- Feature: add health check sending a ping to each (O)DoH target when (re)bootstrap of client instances