{ "upstream_dns": { "req": { "upstream_dns": [ "8.8.8.8:77", "8.8.4.4:77" ] }, "want": { "upstream_dns": [ "8.8.8.8:77", "8.8.4.4:77" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "bootstraps": { "req": { "bootstrap_dns": [ "9.9.9.10" ] }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "blocking_mode_good": { "req": { "blocking_mode": "refused" }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "refused", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "blocking_mode_bad": { "req": { "blocking_mode": "custom_ip" }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "ratelimit": { "req": { "ratelimit": 6 }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 6, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "edns_cs_enabled": { "req": { "edns_cs_enabled": true }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": true, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "edns_cs_use_custom": { "req": { "edns_cs_enabled": true, "edns_cs_use_custom": true, "edns_cs_custom_ip": "1.2.3.4" }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": true, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": true, "edns_cs_custom_ip": "1.2.3.4" } }, "edns_cs_use_custom_bad_ip": { "req": { "edns_cs_enabled": true, "edns_cs_use_custom": true, "edns_cs_custom_ip": "bad.ip" }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "dnssec_enabled": { "req": { "dnssec_enabled": true }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": true, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "cache_size": { "req": { "cache_size": 1024 }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 1024, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "upstream_mode_parallel": { "req": { "upstream_mode": "parallel" }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "parallel", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "upstream_mode_fastest_addr": { "req": { "upstream_mode": "fastest_addr" }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "fastest_addr", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "upstream_dns_bad": { "req": { "upstream_dns": [ "!!!" ] }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "bootstraps_bad": { "req": { "bootstrap_dns": [ "a" ] }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "cache_bad_ttl": { "req": { "cache_ttl_min": 1024, "cache_ttl_max": 512 }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "upstream_mode_bad": { "req": { "upstream_mode": "somethingelse" }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "local_ptr_upstreams_good": { "req": { "local_ptr_upstreams": [ "123.123.123.123" ] }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [ "123.123.123.123" ], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "local_ptr_upstreams_bad": { "req": { "local_ptr_upstreams": [ "123.123.123.123", "[/non.arpa/]#" ] }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "local_ptr_upstreams_null": { "req": { "local_ptr_upstreams": null }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "fallbacks": { "req": { "fallback_dns": [ "9.9.9.10" ] }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [ "9.9.9.10" ], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "blocked_response_ttl": { "req": { "blocked_response_ttl": 11 }, "want": { "upstream_dns": [ "8.8.8.8:53", "8.8.4.4:53" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 11, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } }, "multiple_domain_specific_upstreams": { "req": { "upstream_dns": [ "8.8.8.8:77", "[/example.com/]8.8.4.4:77 9.9.9.10 https://1.1.1.1" ] }, "want": { "upstream_dns": [ "8.8.8.8:77", "[/example.com/]8.8.4.4:77 9.9.9.10 https://1.1.1.1" ], "upstream_dns_file": "", "bootstrap_dns": [ "9.9.9.10", "149.112.112.10", "2620:fe::10", "2620:fe::fe:10" ], "fallback_dns": [], "protection_enabled": true, "protection_disabled_until": null, "ratelimit": 0, "blocking_mode": "default", "blocking_ipv4": "", "blocking_ipv6": "", "blocked_response_ttl": 10, "edns_cs_enabled": false, "dnssec_enabled": false, "disable_ipv6": false, "upstream_mode": "", "cache_size": 0, "cache_ttl_min": 0, "cache_ttl_max": 0, "cache_optimistic": false, "resolve_clients": false, "use_private_ptr_resolvers": false, "local_ptr_upstreams": [], "edns_cs_use_custom": false, "edns_cs_custom_ip": "" } } }