diff options
| author | Shulhan <ms@kilabit.info> | 2021-12-04 00:53:19 +0700 |
|---|---|---|
| committer | Shulhan <ms@kilabit.info> | 2021-12-04 00:53:19 +0700 |
| commit | fb234bbd79b6b4766031a3696e078966738c9d14 (patch) | |
| tree | 373a13f2e22458b9d46b62c7fb1f22d478dbbdad | |
| parent | 4070dc72fd494e81fabaaeee16f3804e575f3c62 (diff) | |
| download | rescached-fb234bbd79b6b4766031a3696e078966738c9d14.tar.xz | |
Release rescached v4.1.0 (2021-12-03)v4.1.0
== Breaking changes
* all: remove using tcp scheme in config and documentation
Using TCP for parent name server is discouraged, because most of server
disallow keeping the connection alive.
The valid use case for TCP connection is when server received truncated
UDP answer.
Using UDP as parent scheme, will automatically assume that the server
also capable of handling query in TCP.
This is required when client (for example, your browser) re-send the query
after receiving truncated UDP answer.
Any query received by rescached through TCP will forwarded to the parent
name server as TCP too, using the same address and port defined in one of
UDP parent.
While at it, use Cloudflare DNS server as default in configuration
and as example in documentation.
== New features
* Add support to save and load caches to/from storage upon restart
rescached now able to save and load caches to local storage upon restart.
On POSIX, the caches is stored in /var/cache/rescached/rescached.gob,
encoded using gob.
Update #9
== Bug fixes
* make the TCP forwarders as complementary of UDP
The TCP forwarders only active when client send the DNS request as TCP.
When the server receive that request it should also forward the request
as TCP not as UDP to prevent the truncated response.
Another use case for TCP is when the response is truncated, the client
will send the query back through TCP connection. The server should
forward this request using TCP instead of UDP.
== Enhancements
* remove the fallback name servers (NS) from server options
The original idea of fallback NS is to send the query to the one
define in resolv.conf, instead of using the one defined by user in
ServerOptions NameServers, when an error occured.
But, most of error usually caused by network (disconnected, time out),
so re-sending query to fallback NS does not have any effect if the
network it self is not working.
This changes remove the unnecessary and complex fallback NS from
server.
* Do not cache truncated answer
Previously only answer with non-zero response code is ignored.
This changes ignore also answer where response header is truncated.
| -rw-r--r-- | CHANGELOG.adoc | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 15fc88e..bda80a0 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -1,4 +1,25 @@ -= Rescached v4.1.0 (2021-11-xx) += Rescached v4.1.0 (2021-12-03) + +== Breaking changes + +* all: remove using tcp scheme in config and documentation + + Using TCP for parent name server is discouraged, because most of server + disallow keeping the connection alive. + + The valid use case for TCP connection is when server received truncated + UDP answer. + + Using UDP as parent scheme, will automatically assume that the server + also capable of handling query in TCP. + This is required when client (for example, your browser) re-send the query + after receiving truncated UDP answer. + Any query received by rescached through TCP will forwarded to the parent + name server as TCP too, using the same address and port defined in one of + UDP parent. + + While at it, use Cloudflare DNS server as default in configuration + and as example in documentation. == New features |
