| Age | Commit message (Collapse) | Author |
|
== Enhancements
* Makefile: remove unused option "CGO_ENABLED=0"
== Bug Fixes
* Makefile: remove invalid task "install-service-systemd"
* cmd: fix formatting arguments
|
|
|
|
|
|
|
|
All the server core functionalities (caches and forwarding) now
implemented inside "dns.Server". The main function of this package are
for reading options from configuration file (or from command line options)
and watching changes from system resolv.conf.
== New Features
* Support serving and forwarding DNS over TLS
* Add launchd script for macOS and make tasks to install and uninstall on
macOS
== Breaking Changes
There are also some major changes on configuration file.
All configuration now break into two section '[rescached]' and
'[dns "server"]'.
For more information see new rescached.cfg manual page or an example in
`cmd/rescached/rescached.cfg`.
Some detailed changes are,
* "parent" option now use URI format instead of IP:PORT.
This will allow parent name servers to be UDP, TCP, and/or DoH
simultaneously.
* "server.doh.parent" and "server.parent.connection" are removed,
redundant with new "server.parent" format.
* "cache.threshold" is renamed to "cache.prune_threshold".
* "file.pid" is removed.
The concept of writing PID file when the program start on networking
service is not applicable or relevant anymore on systemd or launchd.
If the program already started, the second program will fail because
the port is already used.
|
|
The latest dns.Server now replace Start and Wait with ListenAndServe()
|
|
On Makefile the shell compound syntax '{}' may not recognized and will
result in the statement not executed as expected.
Fix #4.
|
|
|
|
|
|
|
|
|
|
By checking error from dns.Wait we can tell if dns Server exit because
of error or not.
|
|
|
|
|
|
|
|
|
|
|
|
The configuration file now group into two section: the '[rescached]' and
'[dns "server"]' sections. All of the configuration values are loaded
using ini.Unmarshal instead of using manual parsing.
|
|
|
|
|
|
|
|
|
|
The concept of writing PID file when the program start on networking
service is not applicable or relevant anymore on systemd or launchd.
If the program already started, the second program will fail because
the port is already used.
|
|
This changes add the macOS launchd script and make tasks to install
and uninstall in macOS.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Previously, if configuration file is not defined it will be default
to "/etc/rescached/rescached.cfg" and if the file is not exist it will
return an error with nil options.
This changes, make the configuration file to be an optional. If its not
exist or error when parsing options, rescached will set it with default
values.
|
|
All the server core functionalities (caches and forwarding) now
implemented inside "dns.Server". The main function of this package are
for reading options from configuration file (or from command line options)
and watching changes from system resolv.conf.
There are also some major changes on configuration file.
* "server.parent" option now use URI format instead of IP:PORT.
This will allow parent name servers to be UDP, TCP, and/or DoH
simultaneusly.
* "server.doh.parent" and "server.parent.connection" are removed,
redundant with new "server.parent" format.
* "cache.threshold" is renamed to "cache.prune_threshold".
|
|
This change update package "lib/share" from v0.4.0 to v0.5.0, which
affected the following files,
* cmd/rescached: update ParseIPPort to return hostname without error
|
|
== Bug Fix
Use single Go routine to handle request. This fix mismatched ID in
response due to single response is being use by multiple routines.
|
|
|
|
|
|
This reverts commit da44b655f1e46281741e47a664cd96ed560e4cb9.
Reason for revert: using multiple processes to handle request queue will
result in data race when setting response ID, especially when multiple
client requests the same query.
|
|
== Enhancements
* Run multiple (4) go routines to handle request
* Make the debug output to be more human readable
== Bug Fixes
* cmd/resolver: fix query with zero ID
|
|
lint-ing task optional actually, but it will display a warning when
building binary without linting tools exist in user environment.
|
|
|
|
Also, fix the name server that being requested on error.
|
|
The number of maximum routines is equal to maximum forwarder (4 routines).
|
|
Method update() on cacheworker basically contains one line statement.
Also, update the log format to print ID of query and response and
total caches.
|
|
User that need to run DoH in local need to import or accept the
certificate manually through Firefox exception list.
|
|
The dns package provide more human readable when printing Question.
Instead of printing query type in number, for example A record with "1",
the Question stringer now print "A" instead.
|