mirror of https://github.com/0xERR0R/blocky.git
Blocking with conditional upstream (#174)
* blocking with conditional upstream * cache conditional upstream results
This commit is contained in:
parent
7af0c57d04
commit
a31fc8d818
|
@ -144,9 +144,9 @@ func createQueryResolver(cfg *config.Config) resolver.Resolver {
|
|||
resolver.NewStatsResolver(),
|
||||
resolver.NewMetricsResolver(cfg.Prometheus),
|
||||
resolver.NewCustomDNSResolver(cfg.CustomDNS),
|
||||
resolver.NewConditionalUpstreamResolver(cfg.Conditional),
|
||||
resolver.NewBlockingResolver(cfg.Blocking),
|
||||
resolver.NewCachingResolver(cfg.Caching),
|
||||
resolver.NewConditionalUpstreamResolver(cfg.Conditional),
|
||||
resolver.NewParallelBestResolver(cfg.Upstream.ExternalResolvers),
|
||||
)
|
||||
}
|
||||
|
|
|
@ -68,6 +68,7 @@ var _ = Describe("Running DNS server", func() {
|
|||
Conditional: config.ConditionalUpstreamConfig{
|
||||
Mapping: config.ConditionalUpstreamMapping{
|
||||
Upstreams: map[string][]config.Upstream{
|
||||
"net.cn": {upstreamClient},
|
||||
"fritz.box": {upstreamFritzbox},
|
||||
},
|
||||
},
|
||||
|
@ -169,6 +170,13 @@ var _ = Describe("Running DNS server", func() {
|
|||
Expect(resp.Answer).Should(BeDNSRecord("host.fritz.box.", dns.TypeA, 3600, "192.168.178.2"))
|
||||
})
|
||||
})
|
||||
Context("Conditional upstream blocking", func() {
|
||||
It("Query should be blocked, domain is in default group", func() {
|
||||
resp = requestServer(util.NewMsgWithQuestion("doubleclick.net.cn.", dns.TypeA))
|
||||
|
||||
Expect(resp.Answer).Should(BeDNSRecord("doubleclick.net.cn.", dns.TypeA, 21600, "0.0.0.0"))
|
||||
})
|
||||
})
|
||||
Context("Blocking default group", func() {
|
||||
It("Query should be blocked, domain is in default group", func() {
|
||||
resp = requestServer(util.NewMsgWithQuestion("doubleclick.net.", dns.TypeA))
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
doubleclick.net
|
||||
doubleclick.net
|
||||
doubleclick.net.cn
|
Loading…
Reference in New Issue