Andrey Meshkov
9ff420bb52
Do not store last_updated in the config file anymore
2019-02-10 21:44:16 +03:00
Andrey Meshkov
9a03190a62
Fix #579
...
1. Added --workdir command-line argument that lets configure the working dir.
2. Made "dnsforward" use this workdir parameter when saving/reading querylog.
3. Reworked "dnsforward" -- moved http handlers out of there to control.go
2019-02-10 20:47:43 +03:00
Eugene Bujak
68c8a4d484
Demote some log.printf into log.tracef
2019-02-07 18:24:43 +03:00
Andrey Meshkov
ec6b1f7c42
Added golangci-lint configuration and prepared for the integrattion
2019-01-25 20:13:57 +03:00
Andrey Meshkov
a0157e39c6
Use EnableAll in gometalinter config
2019-01-25 20:13:57 +03:00
Andrey Meshkov
d078851246
gometalinter
2019-01-25 20:13:57 +03:00
Andrey Meshkov
c4ba284964
fix tests
2019-01-05 22:24:07 +03:00
Andrey Meshkov
f3a97ed7ab
Added TCPListenAddr
2019-01-05 22:15:20 +03:00
Eugene Bujak
cbe83e2053
Merge pull request #126 in DNS/adguard-dns from feature/423 to master
...
* commit 'b0c4d88d5454f8dd5a92a73615cce3a31450f56b': (45 commits)
Indicate that DHCP is experimental
Update dnsproxy and dnscrypt, and run go mod tidy.
Fix race conditions found by -race
move log wrapper library outside into hmage/golibs/log
Added check for active DHCP before enable
Use new log wrapper and add more functions to it.
Implement a log wrapper
/dhcp/status -- give out hostname for UI
dhcpd -- Remember hostname, for UI.
Update comment why filter_conn.go is needed.
Fixup of previous commit.
/dhcp/find_active_dhcp -- use interface name from request body
Don't try to start DHCP server if it's not enabled.
Get rid of logrus, it's TTY output is not friendly or human parseable if we will want users to send us logs.
Flag parser -- support options without values, move code for help and verbose into table.
verbose output parameter
Pretty-format leases so it shows human readable MAC address.
Start DHCP on launch if it's enabled in config.
Update makefile to detect changes in dhcpd/*.go
DHCPD — don't forget to make Lease fields public.
...
2018-12-29 20:07:14 +03:00
Eugene Bujak
4d3f1b83a6
Fix race conditions found by -race
2018-12-29 19:13:00 +03:00
Eugene Bujak
368e2d1ebd
move log wrapper library outside into hmage/golibs/log
2018-12-29 19:12:45 +03:00
Eugene Bujak
243603e04c
Fix panic when DNS query doesn't have questions.
...
Closes #491 .
2018-12-29 17:47:50 +03:00
Eugene Bujak
d8802a9709
Use new log wrapper and add more functions to it.
2018-12-29 17:37:18 +03:00
Eugene Bujak
55a7ff7447
Get rid of logrus, it's TTY output is not friendly or human parseable if we will want users to send us logs.
2018-12-29 14:55:35 +03:00
Andrey Meshkov
cc96593ebf
upd to 0.9.3, removed jedist1/xsecretbox from dependencies
2018-12-25 01:59:38 +03:00
Andrey Meshkov
3ade62301b
upgraded dnsproxy to 0.9.2
2018-12-25 00:08:51 +03:00
Andrey Meshkov
62606db1af
fix client IP address
2018-12-24 23:06:36 +03:00
Andrey Meshkov
374a0dc2e5
Fixing review comments
2018-12-24 18:47:33 +03:00
Andrey Meshkov
2bc1d737cc
fix imports
2018-12-24 16:58:48 +03:00
Andrey Meshkov
0a977fee87
changed to logrus
2018-12-24 15:27:14 +03:00
Andrey Meshkov
e711f6e5fe
Start using dnsproxy
2018-12-24 15:19:52 +03:00
Andrey Meshkov
3d17907966
upgrade dnscrypt client to v1.0.0
2018-12-18 13:24:15 +03:00
Andrey Meshkov
45626b139d
Handle cert expiration or rotation
2018-12-18 01:45:19 +03:00
Andrey Meshkov
b30b6b1d66
Fix #284
...
Added DNSCrypt upstreams support
Added DNS Stamps support
2018-12-18 01:20:38 +03:00
Eugene Bujak
1c89e1df32
Resolve into a stub page when blocked by parental or safebrowsing.
...
Closes #475 .
2018-12-11 15:09:07 +03:00
Eugene Bujak
5c4ec62d96
Check if protection is enabled before running the host through dnsfilter.
...
Closes #476 .
2018-12-11 14:20:14 +03:00
Eugene Bujak
8411de8887
Don't log ANY requests if refuseAny is enabled.
...
Closes #472 .
2018-12-07 14:12:26 +03:00
Eugene Bujak
253d8a4016
Pointer for dnsfilter.Result in querylog didn't make things simpler, revert that change and all related changes.
2018-12-06 17:27:38 +03:00
Eugene Bujak
2ba5cb48b2
Fixup of previous commit -- remove unused import.
2018-12-06 17:19:57 +03:00
Eugene Bujak
e056fb2eb9
Remove unused code.
2018-12-06 17:19:04 +03:00
Eugene Bujak
15f3c82238
dnsforward -- fix panic on ANY request
2018-12-06 16:55:05 +03:00
Eugene Bujak
0f5dd661f5
Add support for bootstrapping upstream DNS servers by hostname.
2018-12-06 00:22:20 +03:00
Eugene Bujak
ff1c19cac5
dnsforward -- support tcp:// schema
2018-12-05 21:33:32 +03:00
Eugene Bujak
2a1059107a
dnsforward -- add upstream tests.
2018-12-05 21:33:07 +03:00
Eugene Bujak
bb6c596b22
dnsforward -- add a simple test that launches a server and queries well-known value through it
2018-12-05 20:13:35 +03:00
Eugene Bujak
478ce03386
dnsforward -- implement ratelimit and refuseany
2018-12-05 18:49:19 +03:00
Eugene Bujak
b0149972cc
dnsforward -- give only ip address to querylog, without port
2018-12-05 16:57:21 +03:00
Eugene Bujak
9b43e07d7f
dnsforward -- flush querylog to file on server stop
2018-12-05 16:57:21 +03:00
Eugene Bujak
052f975762
dnsforward -- Move querylog from coredns plugin, a more complex migration with proper API took too long so a simple move was used instead to save time.
2018-12-05 16:57:21 +03:00
Eugene Bujak
e5d2f883ac
dnsforward -- Make Upstream interface give access to Address field.
2018-12-05 16:57:21 +03:00
Eugene Bujak
8396dc2fdb
Update docs for formatting in godoc.
2018-12-05 16:57:21 +03:00
Eugene Bujak
09fb539875
Simplify two lines into one line.
2018-12-05 16:57:21 +03:00
Eugene Bujak
be4b65fdca
dnsforward -- use dnsfilter before cache -- changed settings or filters would require cache invalidation otherwise
2018-12-05 16:57:21 +03:00
Eugene Bujak
0502ef6cc7
dnsforward -- initialize all dnsfilter settings at start and reconfigure
2018-12-05 16:57:21 +03:00
Eugene Bujak
7d2e39ed52
dnsfilter -- Add a convinience function to add all rules from all filters.
2018-12-05 16:57:21 +03:00
Eugene Bujak
e26837d9e8
dnsfilter -- Add parameter to New() to supply optional initial config.
2018-12-05 16:57:21 +03:00
Eugene Bujak
057db71f3b
Get rid of duplicate variable definitions
2018-12-05 16:57:21 +03:00
Eugene Bujak
87c54ebd4c
Move Filter definition from dnsforward to dnsfilter, it belongs there.
2018-12-05 16:57:21 +03:00
Eugene Bujak
a6e0a17454
dnsforward -- trim dot in the end of hostname, dnsfilter does not expect it there
2018-12-05 16:56:11 +03:00
Eugene Bujak
9d87ae95e6
dnsforward -- if given addresses without ports, assign default ports
2018-12-05 16:56:11 +03:00
Eugene Bujak
8316d39b42
Move filtering setting fields from main app to dnsforward.
2018-12-05 16:56:11 +03:00
Eugene Bujak
7120f551c8
dnsforward -- rename BlockedTTL to BlockedResponseTTL to be in line with app's config variable.
2018-12-05 16:56:11 +03:00
Eugene Bujak
e4a3564706
Fix a logical race that wasn't detectable by -race -- we were closing a connection that was already reestablished.
2018-12-05 16:56:11 +03:00
Eugene Bujak
4eb122e973
Avoid duplication of fields in filter struct.
2018-12-05 16:56:11 +03:00
Eugene Bujak
a904f85e61
dnsforward library -- default to plain DNS for high-performance testing.
2018-12-05 16:54:56 +03:00
Eugene Bujak
584f441141
dnsforward library -- introduce IsRunning()
2018-12-05 16:54:56 +03:00
Eugene Bujak
7944f23d95
dnsforward library -- consistently nullify and close listening socket when we're done with it.
2018-12-05 16:54:56 +03:00
Eugene Bujak
639b34c7d1
dnsforward library -- Fix race conditions found by -race
2018-12-05 16:54:56 +03:00
Eugene Bujak
5a548be16c
Add dns forwarding server library
2018-12-05 16:54:56 +03:00