RE: About query response on a view

2015-12-10 Thread Okan Bostan
Hi,
Firstly thanks for all the responses, giving more details about our config:

Internal view: Internal DNS service for the internal clients. Accepts requests 
from internal IP, Recursion is on, forwarding the out of zone queries to our 
cache-only DNS servers. Also serves some zone information.
External view: Authoritative DNS service for our domain.  Accepts requests from 
external IP, No recursion,

Also we will consider to separate the recursive and authoritative servers, but 
separating them with views isn't a good solution?

@Eray Aslan, additional-from-cache and additional-from-auth settings did the 
trick, now server gives "query refused"

@Barry Finkel, yes I typed dig ww. At that point, every recursive query gives 
the same output. But thanks for the info.

@Mark Elkins,In our setup, we have one machine with 2 IP addresses. (option 3) 
We are planning to use DNNSEC, Could you give more information about the 
possible DNSSEC problem?
I fix the referral problem with Eray's solution.

@Kevin Darcy, (a) match-clients is a C class network address space. (b) I 
explained it above. Thanks for the detailed explanation and the note.

Regards,

Okan Bostan

From: bind-users-boun...@lists.isc.org 
[mailto:bind-users-boun...@lists.isc.org] On Behalf Of Darcy Kevin (FCA)
Sent: Thursday, December 10, 2015 1:43 AM
To: bind-users@lists.isc.org 
Subject: RE: About query response on a view

Well, there some things that are not clear from your message:

A) when you do your "dig", what is your source address, what is your 
destination address, and what is your match-clients ACL for the internal view? 
These values have a bearing on what view you're going to match. Seems like 
you're matching the wrong view - the external one, which has no recursion -- 
and getting a mere "referral" for www.google.com (root 
nameservers) instead of an answer.
B) you say your internal view has "forwarders". Why? What's the purpose of 
that? To where are you forwarding? To public resolvers like Google? If you're 
forwarding to *yourself*, then either you created a forwarding loop, or (if you 
excluded your own IP in the match-clients ACL of the internal view) the 
forwarded query is matching the wrong view, without (as you show below) any 
allow-recursion exception, so, again, as expected you're getting a mere 
referral instead of an answer. Unless you're forwarding to an external entity 
that provides some added value (e.g. enhanced performance/availability, DNSSEC 
validation, blacklisting of known malicious domains, anti-forgery measures, 
etc.) consider just replacing the forwarder configuration with an appropriate 
"hints" zone definition in your internal view and letting it resolve names 
iteratively. You didn't say what platform you were migrating from, but if it 
was forwarding-centric, understand that forwarding is much less heavily used in 
the BIND world.

NOTE: if you want to publically post ACLs containing internal address ranges, 
it's fine to obfuscate those ranges, as long as you preserve their "essence", 
e.g. large-versus-small, public-versus-private-versus-localhost. It's only when 
folks obfuscate names and addresses that are publically-visible anyway, that 
the obfuscation sometimes gets in the way of diagnosing the problem and folks 
on this list get somewhat ornery. For the ultimate in Internet Engineering 
etiquette, use addresses based on the RFC 5737 "documentation only" ranges.



- Kevin

From: bind-users-boun...@lists.isc.org 
[mailto:bind-users-boun...@lists.isc.org] On Behalf Of Okan Bostan
Sent: Wednesday, December 09, 2015 4:11 AM
To: bind-users@lists.isc.org
Subject: About query response on a view

Hello List,

We are planning to migrate to Bind dns, I'm a bit newbie.

In our design we have two views; int and ext.
As internal view, recursion is on and we have our internal zones & forwarders. 
I have no problem with internal view.

In external view, recursion in no. Also have some zones. In testing external 
view, I can query the records in zones, thats not a problem also.

But when I try to query, for example www.google.com it 
returns the root servers records by dig.

;; QUESTION SECTION:
;ww.IN  A

;; AUTHORITY SECTION:
.   518400  IN  NS  D.ROOT-SERVERS.NET.
.   518400  IN  NS  M.ROOT-SERVERS.NET.
.   518400  IN  NS  C.ROOT-SERVERS.NET.
.   518400  IN  NS  J.ROOT-SERVERS.NET.
.   518400  IN  NS  G.ROOT-SERVERS.NET.
.   518400  IN  NS  

Re: putting several master DNS hosts behind a vip

2015-12-10 Thread Anand Buddhdev
On 10/12/15 00:32, blrmaani wrote:

Hi Blr,

> I would like to put 4 DNS masters behind a vip and have several
> slaves doing the zone transfer from the VIP-IP. Is this normal?
> 
> The usual approach is to have slaves getting zone transfers from
> multiple masters. What is the disadvantage of having slaves using just
> the vip and have all masters behind the vip?

There's something else to keep in mind. Suppose you have 4 servers
behind the VIP. One of them has an updated zone, and sends notify to a
slave. If the slave now tries an XFR, its TCP connection may actually
end up on another master in the group. If that master isn't yet updated
with the latest copy of the zone, the client will not actually get an
update.

