Ben
b8b4dc323a
feat: support CNAME records in customDNS mappings ( #1352 )
...
Co-authored-by: Ben McHone <ben@mchone.dev>
2024-01-29 11:22:03 -05:00
ThinkChaos
b2fa627a46
fix(docs): remove note that slipped in
2023-12-05 20:52:46 -05:00
ThinkChaos
7a3c054b43
feat: add `upstreams.init.strategy`
...
Replaces `startVerifyUpstream` and behaves just like
`blocking.loading.strategy`.
We use the bootstrap resolver for any requests that arrive before the
upstreams are initialized.
2023-12-05 20:52:46 -05:00
Kwitsch
11543356b6
Bugfix in ECS forward ( #1290 )
...
* fixed override bug in forward
* set prettier as default formatter for yaml
* added ecs to example config
2023-12-03 14:29:31 -05:00
ThinkChaos
9760735f3a
refactor(config): move `dohUserAgent` to `upstreams.userAgent`
...
That way it can be accessed without using `GetConfig`
2023-11-23 08:45:18 -05:00
ThinkChaos
b386e22ebe
refactor: embed `Upstreams` in `UpstreamGroup` to make values accessible
...
Move `startVerifyUpstream` to `upstreams.startVerify` so it's accessible
via `UpstreamGroup` and we don't need to pass `startVerify` to all
resolver constructors that call `NewUpstreamResolver`.
Also has the nice benefit of greatly reducing the usage of `GetConfig`.
2023-11-23 08:45:18 -05:00
DerRockWolf
94663eeaeb
feat: add upstream strategy `random` ( #1221 )
...
Also simplify code by getting rid of `resolversPerClient` and all surrounding logic.
2023-11-18 15:42:14 -05:00
ThinkChaos
b498bc5094
feat(lists): add support for wildcard lists using a custom Trie ( #1233 )
2023-11-17 15:58:35 +01:00
Dimitri Herzog
b1d014017b
feat(querylog): add flushInterval parameter
2023-09-14 15:06:10 +02:00
DerRockWolf
c112e86740
feat: add upstream strategy `strict` ( #1093 )
2023-08-21 09:50:23 +02:00
ThinkChaos
639fba5323
refactor(config): allow more configuration for `upstreams`
...
Rename the `upstream` option to `upstreams.groups` so we can have
more `upstreams` options.
2023-08-01 15:01:40 -04:00
ThinkChaos
56633da0a7
feat(sudn): refactor and expand supported special use domains RFCs
2023-07-14 17:38:13 -04:00
ThinkChaos
cfc3699ab5
feat: support multiple hosts files
2023-07-07 09:16:20 -04:00
ThinkChaos
795f3ddf93
fix: configuration for FQDN only resolver ( #1025 )
2023-05-15 10:24:07 -04:00
mandrav
015b565137
Add maxErrorsPerFile blocking configuration ( #986 )
...
* Add maxErrorsPerFile blocking configuration
The default max errors per file of 5 is too small IMHO.
This commit makes this number user-configurable.
* squash: fix lint
* squash: docs
* squash: change type to int to allow -1
* squash: test that the `maxErrorsPerFile` is actually used
---------
Co-authored-by: ThinkChaos <ThinkChaos@users.noreply.github.com>
2023-04-12 20:43:49 +02:00
ThinkChaos
e47a8b7f60
feat(bootstrap): support IP only encrypted DNS
...
Also make `tcp+udp` upstreams use any IPs provided.
2023-01-18 18:57:55 +01:00
ThinkChaos
a79459987b
feat(bootstrap): support multiple upstreams
...
If more than one upstream is configured, they are raced via
a `ParallelBestResolver`.
2023-01-18 18:57:55 +01:00
Kwitsch
b73cd3b5ba
Config restructuring ( #771 )
...
To declutter the global top level config options i propose the grouping of ports and logging options as child options of top level options.
New structure:
ports:
dns: 43
http: 4000
https: 4443
tls: 853
log:
level: warn
format: json
privacy: true
timestamp: false
2022-12-02 21:55:40 +01:00
Dimitri Herzog
2b49c2048f
feat(querylog): define which information should be logged ( #765 ) ( #766 )
2022-11-26 22:12:56 +01:00
Kwitsch
c19d4bd60d
feat: Support for redis sentinel( #632 )
...
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-11-24 14:37:48 +01:00
Dimitri Herzog
3e95b12eed
feat: caching for empty DNS responses ( #700 )
2022-11-08 21:45:28 +01:00
ThinkChaos
f48908f7be
Add connectIPVersion to choose how Blocky connects to other hosts ( #589 )
...
This impacts both DNS lookups and lists downloading.
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-09-19 21:44:12 +02:00
Kwitsch
fd93f67899
feat: new parameter "StartStrategy" ( #566 ) ( #636 )
...
Blocky should start resolving DNS traffic as soon as possible
2022-09-03 22:12:07 +02:00
FileGo
b49695fad3
Added config, simplified check for loopback
2022-08-23 07:54:03 +01:00
FileGo
377f4764fe
Enable start as long as at least one upstream resolver in group is reachable ( #608 )
...
* Enable start if one upstream resolver fails
* Will now check if upstream actually works
* Fixed default upstream in some tests
* Increase timeouts in some tests
* change default value of "StartVerifyUpstream" to false
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-08-21 17:21:08 +02:00
Kwitsch
5e9eaa2965
delivery of blocking group as EDNS error(560) ( #611 )
2022-08-06 22:30:26 +02:00
Adyanth H
31cf8c77d5
Add fallbackUpstream for conditional mapping ( #593 )
2022-07-11 08:06:42 +02:00
Peter Dave Hello
e6957a3ff8
Make DoH/DoT server mininum TLS version configurable ( #546 )
...
* Make DoH/DoT server mininum TLS version configurable
* Disable gosec lint on server TLSConfig
2022-06-04 08:23:40 +02:00
FileGo
92fd6235bf
Self-signed certificate generation ( #532 )
...
* Added self-signed certificate functionality
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-05-27 22:20:44 +02:00
Dimitri Herzog
a8ab753d7b
docs: change caching parameters to more useful values ( #527 )
2022-05-19 11:15:48 +02:00
Peter Dave Hello
bec973b4f3
Update reference configuration file in the docs ( #480 )
...
To prevent the warning:
> net prefix tcp is deprecated, using tcp+udp as default fallback
2022-04-02 21:54:20 +02:00
Dimitri Herzog
28789ee7fe
filtering of queries ( #450 ) ( #474 )
2022-04-01 08:58:09 +02:00
Dimitri Herzog
d1289e8452
removed deprecated configuration parameters
2022-03-28 21:48:49 +02:00
Dimitri Herzog
2bb2f97f8f
CustomDNS: parameter "filterUnmappedTypes" to allow/disable forwarding to the upstream resolver ( #467 )
2022-03-22 22:15:31 +01:00
ThinkChaos
f8b6e59ef4
Add rewrite support to custom DNS ( #449 )
...
This commit extracts rewriting logic from `ConditionalUpstreamResolver`
into the new `RewriterResolver`, and uses that to enable rewriting for
the `CustomDNSResolver`.
`RewriterResolver` wraps a resolver and applies the rewrite to the
request that is forwarded to the inner resolver.
It also introduces a new optional interface: `NamedResolver`.
This allows a `Resolver` to choose what its user friendly name is,
instead of always being its type name.
2022-03-17 22:30:21 +01:00
Johannes Kastl
e6a5af33f2
docs: changed default for tlsPort to 853 in example configuration file ( #457 )
2022-03-17 09:08:52 +01:00
Dimitri Herzog
b59ce46d44
replace blocking upstream resolvers in the documentation ( #426 )
2022-02-01 21:54:17 +01:00
Kwitsch
42a09f0c85
removed dead links ( #424 )
2022-01-30 21:39:40 +01:00
Kwitsch
ee451f8b36
Sync blocking enable/disable over redis ( #377 ) ( #403 )
...
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-01-19 22:03:41 +01:00
FileGo
c176b02ac9
Support Postgresql database for query log ( #348 )
...
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-01-07 21:42:06 +01:00
FileGo
b43c7aa2cb
Enable resolving hosts file ( #362 )
...
fixes #362
Co-authored-by: Dimitri Herzog <dimitri.herzog@gmail.com>
2022-01-04 15:40:09 +01:00
Dimitri Herzog
ccc6f888e3
externalize retry parameters for query log
2021-12-21 22:03:02 +01:00
ThinkChaos
69dc38308c
Allow configuring multiple listen addresses for each port ( #372 )
2021-12-20 22:13:07 +01:00
ThinkChaos
cbcd09c898
Allow configuring custom DNS TTL ( #370 )
2021-12-16 21:38:01 +01:00
Dimitri Herzog
aa5457dd1d
Added download parameters
2021-11-14 21:47:24 +01:00
Dimitri Herzog
2aed746d2f
introduced "failStartOnListError" parameter ( #310 )
2021-10-14 21:53:54 +02:00
Dimitri Herzog
c22292eb19
DoT (DNS-over-TLS) server ( #303 )
2021-10-04 21:56:18 +02:00
Dimitri Herzog
ae9b12f15a
Configurable upstream lookup timeout ( #256 )
2021-09-19 22:49:38 +02:00
Dimitri Herzog
e7ddab714b
regex support for matching ( #12 )
2021-09-18 22:51:20 +02:00
Dimitri Herzog
925c6f97eb
Make list download timeout configurable ( #254 )
2021-09-15 07:41:20 +02:00