21
V Workshop de Tecnologias de Rede do PoP-BA www.pop-ba.rnp.br/WTR2014 IPv6 – Um novo não tão novo protocolo de Internet Instrutor: Thiago Bomfim thiagobomfi[email protected] Monitoria: Jundaí Abdon [email protected] 25 e 26 de Setembro de 2014

V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

Embed Size (px)

Citation preview

Page 1: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

V Workshop de Tecnologias deRede do PoP-BA

www.pop-ba.rnp.br/WTR2014

IPv6 – Um novo não tão novo protocolo de Internet

Instrutor: Thiago [email protected]

Monitoria: Jundaí [email protected]

25 e 26 de Setembro de 2014

Page 2: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

Parte 1 - Prática teórica ;-)

Exercícios de Endereçamento IPv6

1) Indicar a que tipo pertence cada um dos seguintes endereços:

Endereço Tipo

2001:db8:cafe:f0ca:faca:2:3

2804:1:2:b0ca:2c0:17ff:fe00:d1ca

fe80::2c0:17ff:fe00:d1ca

::1

ff05::baba:bebe:baba

2) Comprimir ao máximo os seguintes endereços:

a) 2001:0db8:0000:1200:0fe0:0000:0000:0003

b) 2001:0db8::ca5a:0000:2000

c) 2001:0db8:face:b00c:0000:0000:0100:00ab

3) Descomprimir ao máximo os seguinte endereços:

a) 2001:db8:0:ca1::1:abcd

b) 2001:db8:4::2

c) 2001:db8:200::bdb:110

Page 3: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

4) Utilizando o padrão EUI-64, crie endereços IPv6 a partir do prefixo2001:db8:ba1a:d0ce::/64 baseados nos seguintes endereços MAC:

a) d4:ae:52:fe:2a:47

5) A partir do prefixo 2001:0db8::/32, atribuir os prefixos às redes e computadores da organização ilustrada na figura a seguir:

Descrição Endereço/Prefixo Descrição Endereço/Prefixo

Rede 1 (R1) Host1

Rede 2 (R2) Host2

Rede 3 (R3) Host3

Rede 4 (R4) --- ---

Rede 5 (R5) --- ---

Rede 6 (R6) --- ---

Rede 7 (R7) --- ---

Page 4: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

Parte 2 - Prática prática ;-)IPv6 - Linux

Exercício prático: Configuração de serviços

Descrição do cenário

Nosso cenário será desenvolvido em contexto de máquinas virtuais, utilizado VirtualBox (https://www.virtualbox.org/) que reproduzem de maneira simplificada um ambiente real de produção.

Esse ambiente é composto por dois computadores, rodando os sistemas operacionais Debian GNU/Linux e Microsoft Windows XP SP3. Possuímos também um servidor Debian GNU/Linux, que está conectado via rede a essas duas estações. Nesse servidor, alguns serviços estão em execução, todos sobre o protocolo IP versão 4, tais como: servidor DNS (BIND), servidor HTTP (Apache) , servidor DHCP, servidor SSH, etc. Ao inicializar uma máquina, a Debian GNU/LINUX por exemplo, esta receberá via DHCP um endereço IPv4, poderá acessar via SSH o servidor, acessar páginas web hospedadas nesse servidor e trocar dados com a máquina Windows, por exemplo.

O objetivo desse experimento é:

“Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os serviços, inclusive o atual sobre IPv4.”

Essas máquinas estão conectadas através de uma rede virtual interna [1] e todas se comunicam entresi. Nesse sentido, a proposta é ter um ambiente de testes totalmente isolado do “mundo externo”.

[1] Rede interna: As máquinas convidadas enxergam umas as outras, mas não tem conectividade externa,seja a hospedeira, internet ou outra máquina real da sua rede.

Page 5: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

********************** IMPORTANTE **********************Usuários e senha dos sistemas:

Windows: wtr / wtrDebian GNU/Linux: wtr / wtr e root / wtr

**********************************************************

1. Inicializando, conhecendo e testando o ambiente

1.1 Localize em sua máquina o aplicativo Virtualbox e o execute. Abrirá uma tela semelhante a imagem abaixo.

1.2 Clique sobre a máquina Servidor Debian e a inicialize, clicando sobre o botão verde (Iniciar). Aguarde alguns instantes até a máquina inicializar;

1.3 Após a inicialização do servidor, inicie as estações: Estação Windows XP e Estação Debian, processo similar ao da inicialização do servidor e aguarde a inicialização.

Nesse momento, o servidor que foi previamente configurado, já estará com todos seus serviços IPv4ativos e em execução. Para testar alguns desses serviços em execução, acesse as estações de trabalhoe observe que já estão com endereços IPv4 atribuídos pelo servidor DHCP.

Page 6: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

No Windows: Na barra inferior, clique em Iniciar → Executar. Digite “cmd” ( sem as aspas ;-) ). No prompt de comandos, digite “ipconfig” e tecle “ENTER”. Aparecerá uma série de informações, dentre elas, o endereço IPv4 na linha “Endereço IP”. Haverá uma série de outras

