diff --git a/internal/experiment/dnscheck/dnscheck.go b/internal/experiment/dnscheck/dnscheck.go index 815ab2511..5bdb37fbf 100644 --- a/internal/experiment/dnscheck/dnscheck.go +++ b/internal/experiment/dnscheck/dnscheck.go @@ -166,7 +166,7 @@ func (m *Measurer) Run(ctx context.Context, args *model.ExperimentArgs) error { return fmt.Errorf("%w: %s", ErrInvalidURL, err.Error()) } switch URL.Scheme { - case "https", "dot", "udp", "tcp": + case "https", "dot", "udp", "tcp", "system": // all good default: return ErrUnsupportedURLScheme diff --git a/internal/experiment/dnscheck/richerinput.go b/internal/experiment/dnscheck/richerinput.go index 56d17e3cc..69523361b 100644 --- a/internal/experiment/dnscheck/richerinput.go +++ b/internal/experiment/dnscheck/richerinput.go @@ -194,6 +194,27 @@ var defaultInput = []model.ExperimentTarget{ URL: "https://dns.switch.ch/dns-query", Config: &Config{}, }, + &Target{ + URL: "https://root-key-sentinel-is-ta-38696.d2a8n3.rootcanary.net", + Config: &Config{}, + }, + &Target{ + URL: "https://root-key-sentinel-not-ta-38696.d2a8n3.rootcanary.net", + Config: &Config{}, + }, + &Target{ + URL: "https://root-key-sentinel-not-ta-20326.d2a8n3.rootcanary.net", + Config: &Config{}, + }, + + &Target{ + URL: "https://root-key-sentinel-is-ta-20326.d2a8n3.rootcanary.net", + Config: &Config{}, + }, + &Target{ + URL: "https://bogus.d2a8n1.rootcanary.net", + Config: &Config{}, + }, } // extendedInput is an extended input target list for dnscheck. diff --git a/internal/experiment/dnscheck/richerinput_test.go b/internal/experiment/dnscheck/richerinput_test.go index 46f361cf9..01320d0cc 100644 --- a/internal/experiment/dnscheck/richerinput_test.go +++ b/internal/experiment/dnscheck/richerinput_test.go @@ -103,6 +103,83 @@ var testDefaultInput = []model.ExperimentTarget{ DefaultAddrs: "8.8.8.8 8.8.4.4", }, }, + &Target{ + URL: "https://cloudflare-dns.com/dns-query", + Config: &Config{ + HTTP3Enabled: true, + DefaultAddrs: "1.1.1.1 1.0.0.1", + }, + }, + &Target{ + URL: "https://cloudflare-dns.com/dns-query", + Config: &Config{ + DefaultAddrs: "1.1.1.1 1.0.0.1", + }, + }, + &Target{ + URL: "https://dns.quad9.net/dns-query", + Config: &Config{ + HTTP3Enabled: true, + DefaultAddrs: "9.9.9.9", + }, + }, + &Target{ + URL: "https://dns.quad9.net/dns-query", + Config: &Config{ + DefaultAddrs: "9.9.9.9", + }, + }, + &Target{ + URL: "https://dns.adguard.com/dns-query", + Config: &Config{ + HTTP3Enabled: true, + }, + }, + &Target{ + URL: "https://dns.adguard.com/dns-query", + Config: &Config{}, + }, + &Target{ + URL: "https://dns.alidns.com/dns-query", + Config: &Config{ + HTTP3Enabled: true, + }, + }, + &Target{ + URL: "https://dns.alidns.com/dns-query", + Config: &Config{}, + }, + &Target{ + URL: "https://doh.opendns.com/dns-query", + Config: &Config{ + HTTP3Enabled: true, + }, + }, + &Target{ + URL: "https://doh.opendns.com/dns-query", + Config: &Config{}, + }, + &Target{ + URL: "https://dns.nextdns.io/dns-query", + Config: &Config{ + HTTP3Enabled: true, + }, + }, + &Target{ + URL: "https://dns.nextdns.io/dns-query", + Config: &Config{}, + }, + + &Target{ + URL: "https://dns.switch.ch/dns-query", + Config: &Config{ + HTTP3Enabled: true, + }, + }, + &Target{ + URL: "https://dns.switch.ch/dns-query", + Config: &Config{}, + }, } func TestTargetLoaderLoad(t *testing.T) { @@ -269,7 +346,6 @@ func TestTargetLoaderLoad(t *testing.T) { expectErr: nil, expectTargets: nil, }, - { name: "with no options, not inputs, no files", options: &Config{},