{"id":3771,"date":"2023-06-10T15:22:18","date_gmt":"2023-06-10T15:22:18","guid":{"rendered":"https:\/\/geekmungus.co.uk\/?p=3771"},"modified":"2023-06-10T15:22:19","modified_gmt":"2023-06-10T15:22:19","slug":"recursive-vs-iterative-dns-name-resolution","status":"publish","type":"post","link":"https:\/\/geekmungus.co.uk\/?p=3771","title":{"rendered":"Recursive vs Iterative DNS Name Resolution"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">You&#8217;ll use DNS all day everyday, but did you know there are two different forms of DNS query, recursive and iterative. Understanding how these work ensures that you understand how clients will be using your DNS server(s) and what access they might need to external DNS servers and therefore how that would affect things like firewall configuration. So let&#8217;s explore the two types:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A\u00a0<strong>recursive DNS query<\/strong>\u00a0is a type of query where the DNS server who recieved your query will do all the leg work needed to get you the answer (i.e. go off and ask other DNS servers) and then give you the result.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An&nbsp;<strong>iterative DNS query<\/strong>&nbsp;is a type of query where the DNS server who recieved your query won&#8217;t do the leg work, but will give you a referral to a DNS server that might have the answer; in this case your DNS client would need to do all the leg work needed to get you the answer, which basically means following all the referrals.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"767\" height=\"886\" src=\"https:\/\/geekmungus.co.uk\/wp-content\/uploads\/2023\/06\/image-5.png\" alt=\"\" class=\"wp-image-3772\" srcset=\"https:\/\/geekmungus.co.uk\/wp-content\/uploads\/2023\/06\/image-5.png 767w, https:\/\/geekmungus.co.uk\/wp-content\/uploads\/2023\/06\/image-5-260x300.png 260w\" sizes=\"auto, (max-width: 767px) 100vw, 767px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>You&#8217;ll use DNS all day everyday, but did you know there are two different forms of DNS query, recursive and iterative. Understanding how these work ensures that you understand how clients will be using your DNS server(s) and what access they might need to external DNS servers and therefore how that would affect things like &#8230; <a title=\"Recursive vs Iterative DNS Name Resolution\" class=\"read-more\" href=\"https:\/\/geekmungus.co.uk\/?p=3771\" aria-label=\"Read more about Recursive vs Iterative DNS Name Resolution\">Read more<\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"class_list":["post-3771","post","type-post","status-publish","format-standard","hentry","category-dns"],"_links":{"self":[{"href":"https:\/\/geekmungus.co.uk\/index.php?rest_route=\/wp\/v2\/posts\/3771","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/geekmungus.co.uk\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/geekmungus.co.uk\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/geekmungus.co.uk\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/geekmungus.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3771"}],"version-history":[{"count":1,"href":"https:\/\/geekmungus.co.uk\/index.php?rest_route=\/wp\/v2\/posts\/3771\/revisions"}],"predecessor-version":[{"id":3773,"href":"https:\/\/geekmungus.co.uk\/index.php?rest_route=\/wp\/v2\/posts\/3771\/revisions\/3773"}],"wp:attachment":[{"href":"https:\/\/geekmungus.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3771"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/geekmungus.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3771"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/geekmungus.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3771"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}