No Debian GNU/Linux: Na barra superior, clique em Aplicativos → Acessórios → Terminal. No terminal, digite “/sbin/ifconfig” e tecle “ENTER”. Aparecerá uma série de informações, dentre elas, “inet end.:” que é o endereço IPv4 distribuído pelo servidor DHCP.

Observe que ambas as estações receberam endereços IPv4 na faixa 192.168.1.1XY, essa configurada no servidor DHCP no arquivo “/etc/dhcp/dhcpd.conf”

1.4 Se quiser efetuar um simples teste de conectividade, você poderá das estações realizar o seguinte comando (como Prompt de Comandos ou do Terminal, é o mesmo comando):

ping 192.168.1.1

Onde 192.168.1.1 é o endereço IPv4 do nosso servidor.

Você poderá ainda, realizar o comando ping para testar a conectividade entre as máquinas, de maneira similar a executada anteriormente.

1.5 Para testar o funcionamento do DNS+Apache instalado e configurado no servidor, você poderá nas estações acessar o browser (Internet Explorer e Iceweasel, Windows e DebianGNU/Linux respectivamente) e digitar a URL:

www.wtr.exemplo.com

Deverá aparecer uma página similar a exibida na imagem acima, onde no corpo da página poderá ser visto o endereço IP de sua máquina. Esse é um simples teste demonstra que o servidor Apache eo DNS estão funcionado corretamente no nosso servidor Debian GNU/Linux.

2. Configurando interface de rede do servidor com IPv6

