Configureer BIND om een eenvoudige doorstuurserver te zijn (geen rootserversquerys)

Ik zou graag een eenvoudige bindserver willen opzetten die kan fungeren als eenvoudige doorstuurserver naar de OpenDNS servers.

Ik wil niet dat mijn binding de root-servers kan opvragen, ik wil dat al het verkeer alleen naar OpenDNS gaat en misschien als “cache” ervoor fungeert.

Hoe dit kan worden bereikt? Moet ik de hints van de rootservers op de een of andere manier uitschakelen? Is dit de juiste procedure?

Mijn gok is om commentaar te geven op de zone “.” Die wordt bediend door de rootservers op named.conf.default-zones -bestand. Ik heb echter gelezen dat de rootservers die geen querys uitvoeren ook kunnen worden bereikt door de recursie uit te schakelen, maar het uitschakelen van de recursie lijkt ertoe te leiden dat de server ook niet in staat is om te profiteren van de doorstuurservers .. waar is mijn conf fout?

Conf is het volgende:

named.conf

// This is the primary configuration file for the BIND DNS server named. // // Please read /usr/share/doc/bind9/README.Debian.gz for information on the // structure of BIND configuration files in Debian, *BEFORE* you customize // this configuration file. // // If you are just adding zones, please do that in /etc/bind/named.conf.local include "/etc/bind/named.conf.options"; include "/etc/bind/named.conf.local"; include "/etc/bind/named.conf.default-zones"; 

named.conf.options

acl "trusted" { 127.0.0.1/8; 10.0.0.0/8; 172.16.0.0/12; 192.168.0.0/16; ::1; }; options { directory "/var/cache/bind"; # bind cache directory recursion no; # enables resursive queries allow-query { trusted; } ; allow-recursion { "none"; }; additional-from-cache no; allow-transfer { none; }; # disable zone transfers by default // If there is a firewall between you and nameservers you want // to talk to, you may need to fix the firewall to allow multiple // ports to talk. See http://www.kb.cert.org/vuls/id/800113 // 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. forward only; forwarders { 208.67.222.222; 208.67.220.220; }; //======================================================================== // If BIND logs error messages about the root key being expired, // you will need to update your keys. See https://www.isc.org/bind-keys //======================================================================== dnssec-enable no; dnssec-validation no; dnssec-lookaside auto; auth-nxdomain no; # conform to RFC1035 }; 

named.conf.local

// // Do any local configuration here // // Consider adding the 1918 zones here, if they are not used in your // organization //include "/etc/bind/zones.rfc1918"; 

named.conf.default-zones

// 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"; }; 

Answer

De BIND-configuratie stuurt inderdaad, wanneer de doorstuurservers zijn gedefinieerd, alle verzoeken die niet door de lokale BIND werden beantwoord naar de doorstuurservers.

Sterker nog, wanneer forward only; wordt gebruikt, worden de lokale zones genegeerd en wordt aan alle verzoeken alleen voldaan vanuit de cache of door de doorstuurservers.

Als u lokale zones nodig heeft (bijv privé IP-adressen van RFC 1918 en een lokale thuis- / kantoorzone), om doorstuurservers te hebben, moet u zowel de zone met de root-hints als de forward only; -richtlijn van commentaar voorzien.

// forward only; // zone "." { // type hint; // file "/etc/bind/db.root"; // }; 

Van de DNS HowTo

Maar als “forward only” is ingesteld, geeft BIND het op als het geen reactie krijgt van de doorstuurservers, en keert gethostbyname () onmiddellijk terug. Daarom is het niet nodig om goochelarij uit te voeren -hand met bestanden in / etc en herstart de server.

In mijn geval heb ik zojuist de regels toegevoegd

alleen forward; forwarders {193.133.58.5;};

naar de sectie opties {} van mijn named.conf-bestand. Het werkt erg goed. Het enige nadeel hiervan is dat het een ongelooflijk geavanceerd stuk DNS-software reduceert tot de status van een domme cache.

Dus als je alleen een domme cache nodig hebt, kun je alleen verzoeken doorsturen. Dit is de juiste configuratie in een zakelijke omgeving wanneer u bijvoorbeeld verzoeken doorstuurt naar het centrale kantoor.

Afhankelijk van uw situatie, waar uw verzoeken naar buiten doorsturen, zou ik adviseren om dit niet blindelings te doen forward only om DNS-verzoeken van het privé-IP-adresbereik / lokale DNS / Windows-domeinen niet door te sturen voor de hogere hiërarchieën / root-naamservers.

Opmerkingen

  • trouwens, OpenDNS (en anderen) ondersteunen gecodeerd doorsturen. Ik doe het thuis.
  • Oh geweldig, geef alsjeblieft de wijzigingen door als je kunt ^^ Ik zou graag gecodeerde doorsturen willen gebruiken, zodat ik een stomme provider-router dns-handhaver kan verwijderen die de dns-pakketten herschrijft!
  • open een nieuwe vraag en maak een opmerking met mijn gebruiker; op die manier wordt het gedocumenteerd en zullen we onderwerpen / vragen niet door elkaar halen.
  • Oké, ik zal 🙂 Koffie eerst, dan zal ik de nieuwe vraag schrijven!
  • Ik heb het nu gezien .. . ingewikkelder dan ik eigenlijk wachtte. Zal later antwoorden.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *