Blog Agility

Manipulando DNS Views no Infoblox

Manipulando DNS Views no Infoblox

Por Paulo Elias Jr

Antes de ler este artigo, eu recomendo que você leia o conteúdo do artigo “Trabalhando com Views de DNS no Infoblox” aqui no blog da Agility (http://bit.ly/1PMSi7A).

Ao mesmo tempo que views de DNS são recursos úteis para segregação de domínios de clientes, ter muitas views pode deixar o ambiente complexo e podem levar a falsas resoluções de nomes por todo o ambiente.

Vamos explicar um cenário problemático que exemplifica estes problemas.

Um mesmo membro Infoblox é responsável pela apresentação de três views ao ambiente do cliente CLIENTEABC. As três views contém um mesmo domínio com um registro A apontando para IPs diferentes e os clientes que enviam consultas para este membro estão dentro da mesma rede.

O administrador controla o Match de cada view pelo IP de origem da requisição de DNS.

Para resumir o cenário acima, veja a tabela abaixo.

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_01  figura 01

Entretanto o administrador está encontrando problemas pois apesar de ter regras de match bem definidas, todos os clientes estão resolvendo o mesmo IP ao consultar pelo nome www.clienteabc.com.br (da View “Corporativo”). Veja abaixo.

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_02
figura 02

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_03
figura 03

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_04  Figura 04

Se colocamos as regras corretas dentro das Views, por que os clientes não enxergam o que deveriam enxergar?

Dois pontos: O primeiro é o fato dos IPs 10.40.0.50 e 10.40.0.100 estarem dentro da rede 10.0.0.0/8. O segundo e mais importante, a ordem das views no arquivo de configuração de DNS do membro Infoblox. Sim, o Infoblox também tem, apesar de não ser manipulável. Vamos abrir o arquivo de configuração para ver isso no detalhe.

Conectado ao Grid Manager, clique em Data Management > DNS > selecione o membro > View > Configuration, tal qual destacado abaixo.

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_05
figura 05

Nota: O arquivo será exibido em um pop-up. Libere-o no seu navegador se este o bloquear.

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_06
figura 06

O trecho do arquivo acima exibe as três views e a sua configuração. Preste bastante atenção na posição delas no arquivo, especialmente na diretiva Match Clients.

Quando um cliente envia uma query para um servidor de DNS, o servidor precisa ler o arquivo de configuração para verificar qual será o comportamento em relação àquela query. Quando falamos de Views, o servidor percorrerá de forma linear (ou seja, linha a linha, do topo até o fim do arquivo) até encontrar uma view que dê match ao cliente. Neste caso, como os IPs de match das outras views estão contidos na diretiva de Match Clients da View “Corporativo” e este está em primeiro lugar no arquivo de configuração, o DNS Server dará match nela mesmo com as outras views mais à frente configuradas explicitamente com os IPs em questão. Literalmente, o servidor para de processar o arquivo e envia a resposta da query para o cliente, se houver uma zona e registros homônimos.

Para adaptar isso ao cenário que desejamos, precisamos realocar as views e colocar aquelas mais restritivas no topo do arquivo e as menos restritivas, ao final. Para fazer isso no Infoblox:

Navegue até Data Management > DNS > Selecione o Membro > Edit

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_07  figura 07

Clique em Toogle Advanced View para habilitar os menus avançados de configuração e clique em DNS Views.

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_08
figura 08

Note que no campo destacado acima, as Views estão sendo organizadas automaticamente pelo Infoblox. Precisamos mudar isso para definir a nossa própria ordem. Seecione a opção Order DNS Views Manually e utilize as setas para deslocar a view Corporativo para a última posição, conforme exibido abaixo. Lembre-se: mais restritivas primeiro, menos restritivas por último.

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_09
figura 09

Clique em Save & Close ao término da configuração e não esqueça de efetuar o restart no serviço.

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_10
figura 10

Ao abrir o arquivo de configuração novamente, podemos ver o resultado.

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_11
figura 11

Repetindo a consulta no lado dos clientes…

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_12
figura 12

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_13
figura 13

2015_12_PauloEliasJR_Manipulando_DNS_Views_no_Infoblox_14
figura 14

O problema que vimos acima é bastante comum em ambientes com grande granularidade. Outro caso é quando se misturam regras de Match Clients com Match Destination, somente o uso de  ACLs com dezenas de regras de Allow/Deny não é o suficiente (além desta abordagem ser trabalhosa). Entretanto, vimos acima que essa configuração é bem simples e fácil de ser entendida, podendo ser refeita sempre que necessário sem interrupção de serviço. Até o próximo artigo!