Dada a proposta principal desse minicurso, optamos por iniciar nossa migração dos serviços pela atribuição automática de endereços. No IPv4, utilizamos o servidor DHCP (https://www.isc.org/software/dhcp) para atribuir endereços as máquinas da rede. Não entraremos em detalhes de como isso é feito aqui, dada nossa limitação de tempo. Um substituto compatível do DHCP no IPv4 para IPv6 é , no Linux, o RADVD (modo stateless) ou o DHCPv6 (modo statefull).Veremos mais a frente a configuração do RADVD.

Page 7: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

Para esse laboratório, utilizaremos o prefixo reservado para documentações e teste, 2001:db8::/32. Vamos iniciar a configuração da interface do servidor.

2.1 Inicialmente, atribuiremos um endereço IPv6 desse bloco para a interface de rede do servidor. Assim, acesse o terminal do servidor e efetue o login com o usuário “wtr” e senha “wtr”. Após isso, entre como super-usuário, digitando “su” e senha “wtr”.

root@wtr:~#

2.2 Através do comando “ifconfig”, você poderá verificar que não há endereço IPv6 na interface, com exceção do endereço de escopo link, atribuído automaticamente pelo sistema operacional. Para inserir um endereço IPv6 na interface do servidor (eth0) efetueo seguinte comando: “ifconfig eth0 inet6 add 2001:db8::1/64 ”

2.3 Execute novamente o comando “ifconfig” observe que agora haverá uma entrada para o IPv6 adicionado, como escopo “Global”, semelhante a linha abaixo:

“...endereço inet6: 2001:db8::1/64 Escopo:Global ...”

2.4 Contudo, esse formato de configuração apresentado no passo 2.3 apesar de correto é

Page 8: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

temporário, e será perdido quando a máquina ou processo de rede for reiniciado. Para verificar essa afirmação, execute o seguinte comando (ainda como root):

root@wtr:~#/etc/init.d/networking restart

Agora, execute novamente o comando “ifconfig” e observe que a configuração foi perdida.

2.5 Assim, para que a configuração fique permanente no sistema, edite o arquivo “ /etc/network/interfaces”. Para isso, execute o comando:

root@wtr:~# vim /etc/network/interfaces

Apenas uma vez, tecle “i” para entrar no modo de edição (aparecerá “INSERÇÃO no final do arquivo)

Com as “setas” do teclado, desloque o curso até o final do arquivo, para inserir novas entradas da configuração. Para configurar o IPv6 na interface eth0 de forma estática entre com as seguinte linhas de configuração:

iface eth0 inet6 static address 2001:db8:0:0::1 netmask 64

Após inserir essas entradas, aperte a tecla “ESC” e digite “:x” (para sair e salvar).Execute os dois comandos do passo 2.4 (/etc/init.d/networking e ifconfig) e observe que a configuração agora foi aplica a interface e mantida mesmo após o reset.

3. Configurando o RADVD

Agora que temos a interface de rede do servidor com endereço configurada, daremos continuidade agora na configuração de endereços para os clientes, através do RADVD (a grosso modo ““um DHCP”” para o IPv6)

O RADVD (http://www.litech.org/radvd/), sigla para “router advertisement daemon”, é um software livre que roda sobre sistemas Linux ou BSD para permitir que os dispositivos conectados arede se autoconfigurem (modo stateless), conforme especificado na RFC 2461.

3.1 Inicialmente, iremos instalar o RADVD (para ganhamos tempo, já está instalado)

root@wtr:~# aptitude install radvd3.2 Agora, editemos e configuremos o RADVD no arquivo:

root@wtr:~# vim /etc/radvd.conf

Page 9: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

3.3 Como no passo 2.5, entre no modo de edição digitando uma vez “i”, e entre com o seguinte texto de configuração

# Rede Virtual Interna

interface eth0 { AdvSendAdvert on; prefix 2001:db8:0:0::/64 {

AdvOnLink on; AdvAutonomous on;

}; };

3.4 Essa configuração permitirá a divulgação do prefixo para os clientes através da rede. Paraque os clientes (estações) comecem a receber, basta agora reiniciar o processo:

root@wtr:~# /etc/init.d/radvd start

4. Testando a conectividade IPv6 entre as máquinas

Agora que o RADVD está divulgando os prefixos a rede, as estações irão se autoconfigurar(utilizando a teoria da “prática teórica” 4, da parte 1) utilizando seu endereço MAC.

4.1 Assim, acesse cada uma das 2 estações (Windows e Linux) e verifique se elas tambémagora possuem IPv6 como os comandos:4.1.1. No Windows, no prompt de comandos digite ipconfig teclando ENTER em

seguida;4.1.2. No Linux, no Terminal, entre com o comando digite ifconfig, teclando

ENTER em seguida;

Em ambos os sistemas, você pode ver que as máquinas agora possuem IPv6.

4.2 Para testar a conectividade, efetue o comando de ping entre as estações e das estaçõespara o servidor. 4.2.1. Para o Windows, utilize o comando ping ou ping -6 ENDEREÇO V6;4.2.2. Para o Linux, utilize o comando ping6 ENDEREÇO V6;

5. Configurando APACHE

O servidor Apache ou Servidor HTTP Apache (http://httpd.apache.org/) é o mais bemsucedido servidor web livre. Em 2010, foi constatado que a utilização do Apache serviuaproximadamente 54,68% de todos os sites e mais de 66% dos milhões de sites mais movimentados.É disponibilizado em versões para os sistemas Windows , Novell, Netware, OS/2 e diversos outros

Page 10: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

do padrão POSIX ( Unix, Linux, FreeBSD, etc.).

Por padrão, o Apache já vem com suporte padrão ao IPv6. Nesse laboratório, configuramoso Apache para funcionar somente em IPv4, e mostraremos como funcionar em IPv6. Outro motivode termos feito isso, é devido ao fato da rede anteriormente não ter suporte a IPv6, não fazendosentido ter ativo para esse protocolo.

5.1 Em nosso ambiente, temos uma página de testes armazenada no servidor. Os arquivospodem ser visualizados em:

/var/www/site-wtr/

5.2 Como testado no início dessa atividade prática, a página já é exibida, indicando que o servidor Apache está em funcionamento. Agora, a proposta é permitir que nosso servidor Apache funcione tanto sobre IPv4 quanto em IPv6.

Para isso, em nosso servidor, acesse o arquivo com o Vim:

root@wtr2012:~# vim /etc/apache2/ports.conf

5.3 Nesse arquivo, temos uma entrada na configuração ...

Listen 192.168.1.1:80 …

que habilita o servidor Apache “escutar” apenas no endereço IPv4 do servidor na porta 80.Para ativar a “escuta” tanto em IPv4 e IPv6, basta alterar a linha anterior por:

Listen *:80 Feito isso, basta reiniciar o servidor Apache

root@wtr2012:~# /etc/init.d/apache2 restart

Como nosso DNS ainda não está pronto para o IPv6, se você atualizar a página, ainda mostrará da mesma forma, em IPv4. Uma forma de testar é acessar a URL via IP, para isso, no formato IPv6 digite no browser das estações:

http://[2001:db8::1]/

Page 11: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

6. Configurando BIND

Nessa sessão, apresentaremos o funcionamento do serviço de DNS (Domain NameSystem) em uma rede IPv6 utilizando o software BIND. O laboratório irá mostrar acapacidade dos servidores DNS em armazenar tanto registros do tipo A, para endereçosIPv4, quanto registros AAAA (quad-A), para endereços IPv6; e o fato das respostas àsconsultas DNS serem independentes do protocolo de rede utilizado, ou seja, um servidor écapaz de responder tanto consultas AAAA quanto A mesmo que possua conexão apenas IPv4 ouapenas IPv6.

O protocolo Domain Name System (DNS) é uma imensa base de dados distribuída em umaestrutura hierárquica, utilizada para a tradução de nomes de domínios em endereços IP evice-versa.

Os dados associados aos nomes de domínio estão contidos em Resource Records ou RRs(Registro de Recursos). Atualmente existe uma grande variedade de tipos de RRs, sendo os maiscomuns:

• SOA - Indica onde começa a autoridade sobre uma zona; • NS - Indica um servidor de nomes para uma zona; • A - Mapeamento de nome a endereço (IPv4); • AAAA - Mapeamento de nome a endereço (IPv6); • MX - Indica um mail exchanger para um nome (servidor de email); • CNAME - Mapeia um nome alternativo (apelido); • PTR - Mapeamento de endereço a nome.

Page 12: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

O funcionamento do serviço de DNS baseia-se em uma arquitetura cliente/servidor, onde ocliente realiza requisições por RRs aos Servidores Recursivos. Ao receber requisições, osServidores Recursivos as encaminham para Servidores Autoritativos e conforme a respostarecebida, continuam a encaminhar as requisições para outros Servidores Autoritativos até obteremuma resposta satisfatória. Dentro da estrutura hierárquica do DNS, os Servidores Autoritativosrespondem as requisições sobre as zonas ou domínios pelos quais possuem autoridade ou umareferência caso conheçam o caminho para a resposta, ou uma negação caso não conheçam.

Para que o DNS trabalhe com a versão 6 do protocolo Internet, algumas mudançasforam definidas na RFC 3596.

• Um novo tipo de RR foi criado para armazenar os endereços IPv6 de 128 bits, oAAAA ou quad-A. Sua função é a de traduzir nomes para endereços IPv6, de formaequivalente a do registro do tipo A no IPv4. Caso um dispositivo possua mais de umendereço IPv6, ele deverá ter um registro quad-A para cada. Os registros sãorepresentados como se segue:

Exemplo: www.wtr.exemplo.com IN A 200.160.4.22www.wtr.exemplo.com IN AAAA 2001:db8::22

Para resolução de reverso, foi adicionado ao registro PTR o domínio ip6.arpa,responsável por traduzir endereços IPv6 em nomes. Em sua representação, o endereço é escritocom o bit menos significativo colocado mais a esquerda, como é possível observar no exemplo aseguir:

Exemplo:

22.4.160.200.in-addr.arpa PTR www.wtr.exemplo.com. 2.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa PTR www.wtr.exemplo.com

Todos os outros tipos de registro DNS não sofreram alterações em sua forma de configuração,apenas foram adaptados para suportar o novo tamanho dos endereços.

Experiência: Configurando um Servidor DNS

6.1 Neste laboratório, temos um servidor DNS com IPv4 que responde pelo domíniowww.wtr.exemplo.com além de duas estações (windows e linux). Nas máquinas clientes, verifique seos domínios citados estão acessíveis. Para isso, abra um browser de sua preferencia e digite a url:

http://www.wtr.exemplo.com

6.2 Inicialmente, analise os arquivos de configuração do BIND localizados no servidor DNS. Esteservidor já está configurado para responder requisições por registros tipo A e de endereçamentoreverso IPv4.

Page 13: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

Para isso, acesse o terminal do nosso “servidor” e visualize o arquivo named.conf.optionslocalizado no diretório /etc/bind/ digitando o seguinte comando:

# cat /etc/bind/named.conf.options

O arquivo named.conf.options deverá conter as linhas

options{ directory “/var/cache/bind”; listen-on {any;}; allow-query {any;} recursion no; };

Este arquivo contem as configurações básicas necessárias para o funcionamentodo servidor DSN autoritativo. No primeiro bloco de comandos, o options, temos asespecificações que controlam o comportamento global do servidor. Neste exemplo,são listadas as seguintes opções: directory, que indica em qual diretórioencontram-se os arquivos utilizados pelo BIND; listen-on, lista os endereçosIPv4 e Portas habilitadas para responderem as requisições DNS, neste exemploestá a configuração padrão, responder em qualquer interface e na porta 53; allow-query, lista de quais endereços IP têm permissão para realizar requisições, nesteexemplo são aceitas requisições vindas de qualquer IP; e recursion, indica se oservidor é capaz (yes) ou não (no) de reencaminhar requisições a outros servidoresautoritativos.

6.3 Visualize também o arquivo named.conf.local onde encontra-se as zonas locais.

# cat /etc/bind/named.conf.local

O arquivo named.conf.local deverá conter as linhas

zone "wtr.exemplo.com" { type master; file "/etc/bind/wtr-exemplo.zone";

Page 14: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

};

zone "1.168.192.in-addr.arpa." { type master; file "/etc/bind/reversa-wtr-exemplo.zone"; };

Acima está a zona conhecida pelo servidor. A zona “wtr.exemplo.com” indica odomínio sobre o qual o servidor DNS tem autoridade para responder requisições (typemaster) e a “1.168.192.in-addr.arpa” indica qual a zona de endereçamento reverso IPv4o servidor responde. Agora, analise cada um dos arquivos relacionados a estas duaszonas.

6.4 Primeiro analise o arquivo de zona “wtr-exemplo.zone” localizado no diretório /etc/bind/, paraisso, digite o seguinte comando:

# cat /etc/bind/wtr-exemplo.zone

O arquivo wtr-exemplo.zone deverá conter as linhas:

$TTL 2D @ IN SOA ns.wtr.exemplo.com. admin.wtr.exemplo.com. ( 2012092803 ; serial 28800 ; refresh 7200 ; retry 604800 ; expire 86400 ) ; minimun @ IN NS ns.wtr.exemplo.com. ;; Servidor de e-mail

wtr.exemplo.com. IN MX 10 mail.wtr.exemplo.com mail IN A 192.168.1.22

;; Politica de SPF wrt.exemplo.com. IN TXT "v=spf1 mx ip4:192.168.1.0/24 -all" wrt.exemplo.com. IN SPF "v=spf1 mx ip4:192.168.1.0/24 -all"

;; Servidor Web IPv4

ns IN A 192.168.1.1 www IN CNAME ns Este arquivo apresenta os registros e diretivas relacionados a zona wtr.exemplo.comA diretiva $TTL (Time To Live) indica o tempo que os registros devem permanecer nocache sem que sejam atualizados, podendo ser expresso em segundos, minutos, horas,dias ou semanas (em nosso exemplo está setado para dois dia).

Page 15: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

6.5 Agora, analise o arquivo reversa-wtr-exemplo.zone localizado no diretório /etc/bind/. Para isso,digite o seguinte comando:

# cat /etc/bind/reversa-wtr-exemplo.zone

O arquivo reversa-wtr-exemplo.zone deverá conter as linhas:

$TTL 38400 ; @ IN SOA ns.wtr.exemplo.com. admin.wtr.exemplo.com. ( 2012092403 ;serial 28800 ;refresh 7200 ;retry 3600000 ;expire 86400 ) ;minimum

@ IN NS ns.wtr.exemplo.com.

; Reverso IPv4 $ORIGIN 1.168.192.in-addr.arpa.

1 IN PTR wtr.exemplo.com.

Este arquivo apresenta os registros e diretivas relacionados a zona de endereçamento reversa IPv4.

6.6 Faça agora algumas consultas DNS para testar as configurações do servidor DNS.

a) Para isso, acesse a máquina “cliente debian” e digite no terminal o seguinte comando:

# host www.wtr.exemplo.com

O resultado deve ser semelhante:

wtr@wtr:/home/wtr# host www.wtr.exemplo.comwww.wtr.exemplo.com is an alias for ns.wtr.exemplo.comns.wtr.exemplo.com has address 192.168.1.1wtr@wtr:/home/wtr#

A partir da resposta obtida pode-se observar que: • O nome www.wtr.exemplo.com é um alias (apelido) para o domínio

ns.wtr.exemplo.com; • Para o nome consultado há um endereço IPv4 associado, o

192.168.1.1;

Page 16: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

b) Outra consulta que pode ser realizada é a de resolução de endereço reverso. Acesse amáquina “cliente Debian” e digite o seguinte comando:

# host 192.168.1.1

O resultado deve ser aparentemente:

wtr@wtr:/home/wtr# host 192.168.1.11.1.168.192.in-addr.arpa domain name pointer wtr.exemplo.com.wtr@wtr:/home/wtr#

O conteúdo das respostas é baseado nas informações contidas nos arquivos reversa-wtr-exemplo.zone e wtr-exemplo.zone, existentes no Servidor DNS e analisadas nos itens 6.4 e 6.5 deste exercício.

Deste modo, o próximo passo é configurar o servidor para que ele seja capaz de receberrequisições via IPv6 quanto responder endereços IPv6 às consultas realizadas.

c) Primeiro, acesse o terminal do Servidor e edite o arquivo named.conf.optionslocalizado no diretório /etc/bind/ digitando o seguinte comando:

