Commit Graph

96 Commits

Author SHA1 Message Date
Simon Zolin 705a9d909d * SB/PC: use 4-character hash in request
* use hash prefix as the cache key

Squashed commit of the following:

commit d719a84ee9b9cf43aaab4f53d07451645ea836db
Merge: d9d6d443 97df1989
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Aug 13 11:41:28 2020 +0300

    Merge remote-tracking branch 'origin/master' into sbpc

commit d9d6d44376c44959f2216b08e577d8e5c5f65bff
Merge: 0a8b2483 de92c852
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Aug 13 11:23:14 2020 +0300

    Merge remote-tracking branch 'origin/master' into sbpc

commit 0a8b24839683683a9d327ecf57a7d182b3996b1d
Merge: 0255a24a 9b9902f0
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Wed Aug 12 20:21:22 2020 +0300

    Merge remote-tracking branch 'origin/master' into sbpc

commit 0255a24a191efd2e4ef23d6a00a7a9fed8831730
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Wed Aug 12 17:16:57 2020 +0300

    - TestServerCustomClientUpstream(): fix

commit d2311902f887be9621a9d9312c73f899dd269440
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Wed Aug 12 17:07:12 2020 +0300

    * SB/PC: hard-code Family server IP addresses to prevent from requesting them at runtime

commit ee340108f11f98d49a7af2a7e8a228c25ab1537a
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Wed Aug 12 17:05:57 2020 +0300

    * dnsproxy v0.30.1

commit f5f53ba7116ad525204d00b80352202eee88b78c
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Wed Aug 12 14:53:23 2020 +0300

    minor

commit fb4631e2cd570b0fd5ae26ec2b1890361275a5a8
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Mon Aug 10 20:07:27 2020 +0300

    * SB/PC: implement new cache

commit f9f58461a6efbcfacd798f7640a4645cf1971cb2
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Aug 7 19:31:05 2020 +0300

    doc

commit ed69626a6c119ab1a3b187f5afbd4cef708c3159
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Aug 7 18:25:57 2020 +0300

    * SB/PC: use hostname prefix for cache

commit afa8040c8c0836c7e59e6fb9aaf1caccd132ea8f
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Jul 31 11:19:49 2020 +0300

    * SB/PC: use 4-character hash in request
2020-08-13 11:49:42 +03:00
Andrey Meshkov d2bf1e176e Update urlfilter to v0.11.2 2020-07-23 20:48:50 +03:00
Simon Zolin c71b8d3ad2 * use urlfilter v0.11.1
Squashed commit of the following:

commit 35d2c34355b093ec1daa40f156809a7cae089c20
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Jul 23 18:00:43 2020 +0300

    * use urlfilter v0.11.1
2020-07-23 18:09:39 +03:00
Tejas Kokje 44aad1515a + service: Adding freebsd arm support 2020-07-13 13:34:38 +03:00
Simon Zolin e38a1a5833 * use dnsproxy v0.29.1
Close #1777

Squashed commit of the following:

commit 5aab12162e9366ccf37bfe662f22bee59b8f98f5
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Mon Jun 29 12:07:34 2020 +0300

    * use dnsproxy v0.29.1
2020-06-29 14:03:12 +03:00
Simon Zolin 890876cb05 + pass client Name and IP to dnsfilter
* use urlfilter v0.11.0
2020-06-23 14:36:26 +03:00
Simon Zolin a869ec4cbb * DNS API: new setting "upstream_mode"; remove "fastest_addr", "parallel_requests"
* use dnsproxy v0.29.0

Squashed commit of the following:

commit f18b7231f3f3f84446c0d837855af342f3c971b4
Merge: 501a4e06 dae275e6
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Wed Jun 10 15:24:15 2020 +0300

    Merge remote-tracking branch 'origin/master' into update-dnsproxy

commit 501a4e06ab350e46ff78656141d925de9f2e4996
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Jun 5 12:47:13 2020 +0300

    openapi

