Frank Denis
6f047e07b8
Bump
2018-05-10 22:17:57 +02:00
Frank Denis
bcaff6e3bd
2.0.11
2018-04-27 00:12:09 +02:00
Frank Denis
a5b8401131
Bump
2018-04-16 02:33:10 +02:00
Frank Denis
e2dd9c97a2
Remove b2
...
Fixes #347
2018-04-11 14:05:16 +02:00
Frank Denis
aa538969a3
New beta
2018-04-09 13:27:02 +02:00
Frank Denis
fcdf7d7e55
Update ChangeLog
2018-04-07 23:14:15 +02:00
Frank Denis
fbe91ee58b
No need to initialize xTransport before we have all the parameters
2018-04-07 22:33:11 +02:00
Frank Denis
a938eeff7b
Mainly revert 869d44c30e
...
Fixing #304 doesn't look trivial
The service module needs to know the arguments right away.
The arguments haven't been parsed yet. And if we do, we will prevent
further arguments to be added to the set. Including the ones added
by the service module itself.
So, we have quite of a circular dependency here.
If someone with some Go knowledge can fix that, that would be amazing.
But it's probably never going to happen.
Meanwhile, we can try to save the current directory and document
that we have to be in that directory when running the install command.
Which is not going to work on Windows, so this is a big fucking mess
2018-04-03 20:15:33 +02:00
Frank Denis
c88e480a15
Include the -config option in the installed service
...
Untested on Linux and Windows. Fear.
Fixes #304
2018-04-03 19:42:27 +02:00
Frank Denis
5cc4663081
Bump
2018-03-29 11:22:20 +02:00
Frank Denis
50053d32a5
Bump
2018-03-18 09:21:36 -07:00
Frank Denis
a0aeeabfa2
Nits
2018-03-17 14:47:17 -07:00
Frank Denis
2c7513a2c8
2.0.6
2018-03-02 11:05:58 +01:00
Frank Denis
85a64e3327
Add -pidfile
...
Fixes #200
2018-02-28 18:11:48 +01:00
Frank Denis
89d2973458
2.0.5
2018-02-27 09:51:26 +01:00
Frank Denis
38fd879b56
Check record type in xTransport
...
Prepare for IPv6-only support by the way
Fixes #189
2018-02-26 14:50:01 +01:00
Frank Denis
6000f5073a
2.0.4
2018-02-23 17:08:13 +01:00
Frank Denis
8d4f6770e5
Bump
2018-02-22 23:55:03 +01:00
Frank Denis
ebd55ba954
Bump
2018-02-21 00:23:11 +01:00
Frank Denis
547e444afd
Service installation: bail out with a meaningful error message on unsupported platforms
...
Fixes #154
2018-02-20 00:34:06 +01:00
Frank Denis
81ba5ef2c6
Update ChangeLog
2018-02-19 18:42:29 +01:00
Frank Denis
16c75172ad
Remove "starting"
...
Fixes #97
2018-02-06 19:33:58 +01:00
Frank Denis
453299e49a
2.0.0 final
2018-02-06 16:13:06 +01:00
Frank Denis
88434fc39f
Prepare support for multiple load balancing strategies
2018-02-04 21:13:54 +01:00
Frank Denis
a4b70fa56d
Last released candidate, so people can test cloaking
2018-02-04 12:00:24 +01:00
Frank Denis
588d8dabde
rc2
2018-02-03 12:53:43 +01:00
Frank Denis
f513ab21fa
Check if the config file exists from the current directory
...
Try the executable directory if it fails
Then, go to that config file directory no matter what
Fixes #80
2018-02-03 10:46:47 +01:00
Frank Denis
6efd904b9f
2.0.0 release candidate
2018-02-01 10:26:14 +01:00
Frank Denis
f6571af24f
Nits
2018-01-31 08:38:22 +01:00
Frank Denis
c39197f7b2
Prepare for beta12
2018-01-30 15:58:13 +01:00
Frank Denis
ecaf18f614
Use a fallback resolver if the local DNS configuration doesn't work
...
This should fix all chicken-and-egg issues
2018-01-30 15:47:39 +01:00
Frank Denis
24c21d5eb2
Start moving things to a custom transport
2018-01-30 13:29:47 +01:00
Frank Denis
c2494cfc40
Make file paths relative to the path of the configuration file
2018-01-29 23:57:20 +01:00
Frank Denis
b6e5f55870
Move the proxy struct to its own file
2018-01-29 23:47:04 +01:00
Frank Denis
479d9d14fd
Reduce verbosity
2018-01-29 04:03:59 +01:00
Frank Denis
cf12fb170a
Use a custom transport and a host->ip cache
...
maybe
Fixes #45
2018-01-29 03:58:39 +01:00
Frank Denis
9eeb68f3a1
beta11
2018-01-27 18:18:28 +01:00
Frank Denis
be1e99ea32
DoH: send a dummy query before measuring the RTT to ignore the handshake
2018-01-27 16:48:22 +01:00
Frank Denis
50d0c0449f
Initial support for DNS-over-HTTP2 -- Yes, it works with Google.
2018-01-27 15:26:08 +01:00
Frank Denis
ff5bba1ba4
up
2018-01-25 15:55:27 +01:00
Frank Denis
996d9be4e3
Improve message if /proc/self/exe doesn't exist (?)
...
Fixes #26
2018-01-24 16:55:28 +01:00
Frank Denis
732c451dd4
Add max_clients to cap the maximum number of client queries
2018-01-24 16:51:26 +01:00
Frank Denis
94f9c14ad7
Only attempt to use systemd on linux
...
Remove plan9 builds
2018-01-24 15:14:48 +01:00
Frank Denis
c184ce1a03
systemd support
...
How does it work? I don't know. Does it work? I don't know.
Would I encourage its use? No.
2018-01-24 14:44:32 +01:00
Frank Denis
0ce20518db
Make the UDP and TCP listeners more generic
2018-01-24 14:22:56 +01:00
Frank Denis
1bcb791270
up
2018-01-24 14:13:29 +01:00
Frank Denis
3dcedac390
beta8
2018-01-21 19:52:51 +01:00
Frank Denis
8bcba92f97
Add an undocumented option to ignore cert timestamps
2018-01-21 18:10:38 +01:00
Frank Denis
05e07e8b69
Add a simple built-in DNS client for testing
2018-01-21 18:02:32 +01:00
Frank Denis
d9b5625226
IP blocking
2018-01-21 16:07:44 +01:00
Frank Denis
4f42dd01a4
nxlog
2018-01-20 17:03:48 +01:00
Frank Denis
1e0e01e8e1
NXLOG: a new output plugin to log suspicious queries
2018-01-20 16:59:40 +01:00
Frank Denis
47fdc45b2d
beta5
2018-01-20 14:15:20 +01:00
Frank Denis
066db6a080
Replace logged_qtypes with ignored_qtypes
2018-01-20 13:27:37 +01:00
Frank Denis
187de17396
Don't prefetch more frequently than 1/min
2018-01-20 00:31:54 +01:00
Frank Denis
1c27d6c230
Improved error handling
2018-01-20 00:30:33 +01:00
Frank Denis
7fbb4c5428
Improve the prefetcher; run a dedicated goroutine
2018-01-19 23:43:45 +01:00
Frank Denis
6e1eaf7b90
More flexible logging; add support for the Windows event log
2018-01-19 20:06:04 +01:00
Frank Denis
7103229609
Add a logged_qtypes feature to log only some query types
2018-01-19 12:57:47 +01:00
Frank Denis
41d5de6e8d
Scheduling
2018-01-19 00:06:18 +01:00
Frank Denis
43e5689387
Schedule a prefetch if we got a set or its signature from a backup cache
...
This is not pretty, and has to be rewritten for the next beta
2018-01-18 23:54:53 +01:00
Frank Denis
a85d012a2b
Prefetch previously unreachable sources URLs after a server is reachable
...
Partial fix for #4
Pave the way for regular, background updates as well
2018-01-18 23:19:14 +01:00
Frank Denis
6c67739b56
bump
2018-01-18 22:23:37 +01:00
Frank Denis
0fcbbfda1f
Add systemd readiness notification
2018-01-18 15:31:08 +01:00
Frank Denis
0a63975d48
Logs can now be sent to files or syslog in addition to stderr
2018-01-18 14:25:45 +01:00
Frank Denis
fd7838ee58
Add a -version command-line switch to print the version
...
Fixes #2
2018-01-18 12:22:25 +01:00
Frank Denis
0e03f684b2
Hotfix for OpenBSD and other OS whose init system is not supported yet
2018-01-18 02:08:08 +01:00
Frank Denis
df3a5f608d
Improve management of multiple servers, and unreachable-at-boot servers
2018-01-17 21:23:01 +01:00
Frank Denis
1140e067ad
Retry more frequently if we don't have any useable certificates
...
This will ahve to be done at startup time as well.
2018-01-17 17:22:29 +01:00
Frank Denis
b9c43c8ef3
Add the ability to log blocked queries
2018-01-17 17:03:42 +01:00
Frank Denis
3fffbaa2a2
Support installation as a service
2018-01-17 11:28:43 +01:00
Frank Denis
3fe6dbd740
Preliminary support for running as a Windows service
2018-01-17 10:58:19 +01:00
Frank Denis
96dadc7aca
Forwarding plugin
2018-01-17 09:44:03 +01:00
Frank Denis
170e2e816e
Implement blocking, fully compatible with rules from version 1
2018-01-17 02:40:47 +01:00
Frank Denis
5685844f43
Implement query logging
2018-01-16 00:23:16 +01:00
Frank Denis
3ffad7be44
Add Init/Drop/Update methods to plugins
...
Eventually, we may want to provide a specific structure for plugin
initialization. Sending the whole Proxy structure doesn't scale well.
2018-01-15 23:07:41 +01:00
Frank Denis
fee0a42dec
Plugins can now access the client IP. Useful for logging and ACLs.
2018-01-14 23:47:49 +01:00
Frank Denis
5e252372d5
Pass the client protocol around, don't infer it from clientAddr
2018-01-14 23:39:55 +01:00
Frank Denis
b2d297fb17
cd to the path of the executable file
2018-01-14 00:56:46 +01:00
Frank Denis
9a3cd91cd7
Use dlog for everything
2018-01-11 11:50:54 +01:00
Frank Denis
735213f45a
Use glog
2018-01-11 02:11:54 +01:00
Frank Denis
3fe60f64c4
So, daemonization only works on linux :/
2018-01-10 19:49:02 +01:00
Frank Denis
99c5273e3a
Add configuration cache size and other parameters
2018-01-10 19:32:56 +01:00
Frank Denis
77cdc1db78
Start implementing a basic cache
2018-01-10 18:32:05 +01:00
Frank Denis
f283105866
Implement the IPv6 block plugin
2018-01-10 17:23:20 +01:00
Frank Denis
fa22cc32d7
Basic load balancing/failover
...
Try to send queries to one of the two fastest servers
2018-01-10 16:42:14 +01:00
Frank Denis
9eeb799d6e
Many improvements
2018-01-10 16:01:29 +01:00
Frank Denis
6dfcb659d4
Handle daemonization
2018-01-10 13:33:06 +01:00
Frank Denis
b86e7f268e
Use more things from the config file
2018-01-10 12:09:59 +01:00
Frank Denis
2822a9781b
Add a config file
2018-01-10 12:02:09 +01:00
Frank Denis
efd0477c2b
Implement an actual estimator for the response size
...
Scale back the minimum question size when relevant.
Did I mention that this is yet another thing that was never properly
implemented in dnscrypt-proxy 1.x?
2018-01-10 09:46:27 +01:00
Frank Denis
f4346691bc
Transform queries via an initial edns mangling plugin
...
Yet another thing that was utterly broken in dnscrypt-proxy v1.x
2018-01-10 09:04:03 +01:00
Frank Denis
d8f8d561c8
Synthesize a truncated response if the response wouldn't fit the local MSS
2018-01-10 02:52:09 +01:00
Frank Denis
3049f43bc7
Nits
2018-01-10 00:32:16 +01:00
Frank Denis
72a6963f2e
Cleanups
2018-01-10 00:31:12 +01:00
Frank Denis
35ec5bd044
We can now receive queries on UDP and forward them on TCP
...
Something that had never been possible with the old implementation
2018-01-09 20:10:06 +01:00
Frank Denis
1a59d93192
Support TCP connection to the backend
2018-01-09 19:47:24 +01:00
Frank Denis
888db6a8fb
The preferred protocol will be a global (for Tor users)
2018-01-09 18:42:24 +01:00
Frank Denis
841bf65d61
Reorganize
2018-01-09 18:32:14 +01:00