# vim /etc/bind/named.conf.options

Apenas uma vez, tecle “i” para entrar no modo de edição (aparecerá “INSERÇÃO no final do arquivo). Com as “setas” do teclado, desloque o curso para a linha, na qual,deseja inserir novas entradas na configuração do arquivo.

d) Adicione às opções a linha listen-on-v6 {any;};, habilitando o servidor a receberconsultas via IPv6. O campo options do arquivo named.conf.options ficará desta forma:

ATENÇÃO: Apenas adicione a linha indicada. O restante do arquivo não deve ser alterado!

options { directory "/var/cache/bind"; listen-on {any;};

listen-on-v6 {any;};allow-query {any;}; recursion no; auth-nxdomain no; # conform to RFC1035

Page 17: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

};

Após inserir entrada, aperte a tecla “ESC” e digite “:x” (para sair e salvar).

e) Antes de reiniciar o processo do BIND, verifique se o arquivo “named.conf ” foi geradocorretamente. Isso pode ser feito através do seguinte comendo:

# named-checkconf -p /etc/bind/named.conf

O resultado deve ser semelhante:

root@wtr:/etc/bind# named-checkconf -p /etc/bind/named.conf options {

directory "/var/cache/bind"; listen-on {

"any"; }; listen-on-v6 {

"any"; }; ………