commit 3930bd196572924f164ed011629356a0ac0ec631
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Jun 5 12:21:32 2020 +0300

    * DNS API: new setting "upstream_mode"; remove "fastest_addr", "parallel_requests"

    * use dnsproxy v0.29.0
2020-06-10 15:33:23 +03:00
DannyHinshaw e23b79dda0 + config: Added in lumberjack to handle rolling logs. Added more config properties around new log feature.
Reset logger max file size config. Fix #1573.

Remove verbose from default config.
2020-06-02 19:18:37 +03:00
Simon Zolin ab6be6980a * urlfilter v0.10.1 2020-05-26 19:36:24 +03:00
Andrey Meshkov 67a39045fc -(dnsforward): custom client per-domain upstreams
Closes: https://github.com/AdguardTeam/AdGuardHome/issues/1539
2020-05-13 20:31:43 +03:00
Andrey Meshkov 8909599739 +(dnsforward): added bogus-nxdomain setting
Closes: https://github.com/AdguardTeam/AdGuardHome/issues/1545
2020-05-08 18:39:37 +03:00
Simon Zolin efc69047a1 dnsproxy v0.27.1 2020-04-30 10:57:07 +03:00
Andrey Meshkov 08b033dd04 *(dnsforward): upgrade dnsproxy to v0.27.0 2020-04-26 19:16:10 +03:00
Simon Zolin 490784c285 dnsproxy v0.26.3 2020-04-24 10:25:46 +03:00
Simon Zolin 9b7c118103 * dnsproxy v0.26.2
Close #1588

Squashed commit of the following:

commit a6eedb9883737d93332b59e9de69fbf07b8f81d4
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Mon Apr 20 18:33:37 2020 +0300

    * dnsproxy v0.26.2
2020-04-21 11:08:59 +03:00
Andrey Meshkov e24e5741fe *: fix freebsd build 2020-04-16 20:35:58 +03:00
Andrey Meshkov 96bee3955c *: upd dependencies, go mod tidy 2020-04-16 20:04:34 +03:00
Simon Zolin 158f5e854d * use dnsproxy v0.26.0
Close #1490

Squashed commit of the following:

commit df600c2b11e72783b1422087b861d51a310be2e2
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Apr 16 19:06:19 2020 +0300

    * use dnsproxy v0.26.0
2020-04-16 19:26:17 +03:00
Andrey Meshkov 8f00e1ca5e *: golibs to v0.4.2 2020-04-06 23:40:57 +03:00
Andrey Meshkov 0d66451084 *(global): fix compat with windows
 Closes: https://github.com/AdguardTeam/AdGuardHome/issues/1549
2020-04-06 22:32:18 +03:00
Andrey Meshkov d5b826e12f *(global): upgrade dependencies, start using Go v1.14 2020-04-05 18:21:26 +03:00
Simon Zolin c8285c41d7 Merge: + DNS: new settings cache_ttl_min, cache_ttl_max
Close #1214

Squashed commit of the following:

commit e445125556c9f9441c3d6936cb923db0a7e58260
Merge: c88b25ca 63923fa8
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Mar 20 19:12:21 2020 +0300

    Merge remote-tracking branch 'origin/master' into 1214-cache-min-ttl

commit c88b25ca4b641918f32811212c2cf3b63a5bf654
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Mar 20 19:02:17 2020 +0300

    minor

commit ec3dc21bb211941c71adcec38796eeadb978b2b7
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Mar 19 12:18:08 2020 +0300

    + DNS: new settings cache_ttl_min, cache_ttl_max
2020-03-20 19:16:55 +03:00
Simon Zolin 63923fa882 Merge: + DNS: use rules from /etc/hosts
- fix filtering logic: don't do DNS response check for Rewrite rules

Close #1478

Squashed commit of the following:

commit 1206b94881289ff664b7c8998ea97c1455da1ff8
Merge: c462577a 5fe98474
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Mar 20 15:00:25 2020 +0300

    Merge remote-tracking branch 'origin/master' into 1478-auto-records

commit c462577ad84754f5b3ea4cd58339838af817fe36
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Mar 20 14:33:17 2020 +0300

    minor

