2016-05-06 19:49 GMT+02:00 Thomas Maerz <
tma...@brewerscience.com>:
>
> > Clients are not being pointed correctly, clients joined to the domain
> should be pointed at the DCs first, anything they do not know, they ask
> their forwarders.
>
> Although I agree that what you’re suggesting is a sane configuration,
> there are other ways to do it and I have tried it both ways. As I’ve
> explained in my first post, curgently all clients are pointed at BIND
> servers which forward all requests for
ad.companyname.com to the S4 AD DC
> DNS servers. The S4 AD servers are authoritative for zone
>
ad.companyname.com. The zone is resolvable whether or not you point at
> the BIND servers or the DCs directly.
>
>
I'm working for a pretty big company and as every pretty big company they
are pretty much teams managing IT things. Regarding DNS things that I
didn't knew well I first went into DNS team office to speak about
integrating AD in their information system. Of course I was directed to the
person who know the better their DNS configuration, how to manage it. This
person was aware about AD, she managed Bind servers and DNS questions for
years. Her reply was to produce a configuration which is very like what
described Thomas.
What we are supposed to do once will go to prod mode is to declare AD zones
with type = forward on company's DNS server. The type forward for zones
could be seen as a trick to avoid looking for NS for a given, the zone we
declare with type = forward, because in that zone we declare forwarders
which are, in our cases, AD DNS servers. So when main DNS receive a DNS
request for AD zone this Bind server check its own zones, it find the
forward zone which match the request, look into that zone and discover that
the request must be forwarded to some others DNS servers which are listed
with IP addresses. The main DNS server forward the request, receive the
reply (found or or not) and forward the reply to the client.
Now I must say Rowland was right when he wrote "clients joined to the
domain should be pointed at the DCs first". This would have been a mistake
if the sentence was "clients joined to the domain MUST be pointed at the
DCs first".
Example to clarify: the point is the client can resolve AD zone, nothing
else.
We can buy a domain to some registrar.
We prepare 4 DC, 2 are declared as DNS server on our registrar.
For that works these two MUST have a valid public IP on the internet where
Bind is listening.
We declare two NS on our AD zones, the two DNS servers declared into the
registrar. Now any DNS server on the net can resolve any records from our
AD zones. And our client can resolve AD zones using their ISP DNS servers
or using the two internal DNS server (if they can reach them) or using the
two public AD DNS servers.
No need to point client resolver to AD DNS server. The need is to
understand DNS enough to make it work.
DNS is meant to be stacked. One resolver, any reply, because DNS servers
know how to ask each other to find replies.
> He needs to stop using his main DNS servers for queries about the AD
> domain and as you have pointed out, his clients need to use the DNS domain
> name of the AD DCs
>
> My DNS configuration is working — BUT I have also pointed the clients
> directly at the Samba4 domain controller DNS servers and that does not make
> any difference. Few of the computers are joined to the domain (They are
> macs). This domain is primarily used for authentication.
>
>
No real surprise what does not as the issue should not come from DNS stack
but from client configuration.
No surprise neither reading that your client thought it belongs to
companyname.tld rather than ad.companyname.tld. Change that and the issue
should disappear. Something should not read Kerberos configuration to know
what realm to use but rather relies on system's FQDN and use the system's
FQDN to extract domain name to be use as realm. "realm" could be replaced
by "AD domain" in previous sentence if the issue is from non-kerberos tool.
As mentioned in my first mail Louis explained me on Linux systems you can
set FQDN using /etc/hosts but also using some sysctl.conf parameter, some
kernel parameter. This configuration through Kernel parameter is a deeper
configuration - from what I feel I understood, no more than feelings, sorry
- and should apply better than if you only configure that system through
/etc/hosts.
Best regards,
mathias dufresne