Manual

do

Maker

.

com

Como fazer Round-robin com Bind9

Como fazer Round-robin com Bind9

Existem vários artigos distribuidos pela internet sobre rr com Bind e não é necessário ser especialista em DNS para fazer essa configuração, que é bastante simples.

O que é Round-robin

O Round-robin com Bind é um recurso que fará seu DNS alternar entre os servidores que estejam especificados em um arquivo de zona. Isso é, a primeira requisição a um endereço xxx.com responderá em um IP; a segunda a outro IP e assim sucessivamente conforme o número de hosts que estiver configurado em seu arquivo de zona.

Não me atreverei a ensinar DNS, pois sei apenas o básico, mas é quase auto-explicativo. Em /etc/bind/ crie seu arquivo de zona. Por exemplo, djames.com (djames.com responde a um endereço real na internet e não é meu):

; IN significa internet  

;Arquivo que representa a zona "djames.lc"  

;  

;TTL eh o tempo de vida valido apos uma consulta ao dominio  

$TTL 604800  

;SOA significa Start Of Authority, usado para indicar que responde por um dominio  

@ IN SOA djames.lc. root.djames.lc. (  

2004111700 ; Serial  

604800 ; Refresh  

86400 ; Retry  

2419200 ; Expire  

604800 ) ; Negative Cache TTL  

;  

;NS eh nameserver  

IN NS djamesns1.com.  

;MX eh Mail eXchange  

IN MX 10 djamesmta.com.

; cada um dos IPs que devem responder ao rr, igualmente configurados  
djames.com. IN A 172.0.0.233  
djames.com. IN A 172.0.0.1

Absurdamente simples, não? Apenas duas linhas e o Bind automaticamente faz o balanceamento rr.

O arquivo** /etc/bind/named.conf** faz include de outros arquivos. Pode-se especificar configurações nele diretamente, mas é melhor fazer nos arquivos separados, ou até mesmo seu próprio include. Após essa configuração de zona, agora deve-se passá-lo ao Bind para que seja carregada a configuração. Edite o arquivo /etc/bind/named.conf.local (pois estamos configurando um endereço local nesse exemplo) e inclua algo como:

include "/etc/bind/zones.rfc1918";

zone "djames.com" {  
type master;  
file "/etc/bind/db.djames.com";  
};

Faça reload do serviço:
/etc/init.d/bind9 reload

Coloque seu DNS em /etc/resolv.conf:
nameserver 172.0.0.40

E pode fazer alguns testes:

reinstaller bind # nslookup djames.com  

Server: 172.0.0.233  

Address: 172.0.0.233#53

Name: djames.com  
Address: 172.0.0.233  
Name: djames.com  
Address: 172.0.0.1

Em uma segunda consulta, a ordem das últimas 4 linhas devem mudar.

Basicamente é isso. E dá pra brincar com essa configuração do bind até em casa, usando-o inclusive como seu DNS para resolução de nomes da internet sem ter que configurar mais nada.

Divirta-se!

Nome do Autor

Djames Suhanko

Autor do blog "Do bit Ao Byte / Manual do Maker".

Viciado em embarcados desde 2006.
LinuxUser 158.760, desde 1997.