root@wtr:/etc/bind#

f) Edite também o arquivo wtr-exemplo.zone localizado no diretório /etc/bind/,adicionando os endereços IPv6 aos nomes e registros já configurados e alterando osparâmetros das políticas de SPF. Para isso, digite o seguinte comando:

# vim /etc/bind/wtr-exemplo.zone

ATENÇÃO: Apenas adicione a linha indicada. O restante do arquivo não deve ser alterado! ATENÇÃO: Qualquer alteração nos arquivos de zona deve-se modificar o serial.

$TTL 2D @ IN SOA ns.wtr.exemplo.com. admin.wtr.exemplo.com. (

Page 18: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

2012092802 ; serial 28800 ; refresh 7200 ; retry 604800 ; expire 86400 ) ; minimun

@ IN NS ns.wtr.exemplo.com.

;; Servidor de e-mail

wtr.exemplo.com. IN MX 10 mail.wtr.exemplo.com mail IN A 192.168.1.22 mail IN AAAA 2001:db8::22

;; Politica de SPF wrt.exemplo.com. IN TXT "v=spf1 mx ip4:192.168.1.0/24 ipv6:2001:db8:4::\48 -all " wrt.exemplo.com. IN SPF "v=spf1 mx ip4:192.168.1.0/24 ipv6:2001:db8:4::\48 -all"