commit 7e824ba5f432648a976bc4b8076a645ba875ef70
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Mar 20 14:29:54 2020 +0300

    more tests

commit a22b62136c5cfd84cd0450897aef9e7d2e20585a
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Mar 20 14:09:52 2020 +0300

    rename, move

commit 9e5ed49ad3c27c57d540edf18b78d29e56afb067
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Mar 19 15:33:27 2020 +0300

    fix logic - don't do DNS response check for Rewrite rules

commit 6cfabc0348a41883b8bba834626a7e8760b76bf2
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Mar 19 11:35:07 2020 +0300

    minor

commit 4540aed9327566078e5087d43c30f4e8bffab7b9
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Mar 19 11:03:24 2020 +0300

    fix

commit 9ddddf7bded812da48613cc07084e360c15ddd0e
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Mar 19 10:49:13 2020 +0300

    fix

commit c5f8ef745b6f2a768be8a2ab23ad80b01b0aa54f
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Mar 19 10:37:26 2020 +0300

    fix

commit f4be00947bf0528c9a7cd4f09c4090db444c4694
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Mon Mar 16 20:13:00 2020 +0300

    + auto DNS records from /etc/hosts
2020-03-20 15:05:43 +03:00
Andrey Meshkov 9d5f201ddf *(dnsforward): added QLogFile struct
This struct is supposed to use an easier algorithm for scanning query
log files. The end goal is allow us scanning multiple query log files.
2020-02-18 13:02:59 +03:00
Simon Zolin 1a88a63415 Merge: - filtering: fix host rules matching
Close #1365

Squashed commit of the following:

commit 9cbca2d330ae12b222633201f4864abb7f7cd7a3
Merge: 8ce6b015 be93dc34
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Jan 30 19:03:21 2020 +0300

    Merge remote-tracking branch 'origin/master' into 1365-hostrules

commit 8ce6b0151a2b552c4ccb3ee1f7e36ce260ba96ea
Merge: c752ab33 5c814b29
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Jan 30 18:57:20 2020 +0300

    Merge remote-tracking branch 'origin/master' into 1365-hostrules

commit c752ab33b074312f10772467436a27a90339a919
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Jan 30 14:18:58 2020 +0300

    use new Match()

commit ce2f628aca9f934c776c8c690813efeed5d5427b
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Jan 30 12:03:21 2020 +0300

    minor

commit ebebe02a63821fedd3904db384406c30de52d515
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Jan 30 11:21:47 2020 +0300

    * dnsfilter: use new version of urlfilter's Match()

commit 84edc44f2ee5a67316114f048740825259cc87ff
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Fri Jan 24 14:10:41 2020 +0300

    - filtering: fix host rules matching

    Match by both IPv4 and IPv6 rules, not just the first one in list.
2020-01-30 19:06:09 +03:00
Simon Zolin 91c2712366 + clients: support per-client tags 2020-01-28 14:06:52 +03:00
Simon Zolin 749dc30064 dnsproxy v0.23.7 2020-01-16 15:10:27 +03:00
Andrey Meshkov 94d86eee10 -(dnsforward): update dnsproxy to v0.23.6 2019-12-31 18:09:55 +03:00
Andrey Meshkov 4808b33c01 *(dnsfilter): update urlfilter to v0.7.2 2019-12-25 18:46:59 +03:00
Andrey Meshkov 5556e34e7e -(dnsforward): use dnsproxy v0.23.5 - fix DO caching 2019-12-25 14:29:33 +03:00
Andrey Meshkov 670810c433 -(dnsforward): the issue with cache and custom upstreams
 Closes: https://github.com/AdguardTeam/AdGuardHome/issues/1301
2019-12-24 11:19:36 +03:00
Simon Zolin 8521635f63 - DNS: fix slow response to /status and /access/list requests 2019-12-17 13:09:03 +03:00
Simon Zolin aa202277fb Merge: * update translations
Close #1250

Squashed commit of the following:

commit e722a3e3b4b1049c5df22b3f11b5826992d3cc6c
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Dec 12 18:27:51 2019 +0300

    update ru

commit 086e722a4dc1922ac7b8aff537050689900a8bd0
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Dec 12 18:15:15 2019 +0300

    fix cloudflare -> quad9, update es

commit 86c235936d2f86e536f45fc475f29b43eb695e3d
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Dec 12 18:01:20 2019 +0300

    * update es, ru, sr-cs

commit 2b6b510b998b7e7b2f4c3fa5d7af57dc5413a611
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Dec 12 17:43:05 2019 +0300

    * update 'no'

commit 1de6215aa90374ee147bbd0a685643232e98e4c8
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Dec 12 17:41:37 2019 +0300

    * use dnsproxy v0.23.2

commit c545a1bf7e4e706b45b4670b804a50bf8d75bae3
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Dec 12 17:36:37 2019 +0300

    update ru

commit c22eec9bcfad67284e21cfc4e6b06fb63a64d25d
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Thu Dec 12 17:22:03 2019 +0300

    * update translations;  add sr-cs, fa, hr
2019-12-12 18:42:51 +03:00
Simon Zolin 0a66913b4d Merge: * use upstream servers directly for the internal DNS resolver
Close #1212

* Server.Start(config *ServerConfig) -> Start()
+ Server.Prepare(config *ServerConfig)
+ Server.Resolve(host string)
+ Server.Exchange()
* rDNS: use internal DNS resolver
- clients: fix race in WriteDiskConfig()
- fix race: move 'clients' object from 'configuration' to 'HomeContext'
    Go race detector didn't like our 'clients' object in 'configuration'.
+ add AGH startup test
    . Create a configuration file
    . Start AGH instance
    . Check Web server
    . Check DNS server
    . Wait until the filters are downloaded
    . Stop and cleanup
* move module objects from config.* to Context.*
* don't call log.SetLevel() if not necessary
    This helps to avoid Go race detector's warning
* ci.sh: 'make' and then run tests

Squashed commit of the following:

commit 86500c7f749307f37af4cc8c2a1066f679d0cfad
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 18:08:53 2019 +0300

    minor

commit 6e6abb9dca3cd250c458bec23aa30d2250a9eb40
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 18:08:31 2019 +0300

    * ci.sh: 'make' and then run tests

commit 114192eefea6800e565ba9ab238202c006516c27
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 17:50:04 2019 +0300

    fix

commit d426deea7f02cdfd4c7217a38c59e51251956a0f
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 17:46:33 2019 +0300

    tests

commit 7b350edf03027895b4e43dee908d0155a9b0ac9b
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 15:56:12 2019 +0300

    fix test

commit 2f5f116873bbbfdd4bb7f82a596f9e1f5c2bcfd8
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 15:48:56 2019 +0300

    fix tests

commit 3fbdc77f9c34726e2295185279444983652d559e
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 15:45:00 2019 +0300

    linter

commit 9da0b6965a2b6863bcd552fa83a4de2866600bb8
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 15:33:23 2019 +0300

    * config.dnsctx.whois -> Context.whois

commit c71ebdbdf6efd88c877b2f243c69d3bc00a997d7
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 15:31:08 2019 +0300

    * don't call log.SetLevel() if not necessary

    This helps to avoid Go race detector's warning

commit 0f250220133cefdcb0843a50000cb932802b8324
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 15:28:19 2019 +0300

    * rdns: refactor

