bind9 probleme

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
straylight23
Beiträge: 1
Registriert: 17.09.2003 16:27:39

bind9 probleme

Beitrag von straylight23 » 17.09.2003 16:47:35

Tach auch,

ich habe auf meiner debian-box einen bind9-server aufgesetzt um im lokalen Netzwerk Namen aufzulösen und Anfragen an die "Aussenwelt" an die Nameserver meines ISPs weiterzureichen. So weit so einfach hab ich gedacht ;)
Konfiguration ist folgende:
named.conf:

Code: Alles auswählen

include "/etc/bind/named.conf.options";
                                                                                                              
// prime the server with knowledge of the root servers
zone "." {
        type hint;
        file "/etc/bind/db.root";
};
                                                                                                              
// be authoritative for the localhost forward and reverse zones, and for
// broadcast zones as per RFC 1912
                                                                                                              
zone "localhost" {
        type master;
        file "/etc/bind/db.local";
};
                                                                                                              
zone "127.in-addr.arpa" {
        type master;
        file "/etc/bind/db.127";
};
                                                                                                              
zone "0.in-addr.arpa" {
        type master;
        file "/etc/bind/db.0";
};
                                                                                                              
zone "255.in-addr.arpa" {
        type master;
        file "/etc/bind/db.255";
};
                                                                                                              
include "/etc/bind/named.conf.local";
named.conf.options:

Code: Alles auswählen

acl "ratingen" {
        { 192.168.60.0/24; 127.0.0.1; 192.168.212.0/24; };
};
                                                                                                              
options {
        directory "/var/cache/bind";
        pid-file "/var/run/bind/named.pid";
        forwarders { 212.121.128.10; 212.121.128.11; };
        forward only;
        listen-on port 53 { 127.0.0.1; 192.168.212.25; };
        allow-query { "ratingen"; };
        notify no;
        auth-nxdomain no;    # conform to RFC1035
        heartbeat-interval 2880;
        version "foo!";
                                                                                                              
        // 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 and later use an unprivileged
        // port by default.
                                                                                                              
        // query-source address * port 53;
                                                                                                              
        // If your ISP provided one or more IP addresses for stable
        // nameservers, you probably want to use them as forwarders.
        // Uncomment the following block, and insert the addresses replacing
        // the all-0's placeholder.
                                                                                                              
        // forwarders {
        //      0.0.0.0;
        // };
                                                                                                              
        // auth-nxdomain no;    # conform to RFC1035
                                                                                                              
};
named.conf.local:

Code: Alles auswählen

//
// Do any local configuration here
//
                                                                                                              
zone "creativ-consulting.local" {
        type master;
        file "/etc/bind/db.creativ-consulting";
};
zone "212.168.192.in-addr-arpa" {
        type master;
        file "/etc/bind/db.192.168.212";
};
                                                                                                              
// Consider adding the 1918 zones here, if they are not used in your
// organization
// include "/etc/bind/zones.rfc1918";
db.creativ-consulting:

Code: Alles auswählen

$TTL 7200       ;2hours
                                                                                                              
creativ-consulting.local.       IN SOA  ns      root.creativ-consulting.local. (
                                        2003091721;serial
                                        10800   ;refresh (3 hours)
                                        3600    ;retry (1 hour)
                                        604800  ;expire (1 week)
                                        86400   ;minimum (1 day)
                                        )
                                IN NS   ns
                                                                                                              
ns                              IN      A       192.168.212.25
router                          IN      A       192.168.212.250
titom-x                         IN      A       192.168.212.23
compaq                          IN      CNAME   ns
db.192.168.212:

Code: Alles auswählen

$TTL 7200       ;2hours
212.168.192.in-addr.arpa.       IN SOA ns.creativ-consulting.local.     root.creativ-consulting.local. (
                                        2003091611;serial
                                        10800   ;refresh (3 hours)
                                        3600    ;retry (1 hour)
                                        604800  ;expire (1 week)
                                        86400   ;minimum (1 day)
                                        )
                                NS      ns.creativ-consulting.local.
                                                                                                              
