<div dir="ltr"><div>[ Classification Level: <font color="blue">GENERAL BUSINESS</font> ]</div><br class="cursAfter">Or, if you absolutely *must* use the same namespace internally and externally (oftentimes you can't talk the business out of that), your internal version should be a more-or-less a superset of your external version.<div><br></div><div>How you keep those in sync is up to you. For us, we have a centralized management system that makes the relevant updates in parallel. The big caveat with that is, those few situations where the DNS needs to be "schizophrenic", i.e. resolve differently in the internal versus external versions of the zones. We try to keep that nonsense to a minimum, but when we can't talk people out of it, we handle it on an exception basis.</div><div><br></div><div>I suppose another approach is to have a backend database which tags each record as being "internal", "external" or "both", and then the respective versions of the zones get generated accordingly. You'd need something to ensure referential integrity, though, otherwise you might end up with dangling references (e.g. CNAME/MX/SRV targets), bad delegations, etc.</div><div><br></div><div> - Kevin</div><div><br></div><div>P.S. No offense to schizophrenics. I guess a more accurate term would be "multiple personality".</div><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Sep 3, 2020 at 3:52 AM Matus UHLAR - fantomas <<a href="mailto:uhlar@fantomas.sk">uhlar@fantomas.sk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 02.09.20 15:00, Taylor Vierrether via bind-users wrote:<br>
> I am attempting to set up an internal DNS server that is authoritative for<br>
> internal resources, but also will respond for external resources on the<br>
> same domain that it does not have records for.<br>
><br>
> For example, I have a domain <a href="http://sub.example.com" rel="noreferrer" target="_blank">sub.example.com</a> , and I want to have internal<br>
> entries in the BIND zone file for <a href="http://host1.sub.example.com" rel="noreferrer" target="_blank">host1.sub.example.com</a> and<br>
> <a href="http://host2.sub.example.com" rel="noreferrer" target="_blank">host2.sub.example.com</a>. That part is working fine. However, there is a<br>
> publicly available DNS entry for <a href="http://sub.example.com" rel="noreferrer" target="_blank">sub.example.com</a> that I want my internal<br>
> clients to be able to resolve, but I don’t want to have the IP in the BIND<br>
> zone file, because the IP is dynamic.<br>
<br>
you can delegate that entry elsewhere.<br>
<br>
> There are also some hosts (<a href="http://host3.sub.example.com" rel="noreferrer" target="_blank">host3.sub.example.com</a> ) and<br>
> (<a href="http://host4.sub.example.com" rel="noreferrer" target="_blank">host4.sub.example.com</a>) that are externally resolvable that I don’t want<br>
> to put in my internal BIND file because they are not controlled by me. <br>
> (Think CNAME to a SaaS application)<br>
<br>
you can delegate those records somewhere.<br>
<br>
>I’ve attempted to do this as follows, and it seems to make sense that it<br>
> would work, but it does not.<br>
><br>
><br>
>named.conf:<br>
><br>
>zone “<a href="http://sub.example.com" rel="noreferrer" target="_blank">sub.example.com</a>" IN {<br>
> type master;<br>
> file "/etc/bind/<a href="http://sub.example.com" target="_blank">sub.example.com</a>.zone";<br>
> forward first;<br>
> forwarders { 1.1.1.1; 1.0.0.1; };<br>
>};<br>
<br>
forwarding is not used for zone other than "type forward".<br>
<br>
>What actually happens, is if I query for <a href="http://sub.example.com" rel="noreferrer" target="_blank">sub.example.com</a> I get the following from nslookup:<br>
>*** Can't find <a href="http://sub.example.com" rel="noreferrer" target="_blank">sub.example.com</a>: No answer<br>
<br>
if you search for "<a href="http://sub.example.com" rel="noreferrer" target="_blank">sub.example.com</a>" record, you can not delegate that one,<br>
of course.<br>
<br>
you apparently should use redesign your DNS. Easiest way would be using<br>
different domain internally.<br>
<br>
>And if I query for <a href="http://host3.example.com" rel="noreferrer" target="_blank">host3.example.com</a> , I get the following from nslookup:<br>
>** server can't find <a href="http://host3.sub.example.com" rel="noreferrer" target="_blank">host3.sub.example.com</a>: NXDOMAIN<br>
<br>
note that nslookup is very bad program for tracking DNS errors.<br>
use "host" or "dig" for that case.<br>
<br>
<br>
-- <br>
Matus UHLAR - fantomas, <a href="mailto:uhlar@fantomas.sk" target="_blank">uhlar@fantomas.sk</a> ; <a href="http://www.fantomas.sk/" rel="noreferrer" target="_blank">http://www.fantomas.sk/</a><br>
Warning: I wish NOT to receive e-mail advertising to this address.<br>
Varovanie: na tuto adresu chcem NEDOSTAVAT akukolvek reklamnu postu.<br>
I just got lost in thought. It was unfamiliar territory.<br>
_______________________________________________<br>
Please visit <a href="https://lists.isc.org/mailman/listinfo/bind-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/listinfo/bind-users</a> to unsubscribe from this list<br>
<br>
ISC funds the development of this software with paid support subscriptions. Contact us at <a href="https://www.isc.org/contact/" rel="noreferrer" target="_blank">https://www.isc.org/contact/</a> for more information.<br>
<br>
<br>
bind-users mailing list<br>
<a href="mailto:bind-users@lists.isc.org" target="_blank">bind-users@lists.isc.org</a><br>
<a href="https://lists.isc.org/mailman/listinfo/bind-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/listinfo/bind-users</a><br>
</blockquote></div></div></div>