commit c460d8c9414940dac852e390b6c1b4d4fb38dff9
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 14:08:08 2019 +0300

    Revert: * stats: serialize access to 'limit'

    Use 'conf *Config' and update it atomically, as in querylog module.
    (Note: Race detector still doesn't like it)

commit 488bcb884971276de0d5629384b29e22c59ee7e6
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 13:50:23 2019 +0300

    * config.dnsFilter -> Context.dnsFilter

commit 86c0a6827a450414b50acec7ebfc5220d13b81e4
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 13:45:05 2019 +0300

    * config.dnsServer -> Context.dnsServer

commit ee35ef095ccaabc89e3de0ef52c9b5ed56b36873
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 13:42:10 2019 +0300

    * config.dhcpServer -> Context.dhcpServer

commit 1537001cd211099d5fad01696c0b806ae5d257b1
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 13:39:45 2019 +0300

    * config.queryLog -> Context.queryLog

commit e5955fe4ff1ef6f41763461b37b502ea25a3d04c
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Tue Dec 10 13:03:18 2019 +0300

    * config.httpsServer -> Context.httpsServer

commit 6153c10a9ac173e159d1f05e0db1512579b9203c
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Mon Dec 9 20:12:24 2019 +0300

    * config.httpServer -> Context.httpServer

commit abd021fb94039015cd45c97614e8b78d4694f956
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Mon Dec 9 20:08:05 2019 +0300

    * stats: serialize access to 'limit'

commit 38c2decfd87c712100edcabe62a6d4518719cb53
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Mon Dec 9 19:57:04 2019 +0300

    * config.stats -> Context.stats

commit 6caf8965ad44db9dce9a7a5103aa8fa305ad9a06
Author: Simon Zolin <s.zolin@adguard.com>
Date:   Mon Dec 9 19:45:23 2019 +0300

    fix Restart()

... and 6 more commits
2019-12-11 12:38:58 +03:00
Simon Zolin 8dbdf49c32 * use dnsproxy v0.22.0 and urlfilter v0.7.0 2019-12-03 20:55:45 +03:00
Simon Zolin dc2c68b1e4 * use Go v1.13 2019-11-25 14:10:28 +03:00
Simon Zolin 7c81efcbcb * go.mod: use bbolt from github 2019-11-20 20:14:28 +03:00
Simon Zolin 81e8bbe63c * /control/querylog_config: support optional parameters 2019-11-20 20:12:46 +03:00
Simon Zolin 7f69848084 + dnsfilter: use AG DNS server for SB/PC services
* move SS/SB/PC services to security.go
* remove old useless code (HTTP client)
2019-11-08 10:38:12 +03:00
Simon Zolin 60cc34dc96 * golibs v0.2.4, dnsproxy v0.19.6 2019-10-16 19:20:53 +03:00
Simon Zolin 887c8a905f * golibs v0.2.3
fix travis build
2019-10-15 19:54:08 +03:00
Andrey Meshkov 453645b002 *(dnsfilter): update urlfilter to v0.6.1 2019-10-14 21:24:08 +03:00
Simon Zolin 37fe3c148f * whois: use whois.arin.net
+ robust redirect mechanism
* decrease timeout 30sec -> 5sec
* faster response parsing
* don't use likexian/whois-go package
2019-10-09 18:03:22 +03:00
Andrey Meshkov c020c1d0af *(dnsfilter): upd dependencies 2019-10-02 15:37:41 +03:00
Simon Zolin ccd9cee9df * dnsproxy v0.19.4 2019-09-26 18:48:44 +03:00
Simon Zolin fd592b4dc8 + whois: add WHOIS information for a client
+ return WHOIS info in GET /clients response
2019-09-23 18:12:54 +03:00
Simon Zolin 6304a7b91b + Login page and web sessions
+ /control/login
+ /control/logout
2019-09-19 12:47:55 +03:00
Simon Zolin adb422fedf filtering: refactor; change API; add "filters_update_interval" setting
+ config: "filters_update_interval"
* add /control/filtering_info
* remove /control/filtering/enable
* remove /control/filtering/disable

* add /control/filtering_config
* remove /control/filtering/status

* add /control/filtering/set_url
* remove /control/filtering/enable_url
* remove /control/filtering/disable_url
2019-09-12 18:38:13 +03:00
Simon Zolin 4a58266ba3 + statistics: store in separate file
+ GET /control/stats handler
2019-09-04 10:12:02 +03:00
Simon Zolin 4e8473f8a5 * use dnsproxy v0.19.1 2019-09-02 19:13:20 +03:00