Of course, this all depends on how you're updating your masters, but
since we don't know that, I can't comment further.

Regards,
Anand
___
Please visit https://lists.isc.org/mailman/listinfo/bind-users to unsubscribe 
from this list

bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users


Re: About query response on a view

2015-12-10 Thread Mark Andrews

In message <1449745839.4651.50.ca...@posix.co.za>, Mark Elkins writes:
>
> On Thu, 2015-12-10 at 08:53 +, Okan Bostan wrote:
> > Hi,
> > Firstly thanks for all the responses, giving more details about our
> > config:
> >
> > Internal view: Internal DNS service for the internal clients. Accepts
> > requests from internal IP, Recursion is on, forwarding the out of zone
> > queries to our cache-only DNS servers. Also serves some zone
> > information.
> > External view: Authoritative DNS service for our domain.  Accepts
> > requests from external IP, No recursion,
> >
> > Also we will consider to separate the recursive and authoritative
> > servers, but separating them with views isn’t a good solution?
> >
> > @Eray Aslan, additional-from-cache and additional-from-auth settings
> > did the trick, now server gives “query refused”
> >
> > @Barry Finkel, yes I typed dig ww. At that point, every recursive
> > query gives the same output. But thanks for the info.
> >
> > @Mark Elkins,In our setup, we have one machine with 2 IP addresses.
> > (option 3) We are planning to use DNNSEC, Could you give more
> > information about the possible DNSSEC problem?
>
> Resolver Problem:
> DNSSEC requires an appropriately configured recursive resolver that can
> chase answers and signatures down from the root. It should not also be
> authoritative (ie have Zones). To the best of my knowledge, answers from
> Zones that the Software instance is authoritative for will never be
> DNSSEC validated (AD bit set). This might not initially seem like a
> problem (you trust your own setup) but things like DANE will not work,
> ie DANE in an SMTP environment.

Only if the DANE client is broken.  In general client can't trust
AD (think coffee shop) so the DANE client needs to do validation
for itself.  Once a client is validating itself AD is irrelevent.

> Resolver Solution:
> Move the Internal Views of Authoritaive Data (Internal Zones) to a Third
> IP address.
> Run the Recursive Server on the "Resolver Only" IP address, perhaps use
> UNBOUND (I like BIND - but multiple instances of BIND is going to become
> administratively painful). 

Absolute hogwash.  It's easy enough to configure a single instance
of named to provide authoritative services on on address and recursive
services on a second address.

As for running multiple instances we do that all the time when
testing and it really isn't that hard.

controls { inet address ...; };
option {
listen-on { address; };
query-source address;
notify-source address;
transfer-source address;
pid-file "/var/run/named-address/named.pid";
 or
pid-file "/var/run/named/named-address.pid";
};

