Skip to content

v1.6.0

Choose a tag to compare

@qdm12 qdm12 released this 07 Apr 01:09
· 27 commits to master since this release

Bug fixes

  • Fix unbound loop logic sometimes running two Unbound instances
  • Fix restart logic in unbound loop
  • Fix proper exit on crash in unbound loop

Features

  • New DoT providers
    • cira family
    • cira private
    • quad9 secured
    • quad9 unsecured
  • Upgrade from Alpine 3.12 to 3.13
  • Upgrade from Unbound 1.10.1 to 1.13.0
  • CHECK_UNBOUND renamed to CHECK_DNS (retro-compatibility maintained)

Maintenance

  • Remove duplicate signal logic in main.go
  • Update logging library included in golibs
  • Always use DNSSEC validation for Unbound as all providers support it
  • Remove pkg/models type aliases
  • Use pkg/provider and remove pkg/models (ProviderData)
  • Remove unused PUID and PGID for Unbound
  • Move Unbound Settings to pkg/unbound package
  • Move Username to pkg/unbound's Settings
  • Move all settings parsing, setting and validation in the internal/config package

Go API

  • pkg/dot package
    • DoT resolver
    • DoT DNS server
    • Support for both IPv4 and IPv6 DoT/DNS upstream server IP addresses
    • Option to fallback on plain DNS on failure
    • Thread safe cycling operation for all settings (service providers, service IP addresses etc.)
    • Specify DNS server listening port
  • pkg/doh package
    • DoH resolver (using the DoT resolver to resolve the DoH url)
    • DoH DNS server
    • Thread safe cycling operation for all settings (service providers, service IP addresses etc.)
    • Specify DNS server listening port
  • pkg/provider package
    • All providers DNS, DoT and DoH information
    • Add more providers
  • pkg/cache package
    • LRU based caching for DNS servers
    • Used by pkg/dot and pkg/doh
  • pkg/blacklist
    • Hostnames blocking
    • IPs blocking
    • IP networks blocking
    • Blocklist building with BuilderSettings
  • Mocks generated for all new packages
  • examples/ directory with example main.go for DoT and DoH resolvers and DNS servers