PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage: Mehrere DNS Server im LAN



Spitfire
22.02.02, 13:24
Hi Leute.

Folgende Situation:

Ich habe in einem LAN zwei Nameserver (ServerA, ServerB) stehen, die jeweils eigene domains haben (domain1.lan, domain2.lan). In allen Clients ist als prim. Nameserver ServerA eingetragen. Namensauflösung und auch der Reverse Lookup von domain1.lan funktionieren wunderbar.

Nun zu meinem Vorhaben:

Ich möchte die Server so konfigurieren, dass alle Anfragen nach domain2.lan über ServerA geleitet nach ServerB gehen, so dass letzenendes ServerB antwortet, wenn nach domain2.lan gefragt wird _ohne_ ServerB als sekundären NS bei allen Clients eintragen zu müssen (obwohl es natürlich die einfachere Möglichkeit ist, ich weiss).

Ich muss dazu sagen, dass ich noch nicht *so* fit mit BIND9 bin. Habe auch vor, mir demnächst mal "DNS und BIND" von O'Reilly zu besorgen. Laut Amazon soll das Buch top sein. Was sagt ihr dazu?

Wär nett, wenn mir jemand was dazu sagen könnte :)

mfG

geronet
22.02.02, 13:56
Entweder setze halt einen Primären und einen Slave DNS-Server ein, der Slave holt sich dann automatisch immer die Zonedateien vom Master wenn sie geändert wurden. Die Clients aus den Netzen nehmen dann jeweils ihren DNS-Server her und falls einer ausfällt antwortet der Slave trotzdem noch ne Zeit lang weiter.

Oder du richtest zwei Master ein, die jeweils für ihre Zone authoritär sind und die andere Zone als Slave dabei haben und sich selbstständig synchronisieren.
Das ist auf jeden Fall redundanter als deine Lösung und die Obere, wenn du die beiden DNS-Server bei den Clients einträgst (musst aber nicht, falls halt einer ausfällt ist das halbe Netz tot. :( ).

Im Netz A halt die Reihenfolge A-Server, B-Server und im Netz B dann B-Server, A-Server.

Wen du doch deine Lösung haben willst musst du nur beim A-Server die B-Zone definieren und dort "forward only" und "forwarders { IP_vom_B-Server; }; " eintragen.

Genauso beim B-Server halt andersrum.

Grüsse, Stefan

Spitfire
22.02.02, 14:12
Hi geronet!

Erstmal danke für deine Antwort.



Entweder setze halt einen Primären und einen Slave DNS-Server ein, der Slave holt sich dann automatisch immer die Zonedateien vom Master wenn sie geändert wurden.


Ja, so weit bin ich noch nicht ;)



Wen du doch deine Lösung haben willst musst du nur beim A-Server die B-Zone definieren und dort "forward only" und "forwarders { IP_vom_B-Server; }; " eintragen.


Genau <b>das</b> hab ich bei ServerB vergessen *klatsch*. Und auf jeden Fall ist die Sache mit den beiden Mastern besser, nur wie gesagt: So weit bin ich <i>noch</i> nicht ... erstmal Buch kaufen und lesen :)

mfG

<hr>
Nachtrag: Wo muss diese "forward only" Option hin? in die named.conf oder in der Zonendatei und wie muss die aussehen (Beispiel)?

geronet
22.02.02, 20:17
Das gehört in die named.conf rein, und zwar so:
Achja: ich hab hier den BIND 8 laufen, aber ich denke der Syntax wird sich kaum verändert haben, sonst schauste halt in der man-page nach.
(Meiner ist zusätzlich noch "chroot'et" :D )

options {
directory "/etc/namedb";
pid-file "/var/run/named.pid";
named-xfer "/bin/named-xfer";
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
query-source address * port 53;
listen-on {
192.168.1.1;
127.0.0.1;
};
forward first;
forwarders {
212.185.252.201;
194.25.2.129;
};
// cache ip-adresses 10 days
cleaning-interval 14400;
// zone-mainenance every 7 days
heartbeat-interval 7D;
// don't check for new interfaces
interface-interval 0;
// don't print status-display
statistics-interval 0;

allow-transfer { 192.168.1.10; };
allow-query { 192.168.1.0/24; localhost; };
allow-recursion { 192.168.1.0/24; localhost; };
notify no;

};

zone "." IN {
type hint;
file "/etc/namedb/named.ca";
};

zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};

zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
# das wär die eigene Zone
zone "Bachmaier" {
type master;
file "named.Bachmaier";
also-notify { 192.168.1.10; };
};
# die reverse-Zone dazu
zone "1.168.192.in-addr.arpa" {
type master;
file "named.1.168.192";
also-notify { 192.168.1.10; };
};

# und nun die andere
zone "B-Server.net" {
type forward;
forward only;
forwarders { ip_vom_B-Server; };
};

...und das gleiche für die reverse-Zone...

man-page von named.conf:
---
forward
A forward zone is used to direct all queries in it to other servers, as
described in THE OPTIONS STATEMENT section. The specification of op*
tions in such a zone will override any global options declared in the
options statement.

If either no forwarders clause is present in the zone or an empty list
for forwarders is given, then no forwarding will be done for the zone,
cancelling the effects of any forwarders in the options statement.
Thus if you want to use this type of zone to change only the behavior
of the global forward option, and not the servers used, then you also
need to respecify the global forwarders.
---

Grüsse, Stefan

geronet
22.02.02, 20:18
Übrigens, so ein Master/Slave Server mit automatischen Zone-Update ist sehr einfach einzurichten...
Man braucht bloss die Syntax einhalten hehe :)