Validate upstream reachability on first DNS configuration (#1489)

* Test upstream DNS for availability as soon as they are received from management

* Use root zone for DNS tests
This commit is contained in:
Viktor Liu
2024-01-23 17:23:12 +01:00
committed by GitHub
parent 5ac9f9fe2f
commit 88117f7d16
8 changed files with 119 additions and 23 deletions

View File

@@ -105,8 +105,13 @@ type mockUpstreamResolver struct {
err error
}
// ExchangeContext mock implementation of ExchangeContext from upstreamResolver
// Exchange mock implementation of Exchangefrom upstreamResolver
func (c mockUpstreamResolver) exchange(upstream string, r *dns.Msg) (*dns.Msg, time.Duration, error) {
return c.exchangeContext(context.Background(), upstream, r)
}
// ExchangeContext mock implementation of ExchangeContext from upstreamResolver
func (c mockUpstreamResolver) exchangeContext(_ context.Context, _ string, _ *dns.Msg) (*dns.Msg, time.Duration, error) {
return c.r, c.rtt, c.err
}