1                               IN PTR  ns.creativ-consulting.local.
2                               IN PTR  router.creativ-consulting.local.
3                               IN PTR  titom-x.creativ-consulting.local.
Das alles klappt auch wunderbar wenn ich auf der linux-box selbst versuche die Namen aufzulösen.
Von jeder anderen Maschine im Netzwerk werden die lokalen Namen nicht gefunden. :(
Um dieses Posting noch länger zu machen hier mal ein Mitschnitt der Anfragen aus der Logdatei:
Anfrage des Hosts "192.168.212.23":

Code: Alles auswählen

Sep 17 11:31:20.453 client 192.168.212.23#49268: UDP request
Sep 17 11:31:20.453 client 192.168.212.23#49268: using view '_default'
Sep 17 11:31:20.453 client 192.168.212.23#49268: request is not signed
Sep 17 11:31:20.453 client 192.168.212.23#49268: recursion available: approved
Sep 17 11:31:20.453 client 192.168.212.23#49268: query
Sep 17 11:31:20.453 client 192.168.212.23#49268: v6 synthesis denied
Sep 17 11:31:20.453 client 192.168.212.23#49268: query (cache) approved
Sep 17 11:31:20.453 client 192.168.212.23#49268: replace
Sep 17 11:31:20.453 clientmgr @0x80c0dd0: createclients
Sep 17 11:31:20.454 clientmgr @0x80c0dd0: create new
Sep 17 11:31:20.454 client @0x80927d0: create
Sep 17 11:31:20.454 createfetch: 25.212.168.192.in-addr.arpa PTR
Sep 17 11:31:20.454 fctx 0x8092f00: create
Sep 17 11:31:20.454 fctx 0x8092f00: join
Sep 17 11:31:20.454 fetch 0x80cd090 (fctx 0x8092f00): created
Sep 17 11:31:20.454 client @0x80927d0: udprecv
Sep 17 11:31:20.454 fctx 0x8092f00: start
Sep 17 11:31:20.454 fctx 0x8092f00: try
Sep 17 11:31:20.454 fctx 0x8092f00: cancelqueries
Sep 17 11:31:20.454 fctx 0x8092f00: getaddresses
Sep 17 11:31:20.454 fctx 0x8092f00: query
Sep 17 11:31:20.455 resquery 0x80e40b0 (fctx 0x8092f00): send
Sep 17 11:31:20.455 resquery 0x80e40b0 (fctx 0x8092f00): sent
Sep 17 11:31:20.455 resquery 0x80e40b0 (fctx 0x8092f00): senddone
Sep 17 11:31:20.505 resquery 0x80e40b0 (fctx 0x8092f00): response
Sep 17 11:31:20.505 fctx 0x8092f00: noanswer_response
Sep 17 11:31:20.505 fctx 0x8092f00: ncache_message
Sep 17 11:31:20.505 fctx 0x8092f00: cancelquery
Sep 17 11:31:20.505 fctx 0x8092f00: done
Sep 17 11:31:20.505 fctx 0x8092f00: stopeverything
Sep 17 11:31:20.505 fctx 0x8092f00: cancelqueries
Sep 17 11:31:20.505 fctx 0x8092f00: sendevents
Sep 17 11:31:20.505 fetch 0x80cd090 (fctx 0x8092f00): destroyfetch
Sep 17 11:31:20.505 fctx 0x8092f00: shutdown
Sep 17 11:31:20.505 client 192.168.212.23#49268: send
Sep 17 11:31:20.506 client 192.168.212.23#49268: sendto
Sep 17 11:31:20.506 client 192.168.212.23#49268: senddone
Sep 17 11:31:20.506 client 192.168.212.23#49268: next
Sep 17 11:31:20.506 client 192.168.212.23#49268: endrequest
Sep 17 11:31:20.506 fctx 0x8092f00: doshutdown
Sep 17 11:31:20.506 fctx 0x8092f00: stopeverything
Sep 17 11:31:20.506 fctx 0x8092f00: cancelqueries
Sep 17 11:31:20.506 fctx 0x8092f00: destroy
Und die (richtig beantwortete Anfrage) von der Linuxkiste selbst:

Code: Alles auswählen

Sep 17 11:32:47.521 client 192.168.212.25#32781: UDP request
Sep 17 11:32:47.521 client 192.168.212.25#32781: using view '_default'
Sep 17 11:32:47.521 client 192.168.212.25#32781: request is not signed
Sep 17 11:32:47.521 client 192.168.212.25#32781: recursion available: approved
Sep 17 11:32:47.521 client 192.168.212.25#32781: query
Sep 17 11:32:47.521 client 192.168.212.25#32781: query 'ns.creativ-consulting.local/IN' approved
Sep 17 11:32:47.522 client 192.168.212.25#32781: send
Sep 17 11:32:47.532 client 192.168.212.25#32781: sendto
Sep 17 11:32:47.533 client 192.168.212.25#32781: senddone
Sep 17 11:32:47.533 client 192.168.212.25#32781: next
Sep 17 11:32:47.533 client 192.168.212.25#32781: endrequest
Sep 17 11:32:47.533 client @0x80927d0: udprecv
Hat von Euch jemand ne Idee was da los ist?

Danke,

//Stray

sempux
Beiträge: 13
Registriert: 17.09.2003 22:38:41

RE:bind9 probleme

Beitrag von sempux » 19.09.2003 10:39:53

Hallo,

Deine beiden Reverse Lookupzonen 0.in-addr.arapa und 255.in-addr.arpa erscheinen mir seltsam ....

- in named.conf.options: willst du wirklich einen forward only ?

- Du kannst mal in deinem local. Zonenfile den Eintrag forwarders {} eintragen, dann gibt er abfragen nicht an einen Forwarder weiter, welche für diese Zone sind.

Ansonsten ist der Aufbau eines Bind 9 in debianhowto sehr gut beschrieben:

http://www.debianhowto.de/howtos/de/bind/c_bind.html

Thomas

Seifenverkäufer
Beiträge: 41
Registriert: 09.07.2004 10:12:33

Beitrag von Seifenverkäufer » 27.01.2005 13:25:41

Würde das Thema gerne nochmal aufwäremn, da ich im Moment mit dem forwarding selbst nicht ganz durchblicke.
Will, dass Anfragen für lokale Zonen natürlich von meinem DNS, externe Anfragen von einem der Teledoof-DNS bzw. wenn vorhanden, aus dem Cache meines DNS beantwortet werden.

Habe jetzt in der named.conf.options Folgendes eingetragen:

forwarders { 217.237.150.97; 194.25.0.69; 194.25.0.70; }; #dns-server telekomiker koeln, bonn1, bonn2
forward first; # erst telekom-dns-server fragen, dann selbst aufloesen


Wobei ich bei forward ja auch nur die Optionen first und only habe. Eigentlich will aber doch, dass zuerst der Cache meines DNS, und dann der der Telekomiker befragt wird.

Wenn ich wie von sempux empfohlen zusätzlich in meiner named.conf.local

option {
forwarders {};
forward first;
}


eintrage, meckert named, dass zwei optionsanweisungen vorkommen.

Vielleicht reichen ja auch die Einstellungen so wie sie jetzt sind.
Wie läuft denn eigentlich die Auflösung externer Anfragen, wenn man den forward-Eintrag ganz weglässt? Werden dann alle externen Anfragen an die Root-Server weitergeleitet?

NACHTRAG: Habe eben noch woanders gelesen, dass man bei der Deklaration der lokalen Zonen zusätzlich für jede Zone den Eintrag forwarders {} ergänzen kann.
Funktioniert jetzt auch. Sicher bin ich mir jetzt jedoch immer noch nicht, wer die externen Anfragen beantwortet.

Grüße,

Tyler

PS: Habe noch ne weitere Frage, will dafür aber keinen extra Thread aufmachen:

Will, dass für die statischen Adressen die Leases nicht ablaufen. Hab daher in dieser Gruppe die Optionen "default-" und "max-lease-time" komplett rausgelassen. Wenn ich jedoch auf einem der Windoosen mit statischer IP ipconfig /all ausführe, wird eine Lease von 12 Stunden angezeigt. Ist das nur ein Anzeigefehler oder muss ich die Option doch reinbrimgen mit nem riesengroßen Wert?

sempux
Beiträge: 13
Registriert: 17.09.2003 22:38:41

Beitrag von sempux » 30.01.2005 22:55:58

Hallo

Wenn ich wie von sempux empfohlen zusätzlich in meiner named.conf.local

option {
forwarders {};
forward first;
}


eintrage, meckert named, dass zwei optionsanweisungen vorkommen.
Tja, mein Tipp war ja auch nicht so, sondern nur forwarders {}; , beides ist ja in sich widersprechend, keine Forwarder anzugeben aber diese zuerst fragen!?
Funktioniert jetzt auch. Sicher bin ich mir jetzt jedoch immer noch nicht, wer die externen Anfragen beantwortet.
Was meinst Du genau mit externen Anfragen?
Anfragen welche von deinen Resolvern an deinen Server stammen und nicht deine zone betreffen?

Ist dein Nameserver nicht authoritativer Server für die angefragte Zone, so sucht er im Cache nach einer Antwort, ansonsten gibt er seine Anfrage an die Server weiter die in forwarders{} eingetragen sind anstatt selber nach der Auflösung zu suchen.

Oder externe Anfragen, welche nach deiner Zone fragen?

Nur die für eine Zone definierten Nameserver können authoritative Antworten geben.
Thomas

Seifenverkäufer
Beiträge: 41
Registriert: 09.07.2004 10:12:33

Beitrag von Seifenverkäufer » 31.01.2005 15:07:37

Hallo Thomas !

Danke für deine Antwort.
Mit externen Anfragen meinte ich, wie von dir vermutet, Anfragen, für die unser BIND nicht authorative ist --> Auflösung von Internethosts.
War etwas verwirrt und dachte, man könne nur forwarders mit der option forward only oder forward first angeben. Deshalb war mir ebenfalls nicht klar, wie die Abfragereihenfolge aussieht.
Nochmal: Anfragen an unsere lokale Zone sollen auch von unserem lokalen BIND beantwortet werden. Anfragen an Zonen, für die unser BIND nicht authorative ist (Internet), sollen wenn möglich von unserem BIND aus dem Cache beantwortet werden. Falls kein Eintrag im Cache vorliegt, sollen die Anfragen weitergeleitet werden an die Telekom-DNS-Server.

Habe jetzt folgende Einstellungen vorgenommen und es läuft auch:

/etc/bind/named.conf.options
options {
....
forwarders { 217.237.150.97; 194.25.0.69; 194.25.0.70; }; #DNS-Server Telekomiker Koeln, Bonn1, Bonn2
.....
};

/etc/bind/named.conf.local
zone "firmenname.intranet" {
type master;
file "/etc/bind/db.firmenname.intranet";
allow-update { key DHCP_UPDATER; };
forwarders {};

--> Analog für die anderen lokalen Zonen
};

Hoffe, dass die Konfiguration jetzt so stimmt.
Grüße,

Tyler

Antworten