Skip to content

Releases: qdm12/dns

v2.0.0-rc10

22 Dec 21:07
13dadf1

Choose a tag to compare

Features

  • DNS over TLS now uses a pool of connections to re-use TCP connections when possible (#150)
  • HEALTH_SERVER_ADDRESS option, defaulting to 127.0.0.1:9999
  • by default log i/o timeout errors are logged at debug level because these are fairly common
  • REBINDING_PROTECTION_EXEMPT_HOSTNAMES option
  • pkg/middlewares/filter: log blocked elements with a reason

Fixes

  • internal/local: "site" and "network" TLDs are public, not local
  • pkg/middlewares/localdns:
    • do not log request twice on errors
    • do not debug log NXDOMAIN coded responses since these happen often especially with search domains
  • internal/support/ipv6: handle Windows error message
  • Grafana dashboard plain DNS section updated

Go API breaking changes

  • pkg/nameserver: GetDNSServers
    • does not return localhost IPs if no nameserver is found
    • returns an eventual error
    • returns []netip.Addr instead of []netip.AddrPort since it can only be an ip address without port

Maintenance

  • Grafana JSON dashboard upgraded to newer schema version 3
  • Fix documentation URLs and CI links check
  • bump markdownlint from v11 to v21

v2.0.0-rc9

05 Nov 20:54
52207aa

Choose a tag to compare

Features

  • Re-add "plain" upstream type (needed for debugging and Gluetun)
  • pkg/exchanger: add round trip duration to error message
  • pkg/middlewares/filter/mapfilter
    • map filter by IP version to reduce memory usage

Fixes

  • Listening on another port than 53 now works
  • lowercase all question Name field to avoid any oddities
  • internal/dns: loop fixed to handle error before subsequent start completes (fixing whole program being stuck at starting steps)
  • do not modify system wide nameservers on Unix systems to avoid permission issues
  • internal/support/ipv6:
    • try both cloudflare and google in case one is not available (hum hum cloudflare)
    • detection failure logged as warning not error
  • pkg/blockbuilder: skip malformed hostnames instead of returning an error
  • pkg/middlewares/localdns:
    • only use DNS servers with a private IP address
    • lowercase all fqdns before checking for locality
  • pkg/middlewares/filter/mapfilter
    • blocked ip prefixes metric fixed
  • pkg/nameserver: get both private and public DNS servers on Windows

Maintenance

  • pkg/dot: revert to use tls.Client and finer steps for more control
  • pkg/blockbuilder: optimized code scanning big files line by line
  • bump Go from 1.23 to 1.25
  • upgrade linter to v2.4.0
  • Dependencies
    • bump qdm12/goservices to 6bee97bd4978 in order to have the httpserver handler context cancelation feature
  • CI
    • bump actions/setup-go from v2 to v6
    • use Go version from go.mod
    • bump Alpine from 3.20 to 3.22
    • pull container images at build time from ghcr.io when possible
  • disable package comments requirement warning in dev container
  • upgrade dev container to v0.21
    • Go upgraded from 1.23 to 1.25
    • golangci-lint upgraded to v2.4.0
    • Alpine upgraded from 3.20 to 3.22
    • Disable package comment requirement by gopls' staticcheck
    • Pull container image from ghcr.io

v2.0.0-rc8

03 Nov 12:31

Choose a tag to compare

Changelog

  • 277e4bf change: no dialer warning logger anymore - parent dialer caller can log the error - remove warner settings field for dot and plain dialers
  • b2cf2c0 chore(pkg): dialer string returns connection type only, i.e. https instead of dns over https
  • 87b1fef chore(pkg/dot): use tls.Dialer instead of tls.Client
  • fdd4373 chore(pkg/server): shutdown without waiting for connections to close - UDP server tend not to terminate connections on time
  • 5326983 feat(exchanger): add request question context when encountering an error

v2.0.0-rc7

25 Oct 11:51

Choose a tag to compare

v2.0.0-rc7 Pre-release
Pre-release
fix(ci): update goreleaser settings

v2.0.0-rc6

18 May 10:44

Choose a tag to compare

v2.0.0-rc6 Pre-release
Pre-release
chore(deps): upgrade gosettings to v0.4.1

v2.0.0-rc5

21 Mar 17:11

Choose a tag to compare

v2.0.0-rc5 Pre-release
Pre-release
fix(ipv6): detect ipv6 non-support with additional error message

- `connect: network is unreachable`

v2.0.0-rc4

11 Aug 14:51
68ee053

Choose a tag to compare

v2.0.0-rc4 Pre-release
Pre-release
change(nameserver): remove KeepNameserver option

v2.0.0-rc3

14 Jun 15:28
42276e5

Choose a tag to compare

v2.0.0-rc3 Pre-release
Pre-release
fix(pkg/blockbuilder): make settings fields nilable

v2.0.0-rc2

29 May 11:17
5320ab3

Choose a tag to compare

v2.0.0-rc2 Pre-release
Pre-release
chore(dns): bump miekg/dns to v1.1.54

v2.0.0-rc1

29 May 11:16
5320ab3

Choose a tag to compare

v2.0.0-rc1 Pre-release
Pre-release
chore(dns): bump miekg/dns to v1.1.54