;; Servidor Web

ns IN A 192.168.1.1 ns IN AAAA 2001:db8::1 www IN CNAME ns

Observe que além de adicionar os registros AAAA aos nomes de domínios previamentecadastrados, também foram adicionados parâmetros às políticas de SPF.

g) Para verificar se não existem erros no arquivo de zona gerado, digite o seguinte comandono terminal do Servidor:

# named-checkzone wtr.exemplo.com /etc/bind/wtr-exemplo.zone

O resultado deve ser aparentemente:

wtr2012@wtr2012:/home/wtr2012# named-checkzone wtr.exemplo.com /etc/bind/wtr-exemplo.zonezone wtr.exemplo.com/IN: loaded serial 15OKwtr2012@wtr2012:/home/wtr2012#

Page 19: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

h) Caso os passos anteriores não tenham apresentado erros de execução, reinicie oprocesso do BIND para que as alterações sejam aplicadas. Para isso, digite os seguintescomandos:

# /etc/init.d/bind9 restart

wtr@wtr:/home/wtr# /etc/init.d/bind9 restart Stopping domain name service...: bind9 Starting domain name service...: bind9.wtr@wtr:/home/wtr#

Para verificar se as alterações foram realizadas corretamente, acesse a máquina “clienteDebian” e realize algumas requisições DNS. Para isso, utilize o comando host digitandoo seguinte:

# host www.wtr.exemplo.com

O resultado deve ser aparentemente:

wtr@wtr:/home/wtr# host www.wtr.exemplo.comwww.wtr.exemplo.com is an alias for ns.wtr.exemplo.com.ns.wtr.exemplo.com has address 192.168.1.1ns.wtr.exemplo.com has IPv6 address 2001:db8::1wtr@wtr:/home/wtr#

Além das informações obtidas no item 6.4, também temos agora um endereço IPv6 associado ao nome www.wtr.exemplo.com. Ou seja, o domíniowww.wtr.exemplo.com está funcionando em pilha dupla (IPv4 e Ipv6).

6.7 Para finalizar o exercício, configure o Servidor para responder a requisições de endereçamentoreverso IPv6.

i) Para isso, acesse a máquina servidor e crie o arquivo reversa-ipv6-wtr-exemplo.zonedentro do diretório /etc/bind/, digitando o seguinte comando:

# vim /etc/bind/reversa-ipv6-wtr-exemplo.zone

Adicione as linhas abaixo ao arquivo reversa-wtr-exemplo.zone

Page 20: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

$TTL 38400 ; @ IN SOA ns.wtr.exemplo.com. admin.wtr.exemplo.com. ( 2012092403 ;serial 28800 ;refresh 7200 ;retry 3600000 ;expire 86400 ) ;minimum

@ IN NS ns.wtr.exemplo.com.

$ORIGIN 0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa.

1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR www.wtr.exemplo.com.

Neste arquivo foi adicionado os registros e diretivas relacionados a zona deendereçamento reversa IPv6.

j) Para verificar se não existem erros no arquivo de zona gerado, digite o seguinte comandono terminal do Servidor:

# named-checkzone 0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2 /etc/bind/reversa-ipv6-wtr-exemplo.zoneO resultado deve ser aparentemente:

wtr@wtr:/home/wtr# named-checkzone \ 0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa /etc/bind/reversa-wtr.zone zone 0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa/IN: loaded serial 2012092401 OK wtr@wtr:/home/wtr#

k) Agora, cadastre essa zona no arquivo named.conf.local, localizado no diretório/etc/bind/. Para isso, digite o seguinte comando no terminal da máquina Servidor:

# vim /etc/bind/named.conf.local l) Adicione ao final do arquivo as seguintes linha:

zone "0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa." {

Page 21: V Workshop de Tecnologias de Rede do PoP-BA · “Dado um ambiente funcional sobre o protocolo IPv4, migrar todo ambiente para o protocolo IPv6, mantendo em funcionamento todos os

type master; file "/etc/bind/reversa-ipv6-wtr-exemplo.zone"; };

m)Antes de reiniciar o processo do BIND, verifique se o arquivo “named.conf.local ” foigerado corretamente. Isso pode ser feito através do seguinte comendo:

# named-checkconf -p /etc/bind/named.conf

n) Caso os passos anteriores não tenham apresentado erros de execução, reinicie o processodo BIND para que as alterações sejam aplicadas. Para isso, digite os seguintescomandos:

# /etc/init.d/bind9 restart

o) Para verificar se as alterações foram realizadas corretamente, acesse a máquina “clienteDebian” e realize algumas requisições DNS. Para isso, utilize o comando host digitandoo seguinte:

# host 2001:db8::1

O resultado deve ser aparentemente:

wtr@wtr:/home/wtr# host 2001:db8::11.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa domain name pointer www.wtr.exemplo.com.wtr@wtr:/home/wtr#

1. Para encerrar, é possível realizar uma série de testes de conectividade através do nome deuma máquina. Algumas opções podem ser feitas com a utilização dos comandos ping ouping6, traceroute ou traceroute6 e mtr. Alguns exemplos são: ]

# ping www.wtr.exemplo.com# ping6 www.wtr.exemplo.com# mtr www.wtr.exemplo.com# traceroute6 www.wtr.exemplo.com