Differences

This shows you the differences between two versions of the page.

Link to this comparison view

instalacao_configuracao_dhcp_dns_no_centos_6_pt_br [2019/08/08 15:23] (current)
Line 1: Line 1:
 +====== Instalação e configuração de servidor DHCP + DNS + CentOS 6 ======
  
 +
 +  * Domínio que vamos utilizar: douglasqsantos.com.br
 +  * Faixa de ip: 192.168.1.0/​24
 +  * Ip do Servidor: 192.168.0.200
 +
 +Prepare o seu sistema com o seguinte script http://​wiki.douglasqsantos.com.br/​doku.php/​confinicialcentos6_en para que não falte nenhum pacote ou configuração.
 +
 +Vamos fazer um update dos repositórios e vamos atualizar o sistema primeiramente.
 +<sxh bash>
 +yum check-update && yum update -y
 +</​sxh>​
 +
 +Agora vamos instalar os pacotes do bind
 +<sxh bash>
 +yum install bind-chroot bind-utils bind-libs -y
 +</​sxh>​
 +
 +Agora vamos colocar ele na inicialização do sistema
 +<sxh bash>
 +chkconfig named on
 +</​sxh>​
 +
 +Agora vamos reiniciar o serviço para que o named monte a sua jaula
 +<sxh bash>
 +/​etc/​init.d/​named restart
 +</​sxh>​
 +
 +Agora vamos fazer um backup do arquivo de configuração do nosso bind.
 +<sxh bash>
 +cp -Rfa /​etc/​named.conf{,​.bkp}
 +</​sxh>​
 +Agora vamos deixar o arquivo /​etc/​named.conf como abaixo, aqui estou utilizando a rede 10.0.0.0/23 como minha rede local para exemplo, mude conforme necessário. ​
 +<sxh bash>
 +vim /​etc/​named.conf
 +#Algumas opções do Bind
 +options {
 + ​listen-on port 53 { 127.0.0.1; 192.168.1.0/​24;​ };
 + ​directory ​      "/​var/​named";​
 + ​dump-file ​      "/​var/​named/​data/​cache_dump.db";​
 + ​statistics-file "/​var/​named/​data/​named_stats.txt";​
 + ​memstatistics-file "/​var/​named/​data/​named_mem_stats.txt";​
 + ​allow-query ​    { any; };
 + ​recursion no;
 + ​version "Não Disponível";​
 +};
 +
 +#Controles
 +include "/​etc/​rndc.key";​
 +
 +controls {
 +        inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { rndc-key; };
 +};
 +
 +#LOGS
 +logging {
 + ​channel xfer-log {
 + file "/​var/​log/​named.log";​
 + ​print-category yes;
 + ​print-severity yes;
 + ​print-time yes;
 + ​severity info;
 + };
 + ​category xfer-in { xfer-log; };
 + ​category xfer-out { xfer-log; };
 + ​category notify { xfer-log; };
 +
 + ​channel update-debug {
 + file "/​var/​log/​named-update-debug.log";​
 + ​severity ​ debug 3;
 + ​print-category yes;
 + ​print-severity yes;
 + ​print-time ​     yes;
 + };
 + ​channel security-info ​   {
 + file "/​var/​log/​named-auth-info.log";​
 + ​severity ​ info;
 + ​print-category yes;
 + ​print-severity yes;
 + ​print-time ​     yes;
 + };
 + ​category update { update-debug;​ };
 + ​category security { security-info;​ };
 +
 + };
 +
 +#Incluir o nosso arquivo externo que vai conter a configuração da nossa view interna
 +include "/​etc/​named/​named.conf.internal-zones";​
 +</​sxh>​
 +
 +Caso não tenha sido gerada a chave rndc do bind podemos gerar ela como abaixo
 +
 +<sxh bash>
 +rndc-confgen -a -c /​etc/​rndc.key -k rndc-key -b 256
 +</​sxh>​
 +
 +Agora precisamos acertar as permissões dos arquivos ​
 +<sxh bash>
 +chown root:named /​etc/​rndc.key
 +chmod 640 /​etc/​rndc.key
 +</​sxh>​
 +
 +Gerando a chave para o DHCP poder atualizar as zonas de DNS.
 +<sxh bash>
 +cd  /​var/​named/​chroot/​etc/​
 +dnssec-keygen -r /​dev/​urandom -a HMAC-MD5 -b 128 -n USER DHCP_UPDATER
 +</​sxh>​
 +
 +Agora vamos visualizar o conteudo da nossa chave, vamos utilizar ela no arquivo de zonas e no arquivo de configuração do DHCP.
 +<sxh bash>
 +cat /​var/​named/​chroot/​etc/​K*.key
 +DHCP_UPDATER. IN KEY 0 3 157 /​WndiGI/​RhhQ0SesJ4qY3w==
 +</​sxh>​
 +
 +Agora vamos criar o nosso arquivo da View Interna /​etc/​named/​named.conf.internal-zones onde somente os nossos clientes da rede local e o nosso servidor local vão poder consultar.
 +<sxh bash>
 +vim /​etc/​named/​named.conf.internal-zones
 +#Definindo quem vão ser os nossos hosts internos, ex: a nossa rede e a maquina local
 +acl "​internal_hosts"​ {
 + ​192.168.1.0/​24;​
 + ​127.0.0.1/​32;​
 +};
 +
 +#Definindo a nossa View interna
 +view "​internal"​ {
 +
 +#Definindo quais clientes vão poder consultar esta view, então vão ser a nossa rede interna mesmo o servidor external_slave
 + ​match-clients { internal_hosts;​ };
 +
 +#Definindo que os clientes dessa view vão poder efetuar consultas recursivas.
 + ​recursion yes;
 +
 +#Zona que define os endereços dos root Masters.
 +zone "​."​ IN {
 + type hint;
 + file "​named.ca";​
 +};
 +
 +#Chave para sincronismo entre dhcp e dns que visualizamos com o cat /​etc/​bind/​K*.key
 +key DHCP_UPDATER {
 +algorithm HMAC-MD5;
 +secret "/​WndiGI/​RhhQ0SesJ4qY3w==";​
 +};
 +
 +#Dominios locais
 +zone "​douglasqsantos.com.br"​ {
 +type master;
 +file "​db.douglasqsantos.com.br.internal";​
 +allow-transfer { none; };
 +allow-update { key DHCP_UPDATER;​ };
 + };
 +
 +#Zona reversa do dominio na rede 192.168.1.0/​24
 +zone "​1.168.192.in-addr.arpa"​ {
 +type master;
 +file "​db.1.168.192.internal";​
 +allow-transfer { none; };
 +allow-update { key DHCP_UPDATER;​ };
 +};
 +
 +
 +#Este arquivo contem as zonas locais
 +include "/​etc/​named.rfc1912.zones";​
 +
 +};
 +</​sxh>​
 +
 +Agora vamos criar o arquivo que os nossos clientes internos vão consultar /​var/​named/​chroot/​var/​named/​db.douglasqsantos.com.br.internal ​
 +<sxh dns>
 +vim /​var/​named/​chroot/​var/​named/​db.douglasqsantos.com.br.internal
 +$TTL 86400
 +@ IN SOA  dns.douglasqsantos.com.br. root.dns.douglasqsantos.com.br. (
 +        2013120901 ​ ; Serial
 +         ​3600 ​      ; Refresh
 +         ​1800 ​       ; Retry
 +         ​1209600 ​     ; Expire
 +         3600 )     ; Minimum
 +
 +;
 +
 +@               ​IN ​     NS   ​douglasqsantos.com.br.
 +douglasqsantos.com.br. IN TXT "​v=spf1 a mx ip4:​192.168.1.0/​24 -all"
 +mail.douglasqsantos.com.br IN TXT "​v=spf1 a -all"
 +
 +@               ​IN ​     NS   ​ns1.douglasqsantos.com.br.
 +@               ​IN ​     NS   ​ns2.douglasqsantos.com.br.
 +@               ​IN ​     MX   0 mail.douglasqsantos.com.br.
 +
 +;NAME SERVERS
 +@               ​IN ​     A    192.168.1.200
 +ns1             ​IN ​     A    192.168.1.200
 +ns2             ​IN ​     A    192.168.1.200
 +dns             ​IN ​     A    192.168.1.200
 +ldap    IN  A    192.168.1.200
 +ldap2   ​IN ​ A    192.168.1.200
 +kdc1    IN  A    192.168.1.200
 +kdc2    IN  A    192.168.1.200
 +
 +;MAIL SERVERS
 +mail            IN      A    192.168.1.200
 +imap            IN      CNAME mail
 +pop             ​IN ​     CNAME mail
 +smtp            IN      CNAME mail
 +webmail ​        ​IN ​     CNAME mail
 +
 +;WEB SERVERS
 +www             ​IN ​     A    192.168.1.200
 +ftp             ​IN ​     CNAME www
 +mailadmin ​      ​IN ​     CNAME www
 +
 +; Dominio Kerberos
 +_kerberos ​                                              IN TXT           "​douglasqsantos.com.br"​
 +_kerberos.srv ​                                          IN TXT           "​douglasqsantos.com.br"​
 +_kerberos._tcp ​                                         IN SRV 10 1 88   ​ldap.douglasqsantos.com.br.
 +_kerberos._udp ​                                         IN SRV 10 1 88   ​ldap.douglasqsantos.com.br.
 +_kerberos-adm._tcp ​                                     IN SRV 10 1 749  ldap.douglasqsantos.com.br.
 +_kerberos-master._udp ​                                  IN SRV 0  0 88   ​ldap.douglasqsantos.com.br.
 +_kpasswd._udp ​                                          IN SRV 10 1 464  ldap.douglasqsantos.com.br.
 +_ldap._tcp ​                                             IN SRV 10 1 389  ldap.douglasqsantos.com.br.
 +
 +; Busca de Informações de LDAP e Samba
 +_ldap_dc ​                                               IN TXT           "​dc=douglasqsantos,​dc=com,​dc=br"​
 +_samba_pdc_domain ​                                      IN TXT           "​DOUGLASQSANTOS"​
 +_samba_pdc_ip_address ​                                  IN TXT           "​192.168.1.200"​
 +</​sxh>​
 +
 +
 +Agora vamos criar a zona inversa
 +<sxh dns>
 +vim /​var/​named/​chroot/​var/​named/​db.1.168.192.internal
 +$TTL 86400
 +@ IN SOA  dns.douglasqsantos.com.br. root.dns.douglasqsantos.com.br. (
 +                        2013120901 ​ ; Serial
 +                        3600       ; Refresh
 +                        1800        ; Retry
 +                        604800 ​     ; Expire
 +                        3600 )     ; Minimum
 +
 +;
 +@   ​IN ​ NS   ​douglasqsantos.com.br.
 +@               ​IN ​ NS   ​ns1.douglasqsantos.com.br.
 +@               ​IN ​ NS   ​ns2.douglasqsantos.com.br.
 +@               ​IN ​ MX   0 mail.douglasqsantos.com.br.
 +
 +;NAME SERVERS
 +200      IN   ​PTR ​   douglasqsantos.com.br.
 +200      IN   ​PTR ​   ns1.douglasqsantos.com.br.
 +200      IN   ​PTR ​   ns2.douglasqsantos.com.br.
 +200      IN   ​PTR ​   dns.douglasqsantos.com.br.
 +
 +;LDAP e Kerberos
 +200 IN  PTR    ldap.douglasqsantos.com.br.
 +200 IN  PTR    ldap2.douglasqsantos.com.br.
 +200 IN  PTR    kdc1.douglasqsantos.com.br.
 +200 IN  PTR    kdc2.douglasqsantos.com.br.
 +
 +;MAIL SERVERS
 +200    IN   ​PTR ​   mail.douglasqsantos.com.br.
 +
 +;WEB SERVERS
 +200      IN   ​PTR ​   www.douglasqsantos.com.br.
 +</​sxh>​
 +
 +Vamos agora ajustar o arquivo /​etc/​resolv.conf para que o nosso servidor consiga encontrar a zona do douglasqsantos.com.br
 +<sxh bash>
 +vim /​etc/​resolv.conf
 +domain douglasqsantos.com.br
 +search douglasqsantos.com.br
 +nameserver 127.0.0.1
 +</​sxh>​
 +
 +Vamos agora reiniciar o serviço e testar.
 +<sxh bash>
 +/​etc/​init.d/​named restart
 +</​sxh>​
 +Agora vamos fazer alguns testes.
 +
 +Vamos consultar o endereço do host www
 +<sxh bash>
 +nslookup www
 +Server: ​  ​127.0.0.1
 +Address: ​ 127.0.0.1#​53
 +
 +Name: www.douglasqsantos.com.br
 +Address: 192.168.1.200
 +</​sxh>​
 +
 +Agora vamos testar o reverso
 +<sxh bash>
 +host 192.168.1.200
 +200.1.168.192.in-addr.arpa domain name pointer kdc1.douglasqsantos.com.br.
 +200.1.168.192.in-addr.arpa domain name pointer kdc2.douglasqsantos.com.br.
 +200.1.168.192.in-addr.arpa domain name pointer mail.douglasqsantos.com.br.
 +200.1.168.192.in-addr.arpa domain name pointer www.douglasqsantos.com.br.
 +200.1.168.192.in-addr.arpa domain name pointer douglasqsantos.com.br.
 +200.1.168.192.in-addr.arpa domain name pointer ns1.douglasqsantos.com.br.
 +200.1.168.192.in-addr.arpa domain name pointer ns2.douglasqsantos.com.br.
 +200.1.168.192.in-addr.arpa domain name pointer dns.douglasqsantos.com.br.
 +200.1.168.192.in-addr.arpa domain name pointer ldap.douglasqsantos.com.br.
 +200.1.168.192.in-addr.arpa domain name pointer ldap2.douglasqsantos.com.br.
 +</​sxh>​
 +
 +Agora vamos consultar o endereço do host mail.douglasqsantos.com.br aqui poderíamos consultar somente por mail dai ele completaria com o parâmetro domain do resolv.conf ​
 +<sxh bash>
 +nslookup mail.douglasqsantos.com.br
 +Server: ​  ​127.0.0.1
 +Address: ​ 127.0.0.1#​53
 +
 +Name: mail.douglasqsantos.com.br
 +Address: 192.168.1.200
 +</​sxh>​
 +
 +Vamos consultar os registros do tipo A do nosso domínio.
 +<sxh bash>
 +dig -t A douglasqsantos.com.br
 +; <<>>​ DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>>​ -t A douglasqsantos.com.br
 +;; global options: +cmd
 +;; Got answer:
 +;; ->>​HEADER<<​- opcode: QUERY, status: NOERROR, id: 34481
 +;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 2
 +
 +;; QUESTION SECTION:
 +;​douglasqsantos.com.br. ​    ​IN ​ A
 +
 +;; ANSWER SECTION:
 +douglasqsantos.com.br. ​   86400 IN  A 192.168.1.200
 +
 +;; AUTHORITY SECTION:
 +douglasqsantos.com.br. ​   86400 IN  NS  ns1.douglasqsantos.com.br.
 +douglasqsantos.com.br. ​   86400 IN  NS  douglasqsantos.com.br.
 +douglasqsantos.com.br. ​   86400 IN  NS  ns2.douglasqsantos.com.br.
 +
 +;; ADDITIONAL SECTION:
 +ns1.douglasqsantos.com.br. ​ 86400 IN  A 192.168.1.200
 +ns2.douglasqsantos.com.br. ​ 86400 IN  A 192.168.1.200
 +
 +;; Query time: 0 msec
 +;; SERVER: 127.0.0.1#​53(127.0.0.1)
 +;; WHEN: Mon Dec  9 19:57:55 2013
 +;; MSG SIZE  rcvd: 127
 +</​sxh>​
 +
 +Agora vamos consultar a transferência do nosso domínio
 +<sxh bash>
 +dig -t axfr dominio.com.br
 +; <<>>​ DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>>​ -t axfr douglasqsantos.com.br
 +;; global options: +cmd
 +; Transfer failed.
 +</​sxh>​
 +
 +Tudo ok, agora vamos instalar o dhcp server
 +<sxh bash>
 +yum install dhcp -y
 +</​sxh>​
 +
 +Agora vamos inserir ele na inicialização do sistema
 +<sxh bash>
 +chkconfig --add dhcpd
 +</​sxh>​
 +
 +Agora vamos ajustar as permissões do diretório do bind para que o bind possa atualizar os registros
 +<sxh bash>
 +chown -R named:named /var/named/
 +</​sxh>​
 +
 +Agora vamos configurar o dhcp server
 +<sxh bash>
 +vim /​etc/​dhcp/​dhcpd.conf
 +option domain-name "​douglasqsantos.com.br";​
 +#Definindo os servidores de DNS
 +option domain-name-servers 192.168.1.200,​ 8.8.8.8;
 +#Definindo o servidor de NetBios(WINS)
 +option netbios-name-servers 192.168.1.200;​
 +#Definindo o tipo de netbios
 +option netbios-node-type 8;
 +#Defindo o broadcast da nossa rede
 +option broadcast-address 192.168.1.255;​
 +#Defindo que o servidor é autoritativo para a rede
 +authoritative;​
 +#Estilo de atualização do servidor DNS, este metodo vai ser o padrão de atualização do dns
 +#ele gera um registro (RR) TXT nos arquivos de zonas do DNS e os atualiza
 +ddns-update-style interim;
 +#Força o servidor dhcp fazer atualizações para os endereços ips estáticos
 +update-static-leases on;
 +#Defindo o tipo de log que vai ser enviado para o syslog
 +log-facility local7;
 +#Defindo a chave de atualização entre o dhcp e o dns a chave que visualizamos com cat /​etc/​bind/​K*.key
 +key DHCP_UPDATER {
 +algorithm HMAC-MD5;
 +secret "/​WndiGI/​RhhQ0SesJ4qY3w==";​
 +};
 +
 +#defindo a zona que vamos efetuar atualizações
 +zone douglasqsantos.com.br. {
 +   ​primary 127.0.0.1;
 +   key DHCP_UPDATER;​
 +}
 +#definindo a zona que vamos efetuar atualizações para reverso
 +zone 1.168.192.in-addr.arpa. {
 +   ​primary 127.0.0.1;
 +   key DHCP_UPDATER;​
 +}
 +
 +#Tempo de emprestimo de um ip
 +default-lease-time 600;
 +#tempo maximo de emprestimo de um ip
 +max-lease-time 7200;
 +#​Declaração da sub-net
 +subnet 192.168.1.0 netmask 255.255.255.0 {
 +#​Declaração do range de ips disponiveis para emprestimo
 +range 192.168.1.200 192.168.1.60;​
 +#Define qual a subrede para este escopo
 +option subnet-mask 255.255.255.0;​
 +#define qual o router para esse escopo
 +option routers 192.168.1.24;​
 +} #Fim do escopo
 +
 +#Definindo um ip fixo
 +host exchange {
 + ​hardware ethernet 08:​00:​27:​E3:​41:​30;​
 + ​fixed-address 192.168.1.22;​
 +}
 +</​sxh>​
 +
 +Agora vamos ajustar por qual interface o dhcp vai escutar
 +<sxh bash>
 +vim /​etc/​sysconfig/​dhcpd
 +# Command line options here
 +DHCPDARGS=
 +INTERFACES="​eth0"​
 +</​sxh>​
 +
 +Agora vamos fazer um ajuste no rsyslog
 +<sxh bash>
 +echo "​local7.debug /​var/​log/​dhcpd.log"​ >> /​etc/​rsyslog.conf
 +</​sxh>​
 +
 +Agora vamos reiniciar o rsyslog
 +<sxh bash>
 +/​etc/​init.d/​rsyslog restart
 +</​sxh>​
 +
 +Agora vamos iniciar o dhcp
 +<sxh bash>
 +/​etc/​init.d/​dhcpd start
 +</​sxh>​
 +
 +Agora vamos ver os logs
 +<sxh bash>
 +tail -f /​var/​log/​messages
 +Dec  9 20:04:47 centos6 dhcpd: Internet Systems Consortium DHCP Server 4.1.1-P1
 +Dec  9 20:04:47 centos6 dhcpd: Copyright 2004-2010 Internet Systems Consortium.
 +Dec  9 20:04:47 centos6 dhcpd: All rights reserved.
 +Dec  9 20:04:47 centos6 dhcpd: For info, please visit https://​www.isc.org/​software/​dhcp/​
 +Dec  9 20:04:47 centos6 dhcpd: Wrote 0 deleted host decls to leases file.
 +Dec  9 20:04:47 centos6 dhcpd: Wrote 0 new dynamic host decls to leases file.
 +Dec  9 20:04:47 centos6 dhcpd: Wrote 0 leases to leases file.
 +Dec  9 20:04:47 centos6 dhcpd: Listening on LPF/​eth0/​08:​00:​27:​7d:​87:​9a/​192.168.1.0/​24
 +Dec  9 20:04:47 centos6 dhcpd: Sending on   ​LPF/​eth0/​08:​00:​27:​7d:​87:​9a/​192.168.1.0/​24
 +Dec  9 20:04:47 centos6 dhcpd: Sending on   ​Socket/​fallback/​fallback-net
 +</​sxh>​
 +
 +Agora vamos levantar um cliente e vamos analisar os logs
 +<sxh bash>
 +tail -f /​var/​log/​messages
 +Dec  9 20:05:34 centos6 dhcpd: DHCPDISCOVER from 08:​00:​27:​e3:​41:​30 via eth0
 +Dec  9 20:05:34 centos6 dhcpd: DHCPOFFER on 192.168.1.22 to 08:​00:​27:​e3:​41:​30 via eth0
 +Dec  9 20:05:34 centos6 dhcpd: Added new forward map from exchange.douglasqsantos.com.br to 192.168.1.22
 +Dec  9 20:05:34 centos6 dhcpd: added reverse map from 22.1.168.192.in-addr.arpa. to exchange.douglasqsantos.com.br
 +Dec  9 20:05:34 centos6 dhcpd: DHCPREQUEST for 192.168.1.22 (192.168.1.200) from 08:​00:​27:​e3:​41:​30 via eth0
 +Dec  9 20:05:34 centos6 dhcpd: DHCPACK on 192.168.1.22 to 08:​00:​27:​e3:​41:​30 via eth0
 +</​sxh>​
 +
 +Agora vamos testar o dns para ver se esta resolvendo mesmo 
 +
 +<sxh bash>
 +nslookup exchange.douglasqsantos.com.br
 +Server: ​  ​127.0.0.1
 +Address: ​ 127.0.0.1#​53
 +
 +Name: exchange.douglasqsantos.com.br
 +Address: 192.168.1.22
 +</​sxh>​
 +
 +Como pode ser notado temos agora o DHCP trabalhando em conjunto com o DNS 
 +
 +Caso o client não mande o hostname para o servidor dhcp não vai ser inserido o nome dele no dns com isso no caso do OpenBSD precisamos ajustar o /​etc/​dhclient.conf da seguinte forma
 +<sxh bash>
 +vim /​etc/​dhclient.conf
 +send host-name "​openbsd";​
 +</​sxh>​
 +
 +Agora é só mandar pegar um ip com o dhclient
 +<sxh bash>
 +dhclient em0
 +</​sxh>​
 +
 +Nos logs do servidor vamos ter algo como 
 +<sxh bash>
 +tail -f /​var/​log/​messages
 +Dec  9 17:13:50 debian dhcpd: DHCPREQUEST for 192.168.1.50 from 08:​00:​27:​1f:​ef:​a5 via eth0
 +Dec  9 17:13:50 debian dhcpd: DHCPACK on 192.168.1.50 to 08:​00:​27:​1f:​ef:​a5 via eth0
 +Dec  9 17:13:50 debian dhcpd: Added new forward map from openbsd.douglasqsantos.com.br to 192.168.1.50
 +Dec  9 17:13:50 debian dhcpd: Added reverse map from 50.1.168.192.in-addr.arpa. to openbsd.douglasqsantos.com.br
 +</​sxh>​
 +
 +
 +Agora vamos ver algo interessante também que é testar a atualização de registro dns pela linha de comando.
 +
 +Vamos adicionar um novo host chamado centos com o ip 192.168.1.100 no domínio douglasqsantos.com.br.
 +
 +Vamos ver o código da nossa chave de atualização de zonas
 +<sxh bash>
 +cat /​etc/​bind/​Kdhcp_updater.*.key ​
 +DHCP_UPDATER. IN KEY 0 3 157 Fum3G8P3880TwWMteJgrZg==
 +</​sxh>​
 +
 +Pronto precisamos dessa informação agora vamos inserir o nosso registro
 +<sxh bash>
 +nsupdate ​
 +> server 127.0.0.1
 +> key DHCP_UPDATER Fum3G8P3880TwWMteJgrZg== ​
 +> zone douglasqsantos.com.br
 +> update add centos.douglasqsantos.com.br. 600 IN A 192.168.1.100
 +> send
 +> zone 1.168.192.in-addr.arpa
 +> update add 100.1.168.192.in-addr.arpa 600 IN PTR centos.douglasqsantos.com.br
 +> send
 +> quit
 +</​sxh>​
 +
 +Agora vamos testar o nosso registro
 +<sxh bash>
 +nslookup centos
 +Server: ​  ​127.0.0.1
 +Address: ​ 127.0.0.1#​53
 +
 +Name: centos.douglasqsantos.com.br
 +Address: 192.168.1.100
 +</​sxh>​
 +
 +Agora vamos testar o seu reverso
 +<sxh bash>
 +host 192.168.1.100
 +100.1.168.192.in-addr.arpa domain name pointer centos.douglasqsantos.com.br.
 +</​sxh>​
 +
 +
 +====== Referências ======
 +
 +  - http://​www.isc.org/​software/​bind
 +  - http://​www.isc.org/​software/​bind/​history
 +  - http://​www.isc.org/​software/​bind/​whatis
 +  - http://​www.isc.org/​software/​bind/​versions
 +  - http://​ftp.isc.org/​isc/​bind9/​
 +  - http://​www.isc.org/​software/​bind/​documentation