Leitura adicional

Leitura adicional

Eu tenho um servidor DNS corporativo usando o Bind.
Tenho 3 servidores cônsules. Consul está escutando DNS na porta localhost 8660. Nestes servidores também tenho o DNSmasq para encaminhar a solicitação de DNS da porta IP pública 53 para o Consul no localhost.

A configuração do Consul é muito simples. Acabei de ativar a porta DNS. Quando verifico o DNS localmente na porta 8660, ele está funcionando bem.

A configuração do DNSmasq em cada servidor cônsul é:

server=/subdomain.example.com/127.0.0.1#8600
server=XX.XX.XX.XX (first ip of the corporate DNS)
server=XX.XX.XX.XX (second ip of the corporate DNS)
listen-address=XX.XX.XX.XX (ip of the server)

A configuração no DNS corporativo é:

zone "subdomain.example.com" {
    type forward;
    forward only;
    forwarders {
        XX.XX.XX.XX; (ip of the first consul)
        XX.XX.XX.XX; (ip of the second consul)
        XX.XX.XX.XX; (ip of the third consul)
    };
};

Quando algumas entradas são adicionadas ou removidas do cônsul, a zona DNS no DNS corporativo é atualizada imediatamente.

Quando todas as entradas de um serviço são excluídas do cônsul, o DNS corporativo remove todas as entradas de sua tabela (o que é normal). Mas se as entradas forem criadas novamente, o DNS do cônsul será atualizado, mas não o DNS corporativo. Para atualizar o DNS corporativo, devo executar o comandorndc flushtree subdomain.example.com

Responder1

Isto é abordado no documento do Cônsul, sob o título “dia 1”. ☺

Defina a soa.min_ttlopção de configuração. Sem ele, os proxies DNS de cache não sabem quanto tempo as informações de "sem esse nome" e "sem dados" devem durar, e você obterá suas próprias estimativas de melhor esforço. Isso é um pouco deturpado como sendo culpa dos proxies DNS de cache. Não é. Um datagrama de resposta "sem tal nome" e "sem dados" deve conter informações TTL em um registro de recurso SOA (sintetizado).

Leitura adicional

informação relacionada