Eu gostaria de configurar um servidor de ligação simples capaz de atuar como encaminhador simples para o OpenDNS servidores.
Não quero meu bind, mas poder consultar os servidores raiz, quero que todo o tráfego vá apenas para OpenDNS e talvez atue como “cache” para ele.
Como isso pode ser feito? Devo desabilitar as dicas dos servidores raiz de alguma forma? Este é o procedimento correto?
Meu palpite é comentar a zona “.” Servida pelos servidores raiz em arquivo named.conf.default-zones . Li, no entanto, que os servidores raiz sem consulta também podem ser alcançados desativando a recursão, mas desabilitar a recursão parece fazer com que o servidor não seja capaz de tirar vantagem dos encaminhadores também .. onde meu conf está errado?
O conf é o seguinte:
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.local-zonas
// 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"; };
Resposta
A configuração do BIND realmente, quando os encaminhadores são definidos, envia todos os pedidos que não foram atendidos pelo BIND local para os encaminhadores.
Mais ainda, que quando forward only;
é usado, as zonas locais são ignoradas e todas as solicitações são satisfeitas apenas a partir do cache ou pelos encaminhadores.
Se você precisa ter zonas locais (ou seja, endereços IP privados da RFC 1918 e uma zona residencial / comercial local), para fins de encaminhadores, você precisa comentar a zona com as dicas de raiz e a diretiva forward only;
.
// forward only; // zone "." { // type hint; // file "/etc/bind/db.root"; // };
Do DNS HowTo
Mas se “encaminhar apenas” estiver definido, então o BIND desiste quando não recebe uma resposta dos encaminhadores e gethostbyname () retorna imediatamente. Portanto, não há necessidade de realizar truques -manuseie com os arquivos em / etc e reinicie o servidor.
No meu caso, acabei de adicionar as linhas
apenas encaminhar; encaminhadores {193.133.58.5;};
para a seção options {} do meu arquivo named.conf. Funciona muito bem. A única desvantagem disso é que reduz uma parte incrivelmente sofisticada do software DNS ao status de um cache burro.
Então, se você só precisa de um cache burro, você só pode encaminhar solicitações. Este é o configurati apropriado em um ambiente corporativo quando você encaminha solicitações para o escritório central, por exemplo.
De acordo com sua situação, quando encaminha solicitações para o exterior, eu aconselho a não fazer cegamente forward only
para não encaminhar solicitações de DNS do intervalo de endereços IP privados / domínios DNS locais / Windows para hierarquias superiores / servidores de nomes raiz.
Comentários
- aliás, OpenDNS (e outros) suportam encaminhamento criptografado. Eu faço isso em casa.
- Oh incrível, forneça as alterações quando puder ^^ Eu gostaria de usar o encaminhamento criptografado para que eu possa me livrar de um provedor de roteador dns enforcer estúpido que reescreve os pacotes dns!
- abrir uma nova pergunta e comentar com meu usuário; assim será documentado e não misturaremos assuntos / questões.
- Ok, farei 🙂 Primeiro café, depois escreverei a nova questão!
- Já vi agora .. .mais complexo do que eu esperava. Responderei mais tarde.