> It MUST be the only Port 53 application on
> that 3rd IP address. Basically, copy the root KSK into a file owned by
> unbound and tell unbound to use that file.
> # cd /etc/unbound  (whatever)
> # dig . dnskey | grep 257 > root-anchors.txt
> # chown unbound: root.anchors.txt
> ...then add "auto-trust-anchor-file: root.anchors.txt" to unbound.conf
> (Confirm the authenticity of the root dnskey/KSK from
> https://dnssec.co.za and other sources)
> 
> DNSSEC Signing your Zones is easy enough but I've never tried to sign an
> Internal and External version of the same Zone. Why complicate life.
> You'll have to hand-roll a solution.
-- 
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742 INTERNET: ma...@isc.org
___
Please visit https://lists.isc.org/mailman/listinfo/bind-users to unsubscribe 
from this list

bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users

Re: About query response on a view

2015-12-10 Thread Eray Aslan
On Thu, Dec 10, 2015 at 08:53:52AM +, Okan Bostan wrote:
> Also we will consider to separate the recursive and authoritative
> servers, but separating them with views isn't a good solution?

Not really, no.  They serve different purposes and hence require
different settings.  You can munge it for a while but shouldn't for any
serious use.  Since you are setting up a new infrastructure, do the
right thing and make them seperate.  For further info try searching the
archives.

Unbound is also a populer choice for a resolver.

-- 
Eray Aslan 
___
Please visit https://lists.isc.org/mailman/listinfo/bind-users to unsubscribe 
from this list

bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users


Re: About query response on a view

2015-12-10 Thread Mark Elkins
On Thu, 2015-12-10 at 08:53 +, Okan Bostan wrote:
> Hi,
> Firstly thanks for all the responses, giving more details about our
> config:
> 
> Internal view: Internal DNS service for the internal clients. Accepts
> requests from internal IP, Recursion is on, forwarding the out of zone
> queries to our cache-only DNS servers. Also serves some zone
> information. 
> External view: Authoritative DNS service for our domain.  Accepts
> requests from external IP, No recursion, 
> 
> Also we will consider to separate the recursive and authoritative
> servers, but separating them with views isn’t a good solution?
> 
> @Eray Aslan, additional-from-cache and additional-from-auth settings
> did the trick, now server gives “query refused”
> 
> @Barry Finkel, yes I typed dig ww. At that point, every recursive
> query gives the same output. But thanks for the info. 
> 
> @Mark Elkins,In our setup, we have one machine with 2 IP addresses.
> (option 3) We are planning to use DNNSEC, Could you give more
> information about the possible DNSSEC problem?

Resolver Problem:
DNSSEC requires an appropriately configured recursive resolver that can
chase answers and signatures down from the root. It should not also be
authoritative (ie have Zones). To the best of my knowledge, answers from
Zones that the Software instance is authoritative for will never be
DNSSEC validated (AD bit set). This might not initially seem like a
problem (you trust your own setup) but things like DANE will not work,
ie DANE in an SMTP environment.

Resolver Solution:
Move the Internal Views of Authoritaive Data (Internal Zones) to a Third
IP address.
Run the Recursive Server on the "Resolver Only" IP address, perhaps use
UNBOUND (I like BIND - but multiple instances of BIND is going to become
administratively painful). It MUST be the only Port 53 application on
that 3rd IP address. Basically, copy the root KSK into a file owned by
unbound and tell unbound to use that file.
# cd /etc/unbound  (whatever)
# dig . dnskey | grep 257 > root-anchors.txt
# chown unbound: root.anchors.txt
...then add "auto-trust-anchor-file: root.anchors.txt" to unbound.conf
(Confirm the authenticity of the root dnskey/KSK from
https://dnssec.co.za and other sources)

DNSSEC Signing your Zones is easy enough but I've never tried to sign an
Internal and External version of the same Zone. Why complicate life.
You'll have to hand-roll a solution.


> I fix the referral problem with Eray’s solution.
> 
> @Kevin Darcy, (a) match-clients is a C class network address space.
> (b) I explained it above. Thanks for the detailed explanation and the
> note. 
> 
> Regards,
> 
> Okan Bostan
> 
>  
> 
> From: bind-users-boun...@lists.isc.org
> [mailto:bind-users-boun...@lists.isc.org] On Behalf Of Darcy Kevin
> (FCA)
> Sent: Thursday, December 10, 2015 1:43 AM
> To: bind-users@lists.isc.org 
> Subject: RE: About query response on a view
> 
> 
>  
> 
> Well, there some things that are not clear from your message:
> 
>  
> 
> A) when you do your “dig”, what is your source address, what is your
> destination address, and what is your match-clients ACL for the
> internal view? These values have a bearing on what view you’re going
> to match. Seems like you’re matching the wrong view – the external
> one, which has no recursion -- and getting a mere “referral”
> forwww.google.com (root nameservers) instead of an answer.
> 
> B) you say your internal view has “forwarders”. Why? What’s the
> purpose of that? To where are you forwarding? To public resolvers like
> Google? If you’re forwarding to *yourself*, then either you created a
> forwarding loop, or (if you excluded your own IP in the match-clients
> ACL of the internal view) the forwarded query is matching the wrong
> view, without (as you show below) any allow-recursion exception, so,
> again, as expected you’re getting a mere referral instead of an
> answer. Unless you’re forwarding to an external entity that provides
> some added value (e.g. enhanced performance/availability, DNSSEC
> validation, blacklisting of known malicious domains, anti-forgery
> measures, etc.) consider just replacing the forwarder configuration
> with an appropriate “hints” zone definition in your internal view and
> letting it resolve names iteratively. You didn’t say what platform you
> were migrating from, but if it was forwarding-centric, understand that
> forwarding is much less heavily used in the BIND world.
> 
>  
> 
> NOTE: if you want to publically post ACLs containing internal address
> ranges, it’s fine to obfuscate those ranges, as long as you preserve
> their “essence”, e.g. large-versus-small,
> public-versus-private-versus-localhost. It’s only when folks obfuscate
> names and addresses that are publically-visible anyway, that the
> obfuscation sometimes gets in the way of diagnosing the problem and
> folks on this list get somewhat ornery. For the ultimate in Internet
> Engineering etiquette, use addresses based on the RFC 5737
> 

Re: putting several master DNS hosts behind a vip

2015-12-10 Thread Phil Mayers

On 09/12/15 23:32, blrmaani wrote:

Hi, I would like to put 4 DNS masters behind a vip and have several
slaves doing the zone transfer from the VIP-IP. Is this normal?


In my experience no, this is not normal.

You might consider putting a "virtual" or "service" IP on your master(s) 
that you can move around to new locations during re-org, DR or other 
scenarios without having to reconfigure slaves - this is what we do.




The usual approach is to have slaves getting zone transfers from
multiple masters. What is the disadvantage of having slaves using
just the vip and have all masters behind the vip?


Someone has already mentioned NOTIFY and the return XFR not going to the 
same server, but more generally the fact that it's not necessary - DN 
supports XFR from multiple masters - means you're introducing a feature, 
adding complexity to the system, and without clear value, this is 
usually a bad idea.

___
Please visit https://lists.isc.org/mailman/listinfo/bind-users to unsubscribe 
from this list

bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users