Estou procurando um exemplo de configuração em que o CoreDNS lerá o registro CNAME do arquivo (plugin de arquivo) e o resolverá usando um resolvedor personalizado (plugin de encaminhamento?). Um cliente não deve obter o registro CNAME, mas apenas os registros A.
Por exemplo:
- se o cliente solicitar ao CoreDNS
test.r1.svc
- então o CoreDNS obtém o
CNAME
registrotest IN CNAME test.r2.svc.
- então peça ao resolvedor
10.11.12.13:53
estrangeirotest.r2.svc
- e resposta ao cliente com os
A
registros
É possível?
Esta configuração não está funcionando para mim:
Corefile
# root
. {
log
errors
}
r1.svc {
file r1.svc
forward r2.svc 10.11.12.13:53
log
errors
}
r1.svc
arquivo
$ORIGIN r1.svc.
@ 3600 IN SOA sns.dns.icann.org. noc.dns.icann.org. (
202211241713 ; serial
7200 ; refresh (2 hours)
3600 ; retry (1 hour)
1209600 ; expire (2 weeks)
3600 ; minimum (1 hour)
)
3600 IN NS a.iana-servers.net.
3600 IN NS b.iana-servers.net.
test IN CNAME test.r2.svc.
Responder1
Posso estar enganado, mas forward r2.svc 10.11.12.13:53
está no r1.svc
bloco, então nunca será chamado.
Client asks for test.r1.svc
Server responds that it's a CNAME for test.r2.svc
Client asks for test.r2.svc
Server doesn't know how to process the answer
Mover a forward r2.svc 10.11.12.13:53
linha para o .
bloco deve permitir processar a segunda solicitação.
Responder2
Eu escrevi um plugin para CoreDNS para fazer isso:https://github.com/kinjelom/coredns-recursor