summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-01-15rescached v3.0.0v3.0.0Shulhan
== Enhancements * Makefile: remove unused option "CGO_ENABLED=0" == Bug Fixes * Makefile: remove invalid task "install-service-systemd" * cmd: fix formatting arguments
2019-12-26Makefile: remove unused option "CGO_ENABLED=0"Shulhan
2019-12-26Makefile: remove invalid task "install-service-systemd"Shulhan
2019-12-26cmd: fix formatting argumentsShulhan
2019-12-26rescached v3.0.0-alphav3.0.0-alphaShulhan
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.
2019-12-26go.mod: update dependenciesShulhan
The latest dns.Server now replace Start and Wait with ListenAndServe()
2019-12-18Makefile: fix the installation scriptShulhan
On Makefile the shell compound syntax '{}' may not recognized and will result in the statement not executed as expected. Fix #4.
2019-12-07go.mod: update dependenciesShulhan
2019-12-05go.mod: update dependenciesShulhan
2019-11-01go.mod: update share package to tipShulhan
2019-10-25cmd/rescached: exit with status 1 when rescached Start errorShulhan
2019-10-24rescached: return error from dns.WaitShulhan
By checking error from dns.Wait we can tell if dns Server exit because of error or not.
2019-10-24scripts: update list of blocked hostsShulhan
2019-10-24go.mod: update dependencies to latest commitsShulhan
2019-10-18resolver: print the usage with examplesShulhan
2019-10-17resolver: allow "ns" option to query DNS over TLS and HTTPSShulhan
2019-10-17rescached: support serving and forwarding DNS over TLSShulhan
2019-10-16all: refactoring configuration fileShulhan
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.
2019-10-15rescached: log the DoH address and port on StartShulhan
2019-10-04cmd/rescached: handle panic using recoverShulhan
2019-09-29go.mod: update dependenciesShulhan
2019-09-29rescached: add example of server parent with DNS over HTTPSShulhan
2019-09-29all: remove the usage of writing PID fileShulhan
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.
2019-09-29all: support macOSShulhan
This changes add the macOS launchd script and make tasks to install and uninstall in macOS.
2019-09-10go.mod: preparing release for v3Shulhan
2019-09-10go.mod: update dependenciesShulhan
2019-09-10scripts: update list of blocked hostsShulhan
2019-09-10Makefile: disable cgo when building and installing binariesShulhan
2019-09-09go.mod: update package share to latest releaseShulhan
2019-07-09options: ignore returned value from loadResolvConf()Shulhan
2019-07-09cmd/rescached: remove unused parameter on debugRuntimeShulhan
2019-07-09cmd/rescached: remove ununsed return error on parsing parent nameserversShulhan
2019-07-09go.mod: update dependencyShulhan
2019-07-09all: add prefix to the log output with "rescached: "Shulhan
2019-07-09cmd/rescached: change config flag from "-f" to "-config"Shulhan
2019-07-09cmd/rescached: make loading configuration file as optionalShulhan
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.
2019-07-05all: refactoring with latest update on dns packageShulhan
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".
2019-04-08go.mod: update dependencyShulhan
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
2019-03-22Release rescached v2.1.2v2.1.2Shulhan
== 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.
2019-03-22AUR: update with previous releaseShulhan
2019-03-22doc: update benchmark output with latest commitShulhan
2019-03-22Revert "rescached: run multiple routines to process request queue"Shulhan
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.
2019-03-02Release rescached v2.1.1v2.1.1Shulhan
== 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
2019-03-02make: remove lint task from build and debugShulhan
lint-ing task optional actually, but it will display a warning when building binary without linting tools exist in user environment.
2019-03-02rescached: simplify the logic of return on processForwardResponseShulhan
2019-03-02cmd/resolver: generate unique request IDShulhan
Also, fix the name server that being requested on error.
2019-03-02rescached: run multiple routines to process request queueShulhan
The number of maximum routines is equal to maximum forwarder (4 routines).
2019-03-02cacheworker: remove method update()Shulhan
Method update() on cacheworker basically contains one line statement. Also, update the log format to print ID of query and response and total caches.
2019-03-02README: update documentation on running DNS over HTTPSShulhan
User that need to run DoH in local need to import or accept the certificate manually through Firefox exception list.
2019-03-02go.mod: update dependency github.com/shuLhan/share to v0.4.0Shulhan
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.