{"id":5629,"date":"2023-02-16T13:43:19","date_gmt":"2023-02-16T08:13:19","guid":{"rendered":"https:\/\/trysiteprice.com\/blog\/?p=5629"},"modified":"2023-02-16T13:43:19","modified_gmt":"2023-02-16T08:13:19","slug":"bind-9-configure-views-to-partition-external-and-internal-dns-information","status":"publish","type":"post","link":"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/","title":{"rendered":"BIND 9 Configure Views To Partition External and Internal DNS Information"},"content":{"rendered":"<p>Views in BIND 9 are used to partition DNS information so that different DNS clients can see different sets of records. This can be useful in scenarios where you have both internal and external DNS clients that need to see different sets of records.<\/p>\n<p>To configure views in BIND 9 to partition external and internal DNS information, you can follow these steps:<\/p>\n<ol>\n<li>Configure the external zone: First, you need to configure the external zone for your domain in the <code>named.conf<\/code> file. This zone should contain the DNS records that will be visible to external clients. For example:<\/li>\n<\/ol>\n<div class=\"bg-black mb-4 rounded-md\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans\"><\/div>\n<div class=\"p-4 overflow-y-auto\"><code class=\"!whitespace-pre hljs language-python\">zone <span class=\"hljs-string\">\"example.com\"<\/span> {<br \/>\n    <span class=\"hljs-built_in\">type<\/span> master;<br \/>\n    file <span class=\"hljs-string\">\"\/var\/named\/example.com.external\"<\/span>;<br \/>\n};<br \/>\n<\/code><\/div>\n<\/div>\n<ol start=\"2\">\n<li>Configure the internal zone: Next, you need to configure the internal zone for your domain in the <code>named.conf<\/code> file. This zone should contain the DNS records that will be visible to internal clients. For example:<\/li>\n<\/ol>\n<div class=\"bg-black mb-4 rounded-md\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans\"><\/div>\n<div class=\"p-4 overflow-y-auto\"><code class=\"!whitespace-pre hljs language-python\">zone <span class=\"hljs-string\">\"example.com\"<\/span> {<br \/>\n    <span class=\"hljs-built_in\">type<\/span> master;<br \/>\n    file <span class=\"hljs-string\">\"\/var\/named\/example.com.internal\"<\/span>;<br \/>\n};<br \/>\n<\/code><\/div>\n<\/div>\n<ol start=\"3\">\n<li>Configure the views: Finally, you need to configure the views in the <code>named.conf<\/code> file. Views allow you to partition the DNS information so that external and internal clients see different sets of records. For example:<\/li>\n<\/ol>\n<div class=\"bg-black mb-4 rounded-md\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans\"><\/div>\n<div class=\"p-4 overflow-y-auto\"><code class=\"!whitespace-pre hljs language-python\">view <span class=\"hljs-string\">\"external\"<\/span> {<br \/>\n    <span class=\"hljs-keyword\">match<\/span>-clients { <span class=\"hljs-built_in\">any<\/span>; };<br \/>\n    zone <span class=\"hljs-string\">\"example.com\"<\/span> {<br \/>\n        <span class=\"hljs-built_in\">type<\/span> master;<br \/>\n        file <span class=\"hljs-string\">\"\/var\/named\/example.com.external\"<\/span>;<br \/>\n    };<br \/>\n};<\/p>\n<p>view <span class=\"hljs-string\">\"internal\"<\/span> {<br \/>\n    <span class=\"hljs-keyword\">match<\/span>-clients { localnets; };<br \/>\n    zone <span class=\"hljs-string\">\"example.com\"<\/span> {<br \/>\n        <span class=\"hljs-built_in\">type<\/span> master;<br \/>\n        file <span class=\"hljs-string\">\"\/var\/named\/example.com.internal\"<\/span>;<br \/>\n    };<br \/>\n};<br \/>\n<\/code><\/div>\n<\/div>\n<p>In this example, we have defined two views: <code>external<\/code> and <code>internal<\/code>. The <code>external<\/code> view matches any client, and it uses the external zone file for the <code>example.com<\/code> domain. The <code>internal<\/code> view matches clients on the local network, and it uses the internal zone file for the <code>example.com<\/code> domain.<\/p>\n<p>After configuring the views, you need to restart the BIND 9 service to apply the changes:<\/p>\n<div class=\"bg-black mb-4 rounded-md\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans\"><\/div>\n<div class=\"p-4 overflow-y-auto\"><code class=\"!whitespace-pre hljs\">systemctl restart named<br \/>\n<\/code><\/div>\n<\/div>\n<p>With these configurations, external clients will see the DNS records defined in the <code>example.com.external<\/code> file, while internal clients will see the DNS records defined in the <code>example.com.internal<\/code> file.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Views in BIND 9 are used to partition DNS information so that different DNS clients can see different sets of records. This can be useful in scenarios where you have both internal and external DNS clients that need to see different sets of records. To configure views in BIND 9 to partition external and internal &#8230; <a title=\"BIND 9 Configure Views To Partition External and Internal DNS Information\" class=\"read-more\" href=\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/\" aria-label=\"Read more about BIND 9 Configure Views To Partition External and Internal DNS Information\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-5629","post","type-post","status-publish","format-standard","hentry","category-best-tutorial"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>BIND 9 Configure Views To Partition External and Internal DNS Information - TrySitePrice<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"BIND 9 Configure Views To Partition External and Internal DNS Information - TrySitePrice\" \/>\n<meta property=\"og:description\" content=\"Views in BIND 9 are used to partition DNS information so that different DNS clients can see different sets of records. This can be useful in scenarios where you have both internal and external DNS clients that need to see different sets of records. To configure views in BIND 9 to partition external and internal ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/\" \/>\n<meta property=\"og:site_name\" content=\"TrySitePrice\" \/>\n<meta property=\"article:published_time\" content=\"2023-02-16T08:13:19+00:00\" \/>\n<meta name=\"author\" content=\"Rahul Sahu\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/\"},\"author\":{\"name\":\"Rahul Sahu\",\"@id\":\"https:\/\/trysiteprice.com\/blog\/#\/schema\/person\/358e04eeea4281deacad2f30c58e67f4\"},\"headline\":\"BIND 9 Configure Views To Partition External and Internal DNS Information\",\"datePublished\":\"2023-02-16T08:13:19+00:00\",\"dateModified\":\"2023-02-16T08:13:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/\"},\"wordCount\":255,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/trysiteprice.com\/blog\/#organization\"},\"articleSection\":[\"Best\/Tutorial\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/\",\"url\":\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/\",\"name\":\"BIND 9 Configure Views To Partition External and Internal DNS Information - TrySitePrice\",\"isPartOf\":{\"@id\":\"https:\/\/trysiteprice.com\/blog\/#website\"},\"datePublished\":\"2023-02-16T08:13:19+00:00\",\"dateModified\":\"2023-02-16T08:13:19+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/trysiteprice.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"BIND 9 Configure Views To Partition External and Internal DNS Information\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/trysiteprice.com\/blog\/#website\",\"url\":\"https:\/\/trysiteprice.com\/blog\/\",\"name\":\"TrySitePrice\",\"description\":\"Free Website Value Calculator Tool\",\"publisher\":{\"@id\":\"https:\/\/trysiteprice.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/trysiteprice.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/trysiteprice.com\/blog\/#organization\",\"name\":\"TrySitePrice\",\"url\":\"https:\/\/trysiteprice.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/trysiteprice.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/trysiteprice.com\/blog\/wp-content\/uploads\/2021\/12\/cropped-trysiteprice-logo.png\",\"contentUrl\":\"https:\/\/trysiteprice.com\/blog\/wp-content\/uploads\/2021\/12\/cropped-trysiteprice-logo.png\",\"width\":395,\"height\":268,\"caption\":\"TrySitePrice\"},\"image\":{\"@id\":\"https:\/\/trysiteprice.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/trysiteprice.com\/blog\/#\/schema\/person\/358e04eeea4281deacad2f30c58e67f4\",\"name\":\"Rahul Sahu\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/trysiteprice.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/51f0f95f7b95665f62baed2211572165?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/51f0f95f7b95665f62baed2211572165?s=96&d=mm&r=g\",\"caption\":\"Rahul Sahu\"},\"sameAs\":[\"https:\/\/trysiteprice.com\/blog\"],\"url\":\"https:\/\/trysiteprice.com\/blog\/author\/rsahu4242_trysiteprice\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"BIND 9 Configure Views To Partition External and Internal DNS Information - TrySitePrice","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/","og_locale":"en_US","og_type":"article","og_title":"BIND 9 Configure Views To Partition External and Internal DNS Information - TrySitePrice","og_description":"Views in BIND 9 are used to partition DNS information so that different DNS clients can see different sets of records. This can be useful in scenarios where you have both internal and external DNS clients that need to see different sets of records. To configure views in BIND 9 to partition external and internal ... Read more","og_url":"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/","og_site_name":"TrySitePrice","article_published_time":"2023-02-16T08:13:19+00:00","author":"Rahul Sahu","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/#article","isPartOf":{"@id":"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/"},"author":{"name":"Rahul Sahu","@id":"https:\/\/trysiteprice.com\/blog\/#\/schema\/person\/358e04eeea4281deacad2f30c58e67f4"},"headline":"BIND 9 Configure Views To Partition External and Internal DNS Information","datePublished":"2023-02-16T08:13:19+00:00","dateModified":"2023-02-16T08:13:19+00:00","mainEntityOfPage":{"@id":"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/"},"wordCount":255,"commentCount":0,"publisher":{"@id":"https:\/\/trysiteprice.com\/blog\/#organization"},"articleSection":["Best\/Tutorial"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/","url":"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/","name":"BIND 9 Configure Views To Partition External and Internal DNS Information - TrySitePrice","isPartOf":{"@id":"https:\/\/trysiteprice.com\/blog\/#website"},"datePublished":"2023-02-16T08:13:19+00:00","dateModified":"2023-02-16T08:13:19+00:00","breadcrumb":{"@id":"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/trysiteprice.com\/blog\/bind-9-configure-views-to-partition-external-and-internal-dns-information\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/trysiteprice.com\/blog\/"},{"@type":"ListItem","position":2,"name":"BIND 9 Configure Views To Partition External and Internal DNS Information"}]},{"@type":"WebSite","@id":"https:\/\/trysiteprice.com\/blog\/#website","url":"https:\/\/trysiteprice.com\/blog\/","name":"TrySitePrice","description":"Free Website Value Calculator Tool","publisher":{"@id":"https:\/\/trysiteprice.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/trysiteprice.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/trysiteprice.com\/blog\/#organization","name":"TrySitePrice","url":"https:\/\/trysiteprice.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/trysiteprice.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/trysiteprice.com\/blog\/wp-content\/uploads\/2021\/12\/cropped-trysiteprice-logo.png","contentUrl":"https:\/\/trysiteprice.com\/blog\/wp-content\/uploads\/2021\/12\/cropped-trysiteprice-logo.png","width":395,"height":268,"caption":"TrySitePrice"},"image":{"@id":"https:\/\/trysiteprice.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/trysiteprice.com\/blog\/#\/schema\/person\/358e04eeea4281deacad2f30c58e67f4","name":"Rahul Sahu","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/trysiteprice.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/51f0f95f7b95665f62baed2211572165?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/51f0f95f7b95665f62baed2211572165?s=96&d=mm&r=g","caption":"Rahul Sahu"},"sameAs":["https:\/\/trysiteprice.com\/blog"],"url":"https:\/\/trysiteprice.com\/blog\/author\/rsahu4242_trysiteprice\/"}]}},"_links":{"self":[{"href":"https:\/\/trysiteprice.com\/blog\/wp-json\/wp\/v2\/posts\/5629","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/trysiteprice.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/trysiteprice.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/trysiteprice.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/trysiteprice.com\/blog\/wp-json\/wp\/v2\/comments?post=5629"}],"version-history":[{"count":1,"href":"https:\/\/trysiteprice.com\/blog\/wp-json\/wp\/v2\/posts\/5629\/revisions"}],"predecessor-version":[{"id":5632,"href":"https:\/\/trysiteprice.com\/blog\/wp-json\/wp\/v2\/posts\/5629\/revisions\/5632"}],"wp:attachment":[{"href":"https:\/\/trysiteprice.com\/blog\/wp-json\/wp\/v2\/media?parent=5629"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/trysiteprice.com\/blog\/wp-json\/wp\/v2\/categories?post=5629"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/trysiteprice.com\/blog\/wp-json\/wp\/v2\/tags?post=5629"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}