{"id":228,"date":"2022-02-12T18:35:27","date_gmt":"2022-02-12T16:35:27","guid":{"rendered":"http:\/\/cln.io\/blog\/?p=228"},"modified":"2022-12-01T00:55:35","modified_gmt":"2022-11-30T22:55:35","slug":"adguard-parallel-requests","status":"publish","type":"post","link":"https:\/\/cln.io\/blog\/adguard-parallel-requests\/","title":{"rendered":"&#8220;fastest&#8221; \/ \u201cbest\u201d Upstream DNS server(s) for adguard, why choose or benchmark? just parallel requests it all"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Whilst tools like <a href=\"https:\/\/www.grc.com\/dns\/benchmark.htm\" target=\"_blank\" rel=\"noreferrer noopener\">DNS benchmark<\/a> exist, I overlooked a very simple option available in adguard named &#8220;parallel requests&#8221;, this will query all the upstream DNS servers you define, and whatever server replies the fastest will grant you a reply.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Meaning you no longer have to look for the best performing one, let them race each other &#x1f603; so it&#8217;s possible google replies the fastest the one time, or quad9 the other time, or maybe your private <a href=\"https:\/\/www.nlnetlabs.nl\/projects\/unbound\/about\/\" target=\"_blank\" rel=\"noreferrer noopener\">Unbound<\/a> is faster?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"540\" height=\"256\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/08\/brave_DvEJ3TFsVu.png\" alt=\"\" class=\"wp-image-476\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/08\/brave_DvEJ3TFsVu.png 540w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/08\/brave_DvEJ3TFsVu-300x142.png 300w\" sizes=\"auto, (max-width: 540px) 100vw, 540px\" \/><\/figure>\n<\/div>\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"288\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.21.05-1024x288.png\" alt=\"\" class=\"wp-image-229\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.21.05-1024x288.png 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.21.05-300x84.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.21.05-768x216.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.21.05-1536x432.png 1536w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.21.05.png 1842w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">You can even put <strong>multiple technologies<\/strong> like QUIC, DoT (DNS over TLS) and DoH (DNS over HTTPS), in case one would fail, or a provider would have a small hiccup for whatever reason<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">From time to time I would benchmark what DNS server would reply the fastest since I always overlooked the parallel requests option, with this, it really doesn&#8217;t matter anymore, if your list contains some generally &#8220;fast&#8221; DNS upstream servers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">My list (sourced from <a href=\"https:\/\/kb.adguard.com\/general\/dns-providers\" target=\"_blank\" rel=\"noreferrer noopener\">list of known DNS providers<\/a> )<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">https:\/\/security.cloudflare-dns.com\/dns-query\ntls:\/\/security.cloudflare-dns.com\nhttps:\/\/dns.quad9.net\/dns-query\ntls:\/\/dns.quad9.net\nhttps:\/\/dns.adguard.com\/dns-query\ntls:\/\/dns.adguard.com<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"430\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.29.52-1024x430.png\" alt=\"\" class=\"wp-image-230\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.29.52-1024x430.png 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.29.52-300x126.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.29.52-768x322.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.29.52-1536x645.png 1536w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.29.52.png 1916w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">All the servers!<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If you just care about speed, I have compiled a list(s) of <a href=\"https:\/\/cln.io\/blog\/list-of-dns-over-https-servers\/\" target=\"_blank\" rel=\"noreferrer noopener\">DNS-over-HTTPS<\/a> \/ <a href=\"https:\/\/cln.io\/blog\/list-of-tls-dns-over-tls-servers\/\" target=\"_blank\" rel=\"noreferrer noopener\">DNS-over-TLS<\/a> \/ <a href=\"https:\/\/cln.io\/blog\/list-of-quic-dns-servers\/\" target=\"_blank\" rel=\"noreferrer noopener\">DNS-over-QUIC<\/a> \/ <a href=\"https:\/\/cln.io\/blog\/combined-list-of-dns-servers\/\" target=\"_blank\" rel=\"noreferrer noopener\">fuck-it-give-me-all-the-servers-list<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">DNSSEC<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">small remark: do enable DNSSEC even when you are using DoT \/ DoH <a href=\"https:\/\/blog.apnic.net\/2018\/08\/20\/dnssec-and-dns-over-tls\/\" target=\"_blank\" rel=\"noreferrer noopener\">check out why here<\/a><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"426\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.40.48-1024x426.png\" alt=\"\" class=\"wp-image-234\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.40.48-1024x426.png 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.40.48-300x125.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.40.48-768x319.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.40.48-1536x639.png 1536w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/02\/Screenshot-2022-02-12-at-17.40.48.png 1592w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/08\/denny-muller-JyRTi3LoQnc-unsplash-1024x683.jpg\" alt=\"\" class=\"wp-image-472\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/08\/denny-muller-JyRTi3LoQnc-unsplash-1024x683.jpg 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/08\/denny-muller-JyRTi3LoQnc-unsplash-300x200.jpg 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/08\/denny-muller-JyRTi3LoQnc-unsplash-768x512.jpg 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/08\/denny-muller-JyRTi3LoQnc-unsplash-1536x1024.jpg 1536w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/08\/denny-muller-JyRTi3LoQnc-unsplash-2048x1365.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Photo by <a href=\"https:\/\/unsplash.com\/@redaquamedia?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\" target=\"_blank\" rel=\"noreferrer noopener\">Denny M\u00fcller<\/a> on <a href=\"https:\/\/unsplash.com\/s\/photos\/internet?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\" target=\"_blank\" rel=\"noreferrer noopener\">Unsplash<\/a><\/figcaption><\/figure>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Whilst tools like DNS benchmark exist, I overlooked a very simple option available in adguard named &#8220;parallel requests&#8221;, this will query all the upstream DNS servers you define, and whatever server replies the fastest will [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":515,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[35,4,26,27],"tags":[],"class_list":["post-228","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dns","category-homeassistant","category-it","category-privacy"],"_links":{"self":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts\/228","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/comments?post=228"}],"version-history":[{"count":15,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts\/228\/revisions"}],"predecessor-version":[{"id":1202,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts\/228\/revisions\/1202"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/media\/515"}],"wp:attachment":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/media?parent=228"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/categories?post=228"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/tags?post=228"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}