livro lab ipv6

417

Upload: joao-fernandes-di-fiori

Post on 14-Sep-2015

114 views

Category:

Documents


3 download

DESCRIPTION

Ipv6

TRANSCRIPT

  • ii

    ii

    ii

    ii

  • ii

    ii

    ii

    ii

  • ii

    ii

    ii

    ii

  • ii

    ii

    ii

    ii

    Licena

    Este livro est sob a licena Creative Commons Atribuio Uso noComercial Com compartilhamento pela mesma licena 4.0 Internacional(CC BY-NC-SA 4.0), que est aqui resumida e pode ser lida em sua nte-gra em: http://creativecommons.org/licenses/by-nc-sa/4.0/ Isso significaque voc pode copiar partes ou todo este livro e redistribuir omaterial em qualquer suporte ou formato. Voc pode tambmmodificar o material da forma que desejar. Voc deve, contudo,atribuir o devido crdito, informando que o livro original pode ser obtidono site http://lab.ipv6.br. Voc no pode utilizar este livro para fins co-

    merciais e obras derivadas devem seguir esta mesma licena.

    Dados dos Internacionais de Catalogao na Publicao (CIP)(Cmara Brasileira do Livro, SP, Brasil)

    Laboratrio de IPv6 [livro eletrnico] : aprendana prtica usando um emulador de redes / EquipeIPV6.br. So Paulo : Novatec Editora, 2015.11,6 Mb ; PDF.

    Vrios autores.Bibliografia.ISBN 978-85-7522-434-2

    1. Internet (Rede de computadores) 2. Redes decomputadores - Protocolos I. Equipe IPV6.br.

    15-04022 CDD-004.62

    ndices para catlogo sistemtico:1. Redes de computadores : Protocolos e

    aplicaes : Processamento de dados 004.62

  • ii

    ii

    ii

    ii

    Antonio Marcos MoreirasRodrigo Regis dos SantosAlexandre Yukio HaranoEdwin Santos CordeiroTiago Jun Nakamura

    Eduardo Barasal MoralesHeitor de Souza GanzeliRodrigo Matos Carnier

    Gustavo Borges Lugoboni

  • ii

    ii

    ii

    ii

    Esta uma publicao do:

    Ncleo de Informao e Coordenao do Ponto BR NIC.br

    Diretor Presidente: Demi Getschko

    Diretor Administrativo: Ricardo Narchi

    Diretor de Servios: Frederico Neves

    Diretor de Projetos Especiais e de Desenvolvimento: Milton Ka-oru Kashiwakura

    Diretor de Assessoria s Atividades do CGI.br: Hartmut RichardGlaser

    Coordenao Executiva e Editorial: Antonio Marcos Morei-ras

    Reviso: Rodrigo Regis dos Santos, Alexandre Yukio Harano,Tiago Jun Nakamura, Tuany Oguro Tabosa e Alexei Dimitri DinizCampos

    Editorao Eletrnica: Alexandre Yukio Harano e GustavoBorges Lugoboni

    Capa: Maricy Rabelo

  • ii

    ii

    ii

    ii

    Sobre o CEPTRO.br e sobre o projeto IPv6.br

    O Centro de Estudos e Pesquisas em Tecnologias de Redes e Operaes a rea do NIC.br responsvel por iniciativas que visam melhorar aqualidade da Internet no Brasil e disseminar seu uso, com especial atenopara seus aspectos tcnicos e de infraestrutura. A equipe do CEPTROdesenvolve solues em infraestrutura de redes, software e hardware, almde gerenciar projetos executados por parceiros externos.

    Um dos principais projetos do CEPTRO o IPv6.br, que engloba umasrie de iniciativas do NIC.br para disseminar o IPv6 no Brasil. Entreelas, este livro.

    O IPv6.br oferece cursos presenciais gratuitos, com teoria e prtica, paraprovedores Internet e outras instituies. Entre 2009 e 2013, mais de3000 pessoas foram capacitadas nesses treinamentos. Os experimentospara aprendizado do IPv6 apresentados neste trabalho foram criadospara uso nesses cursos e isso vem sendo feito com timos resultados.

    As iniciativas englobam ainda a realizao de reunies de coordenaocom diversas entidades, visando a estratgia para implantao do IPv6no pas; a disponibilizao de informaes e de material didtico nosite http://ipv6.br, cursos em formato e-learning e EaD, palestras emuniversidades, empresas e eventos de tecnologia; bem como a realizaode eventos sobre o IPv6, como os Fruns Brasileiros de IPv6 e osdiversos IPv6 no Caf da Manh.

    Sobre os autores

    Este livro foi escrito a muitas mos pela equipe do IPv6.br, do Centro deEstudos e Pesquisas em Tecnologias de Redes e Operaes, do NIC.br. Aequipe formada por engenheiros, analistas e estudantes com conheci-mentos e experincia em desenvolvimento de software, no funcionamentoda Internet e das redes de computadores.

  • ii

    ii

    ii

    ii

  • ii

    ii

    ii

    ii

    i

    Sumrio

    Lista de abreviaturas iii

    Prefcio v

    Introduo 1

    1 Funcionalidades bsicas 9Experincia 1.1 NDP: Neighbor Solicitation e Neighbor

    Advertisement . . . . . . . . . . . . . . . . . . 9Experincia 1.2 NDP: Router Solicitation . . . . . . . . . . . . 15Experincia 1.3 NDP: Router Advertisement . . . . . . . . . . 22Experincia 1.4 NDP: deteco de endereos duplicados . . . . 27Experincia 1.5 SLAAC: Router Advertisement utilizando

    Quagga . . . . . . . . . . . . . . . . . . . . . . 35Experincia 1.6 SLAAC: Router Advertisement utilizando radvd 41Experincia 1.7 DHCPv6 stateful . . . . . . . . . . . . . . . . 51Experincia 1.8 DHCPv6 stateless . . . . . . . . . . . . . . . . 67Experincia 1.9 DHCPv6 Prefix Delegation . . . . . . . . . . . 81Experincia 1.10 Path MTU Discovery . . . . . . . . . . . . . . 99

    2 Servios 105Experincia 2.1 DNS: consultas DNS . . . . . . . . . . . . . . 105Experincia 2.2 DNS: servidor autoritativo . . . . . . . . . . . 117Experincia 2.3 HTTP: novas pginas no Apache . . . . . . . 130Experincia 2.4 HTTP: pginas existentes no Apache . . . . . 135Experincia 2.5 HTTP: novas pginas no Nginx . . . . . . . . 141

  • ii

    ii

    ii

    ii

    ii SUMRIO

    Experincia 2.6 Proxy Web direto . . . . . . . . . . . . . . . . 147Experincia 2.7 Proxy Web reverso . . . . . . . . . . . . . . . . 160Experincia 2.8 Samba . . . . . . . . . . . . . . . . . . . . . . 168

    3 Segurana 177Experincia 3.1 Ataque DoS ao NDP . . . . . . . . . . . . . . 177Experincia 3.2 Firewall stateful . . . . . . . . . . . . . . . . . 185Experincia 3.3 IPsec: Transporte . . . . . . . . . . . . . . . . 217Experincia 3.4 IPsec: Tnel . . . . . . . . . . . . . . . . . . . 244

    4 Tcnicas de transio 255Experincia 4.1 Tnel 6in4 . . . . . . . . . . . . . . . . . . . . 255Experincia 4.2 Tnel GRE . . . . . . . . . . . . . . . . . . . 262Experincia 4.3 Dual Stack Lite (DS-Lite): implantao . . . . 268Experincia 4.4 6rd: configurao de relay e CPE (/64) . . . . 276Experincia 4.5 6rd: configurao de CPE (/56) . . . . . . . . 285Experincia 4.6 NAT64: implantao utilizando TAYGA . . . 293Experincia 4.7 464XLAT . . . . . . . . . . . . . . . . . . . . 310

    5 Roteamento 323Experincia 5.1 OSPFv3: configurao de uma nica rea . . . 323Experincia 5.2 BGP . . . . . . . . . . . . . . . . . . . . . . . 334

    A Instalao de pacotes 363

    B Emulador de redes CORE 367

    C Comandos bsicos 379

    Referncias Bibliogrficas 389

    ndice remissivo 393

  • ii

    ii

    ii

    ii

    iii

    Lista de abreviaturas

    6rd IPv6 Rapid Deployment on IPv4 InfrastructuresA+P Address plus PortARP Address Resolution ProtocolCPE Customer Premises EquipmentDAD Duplicate Address DetectionDHCP Dynamic Host Configuration ProtocolDNS Domain Name SystemDNS64 DNS Extensions for Network Address Translation from

    IPv6 Clients to IPv4 ServersDoS Denial-of-ServiceDS-Lite Dual-Stack LiteIA Identity-AssociationICMP Internet Control Message ProtocolICMPv4 Internet Control Message Protocol version 4ICMPv6 Internet Control Message Protocol version 6ICP Internet Cache ProtocolHTTP Hypertext Transfer ProtocolIGMP Internet Group Management ProtocolIGP Interior Gateway ProtocolIP Internet ProtocolIPsec Internet Protocol Security

  • ii

    ii

    ii

    ii

    iv LISTA DE ABREVIATURAS

    IPv4 Internet Protocol version 4IPv6 Internet Protocol version 6ISO International Organization for StandardizationISP Internet Service ProviderMAC Media Access ControlMTU Maximum Transmission UnitNA Neighbor AdvertisementNAT Network Address TranslatorNAT64 Network Address and Protocol Translation from

    IPv6 Clients to IPv4 ServersNDP Neighbor Discovery ProtocolNS Neighbor SolicitationOSI Open Systems InterconnectionPMTUD Path MTU DiscoveryRA Router AdvertisementRARP Reverse Address Resolution ProtocolRR Resource RecordRS Router SolicitationSA Security AssociationSAD Security Association DatabaseSLAAC IPv6 Stateless Address AutoconfigurationSEND SEcure Neighbor DiscoverySPD Security Policy DatabaseTTL Time To LiveVM Virtual Machine

  • ii

    ii

    ii

    ii

    v

    Prefcio

    A concepo da Internet um dos marcos tecnolgicos mais contunden-tes da sociedade moderna, tendo propiciado mudanas significativas deparadigmas do como fazer nas mais diversas reas incluindo educao,entretenimento, pesquisa, transporte, comrcio, sade, entre diversasoutras. Essa repercusso to intensa e bem sucedida deve-se, em grandeparte, simplicidade dos seus protocolos de comunicao, mais especifica-mente de seus dois protocolos principais: o TCP (Transmission ControlProtocol) e o IPv4 (Internet Protocol). O IPv4 tem como funo principalviabilizar a interconexo de redes, sendo responsvel basicamente pelo en-dereamento lgico neste ambiente, segmentao, priorizao de pacotese descarte de pacotes com problemas de roteamento. Considerando que aconcepo da Internet data da dcada de 70 e que, de l para c, houveuma exploso inesperada do seu uso, o IPv4 mostrou-se inadequado paraacompanhar esta evoluo.

    Uma das deficincias mais apontadas do IPv4 foi o espao de endere-amento baseado num valor inteiro de 32 bits, que tipicamente repre-sentado por quatro octetos em decimal. Para contornar essa deficincia,inmeras solues paliativas foram propostas e adotadas, como por exem-plo o NAT (Network Address Solution) e o CIDR (Classless InterDomainRouting). Contudo, medida que novas tecnologias de redes surgirame o IP continuava sendo um dos protocolos chaves para sua operao,outras deficincias comearam a ser detectadas, especialmente aquelasreferentes segurana e ao suporte a parmetros de QoS (Quality ofService) e mobilidade.

  • ii

    ii

    ii

    ii

    vi PREFCIO

    Como consequncia, no inicio da dcada de 90 publicada a propostada nova gerao do IP (IPng IP next generation) ou IPv6. Este novoprotocolo traz a soluo para muitas das deficincias de seu predecessor,o IPv4, incluindo espao de endereamento de 128 bits, suporte a rotea-mento e segmentao de pacotes na estao origem, suporte a mobilidadee mecanismos de segurana.

    Contudo, desde ento, o IPv6 no foi amplamente adotado, apesar deesforos e incentivos de diversos governos, como o americano e brasileiro.Os principais motivos para resistncia sua adoo so o grande parquede equipamentos instalados com IPv4 nativo, os custos de implantaode solues de migrao (como por exemplo, Dual Stack ou Pilha Dupla)do IPv4 para IPv6 e a prpria curva de aprendizado.

    A despeito disso, a especificao do IPv6 tem sido continuamente revisadapara acompanhar a evoluo tecnolgica das redes de computadores esua crescente penetrao nos mais diversos setores da economia. Dentreos vrios avanos tecnolgicos, podem-se mencionar a convergncia detelefonia e redes de computadores; a mobilidade; mecanismos de segu-rana; a adoo crescente de mdias de alta resoluo e a necessidadede seu compartilhamento; o advento de Internet das Coisas (Internet ofThings) indo em direo Internet de Tudo (Internet of Everything).

    Tudo isso indica que o IPv4 tem seus dias contados e o IPv6 j estbatendo na sua porta em virtude nesta nova realidade cada vez maiscategrica de um mundo conectado dentro do contexto de Internet deTudo (Internet of Everything). Essa realidade traz enormes desafios,como a necessidade do desenvolvimento de competncias tcnicas na reade IPv6.

    Este livro, intitulado Laboratrio de IPv6: aprenda na prticausando um emulador de redes ajuda a preencher a lacuna no ensinode redes de computadores e na criao de competncia tcnica no quetange ao IPv6. Mesmo que a padronizao do protocolo j tenha acon-tecido h mais de quinze anos, o IPv6 foi relegado a um segundo planona formao dos profissionais, conforme explicado anteriormente. Se oseu estudo no o incluiu quando aprendeu a lidar com redes, este livro

  • ii

    ii

    ii

    ii

    vii

    o ajudar a reciclar seu conhecimento. Se voc est aprendendo sobreredes agora e quer ter uma viso mais prtica e experimental, timo.Voc est no caminho certo. O IPv6 em substituio do IPv4, ser, embreve, o protocolo mais utilizado em redes em geral.

    Como o prprio nome indica, este livro tem um carter prtico e contmroteiros para experimentos que podem auxili-lo no seu aprendizado. Elepode ser usado tanto por quem est comeando a aprender sobre redesagora, como por profissionais experientes. No um livro apenas paraler, voc deve realizar os experimentos. Tambm importante entenderque ele no completo. Isto , no aborda toda a teoria ou todos ostpicos necessrios para uma compreenso completa de redes ou do IPv6. um complemento. Para aproveitar bem este contedo, voc deve ter aomenos lido sobre IPv6 e sobre redes em algum outro lugar. Caso aindano tenha feito isto, pode acessar o site http://ipv6.br e fazer o cursoe-learning gratuito ou ler o material terico l disponvel.

    A equipe do IPv6.br o projeto de disseminao do IPv6 do NIC.br foiquem preparou e aperfeioou estes experimentos. Tais experimentos temsido empregados, com muito sucesso, nos cursos de formao do NIC.br.Centenas de alunos e de profissionais j seguiram estes mesmos roteiros.Eles comprovadamente ajudam a entender a forma como o IPv6 funciona,como se diferencia do protocolo IPv4, e como realizar configuraes naprtica em uma srie de situaes. Os experimentos proporcionam umaexcelente base prtica, que o ajudar muito no seu dia a dia.

    Utiliza-se o emulador de redes CORE. um ambiente grfico, quepermitir a voc experimentar diversas topologias e configuraes deredes diferentes. No site do livro, http://lab.ipv6.br, voc pode baixaruma imagem de mquina virtual, que funciona em qualquer sistemaoperacional com o VirtualBox. Recomenda-se seu uso.

    O CORE roda nativamente no Linux ou no FreeBSD. Ento, apesarde ser recomendado o uso de mquina virtual baseada no VirtualBox,o Apndice A contm um guia para a instalao do emulador e outrasdependncias, caso voc decida fazer isso diretamente em seu computador.Somente faa isso se tiver uma boa experincia.

  • ii

    ii

    ii

    ii

    viii PREFCIO

    No Apndice B, voc pode encontrar mais informaes sobre o CORE eum guia bsico sobre como utiliz-lo. Caso voc nunca tenha usado esseemulador antes, revise este guia antes de se aventurar pelos experimentos.

    No Apndice C, foram includas algumas dicas sobre: como realizartarefas comuns a quase todas as experincias; como verificar os endereosIP; testar a conectividade entre dispositivos, capturar e analisar pacotes.Caso voc no conhea bem o ambiente Linux e no esteja acostumadocom as ferramentas utilizadas nas experincias, este apndice tambmdever ser lido.

    A ordem dos experimentos no livro a mesma utilizada nos cursosdo NIC.br. Caso seja novato no assunto e queira ter uma viso geral,voc poder realizar as experincias na ordem em que so apresentadas.Caso contrrio, voc poder buscar as que mais se adequam s suasnecessidades imediatas.

    No captulo 1, constam experimentos sobre o funcionamento bsicodo IPv6. explicado: como ele faz o mapeamento com a camada deenlace; como funciona a autoconfigurao stateless, sem uso de DHCP(Dynamic Host Configuration Protocol); como usar o DHCPv6 e o prefixdelegation; como descoberto o valor da MTU (Maximum TransmissionUnit). Tudo isto funciona de forma diferente do IPv4 e, se voc querentender realmente bem o IPv6 e ser capaz de resolver problemas em suarede, este experimentos iro ajud-lo.

    No captulo 2, as experincias abordam servios importantes em umarede, como DNS (Domain Name System), servidor Web, proxy e servidorde arquivos. Voc ver que as configuraes no so muito diferentes dasusadas com o protocolo antigo, mas que h alguns detalhes importantesa serem observados. Se voc vai ativar o IPv6 nesses servios, faa estesexperimentos.

  • ii

    ii

    ii

    ii

    ix

    No captulo 3, aborda-se a questo da segurana. Assim como o protocoloantigo, o IPv6 tem tambm vulnerabilidades. Uma das experincias ilus-tra isto, explorando uma falha no protocolo de descoberta de vizinhana.Mostra-se, tambm, como configurar um firewall IPv6, com ateno espe-cial s regras referentes ao ICMPv6 (Internet Control Message Protocol).H tambm experimentos com configurao de IPsec. So experimentosrecomendados a todos.

    No captulo 4 so mostrados diversos tipos de tcnicas de migrao etransio do IPv4 para o IPv6. Dentre tais tcnicas, podem-se citar:Tneis 6in4 e GRE (Generic Routing Encapsulation), que so teis deforma geral. O Dual Stack Lite, 6rd, NAT64 e 464XLAT so tcnicasque podem ser usadas por provedores de acesso Internet.

    O captulo 5, por fim, aborda roteamento dinmico, com um experimentosobre OSPFv3 e outro sobre BGP.

    O principal objetivo da equipe do NIC.br ao desenvolver este livro foicriar uma referncia que possa ajud-lo a entender o IPv6 e us-lo naprtica do seu dia a dia. Caso tenha dvidas, comentrios ou sugestes,voc pode entrar em contato pelo site http://lab.ipv6.br. O IPv6 sercada vez mais um tema obrigatrio para profissionais experientes einiciantes em redes. Bom aprendizado e muito sucesso!

    Tereza Cristina Melo De Brito CarvalhoProfa. Associada da Escola Politcnica da USPCoordenadora tcnica de projetos do LARC-PCS-EPUSP

  • ii

    ii

    ii

    ii

  • ii

    ii

    ii

    ii

    1

    Introduo

    Voc j parou para pensar em quanto a Internet til em nosso dia a dia?Praticamente todo tipo de informao est disponvel na rede. Advogadosconsultam o andamento de processos e atualizam-se sobre mudanas nalegislao. Cidados relacionam-se com o Poder Pblico. Organizaesno governamentais se articulam. Empresas oferecem servios, comprame vendem por meio da Internet. Crianas e jovens jogam online. Donasde casa buscam entretenimento. Estudantes buscam conhecimentos sobreos mais variados assuntos, usam a rede para comunicar-se e trocarinformaes. Para os profissionais de computao impensvel ficarde fora: informaes sobre linguagens de programao, novas tcnicas,algoritmos, equipamentos, tutoriais, exemplos, o dia a dia est na rede.E tanto mais! A Internet j fez jovens com empresas criadas no fundoda garagem tornarem-se milionrios e, de forma geral, ela tem ajudadono desenvolvimento pessoal de muita gente. Tem sido to benfica paraos indivduos e para a sociedade, que muito se discute hoje se o acesso Internet no deveria ser considerado um direito fundamental do serhumano!

    Isso foi sempre assim? Se pensarmos um pouco bastante bvio que no,pelo simples fato da Internet ser recente, extremamente recente. Por quea Internet assim, hoje, to til para todos? Quais so as caractersticasque permitiram que ela evolusse desde os tempos da ARPANet, quandointerligava centros de pesquisa dos militares estadunidenses, para o queela atualmente? Essa reflexo pode no parecer necessria, mas defato essencial. A Internet s to til, interessante e benfica porconta de um determinado conjunto de caractersticas, de propriedades.Suas caractersticas podem mudar com o tempo, ento importante

  • ii

    ii

    ii

    ii

    2 INTRODUO

    entender quais propriedades so realmente importantes, e preserv-las!Voc deve estar pensando o que isso tem a ver com o IPv6?... Em brevechegaremos l, mas importante antes destacar algumas caractersticasimportantes da Internet.

    Boa parte das caractersticas mais interessantes da rede mundial re-sultado da forma como ela foi projetada para funcionar. Na Internet,cada computador tem um nmero que o identifica de forma nica e sempossibilidade de confuso ou duplicao: o endereo IP. Ela foi proje-tada de forma que qualquer um dos computadores pode iniciar umaconversa, mandar informao para qualquer outro. Devemos lembrarque atualmente os computadores vm em diversos modelos e formatos.Quando falamos em computadores, podemos na verdade nos referir tantoa desktops e notebooks, quanto a telefones celulares, carros, ou diversosoutros tipos de equipamentos conectados. . . Essa propriedade da Inter-net que permite a qualquer dispositivo comunicar-se diretamente comqualquer outro chamada de conectividade fim a fim.

    A informao sempre dividida em pequenos pedaos, os pacotes, eidentificada com o endereo de origem e destino. Equipamentos na rededos usurios e nas diversas outras redes que se unem e colaboram paraformar a rede mundial esto encarregados de encontrar o caminho maisadequado e fazer cada um desses pacotes chegar ao destino correto. importante notar que esses equipamentos que encaminham os pacotese formam o ncleo da rede, os roteadores, realmente no fazem muitacoisa. Isto no significa que sua funo possa ser menosprezada, mas porsimplicidade eles s tm uma funo: enviar os pacotes pelo caminhocorreto at o destino! Isso quer dizer que o ncleo da rede no tem muitainteligncia. Dessa forma fica mais fcil gerenci-lo e faz-lo crescer. . . Defato, isso deu muito certo. A Internet cresceu, nos ltimos anos, de umarede que interligava alguns poucos centros de pesquisa estadunidensespara a grande rede mundial que conhecemos e utilizamos hoje, que estem praticamente todo lugar. Essa propriedade da Internet chamada desimplicidade do ncleo da rede.

  • ii

    ii

    ii

    ii

    3

    Por causa da conectividade fim a fim e da simplicidade do ncleo da rede,que so propriedades diretamente derivadas da forma ela foi projetadapara funcionar, os servios interessantes da Internet, como pginas Web,aplicaes, redes sociais, jogos, e tantos outros, funcionam nos servidorese computadores dos usurios, incluindo usurios domsticos, empresas detodos os tamanhos, governos, universidades, etc., nas extremidades darede. Isso quer dizer que para a rede as informaes so apenas pacotes eos pacotes so todos iguais entre si. Quer dizer tambm que qualquer umpode inventar novas aplicaes, servios ou protocolos para a rede: bastaescrever um novo software e distribu-lo. No h necessidade de pedirpermisso a quem controla a rede. No existe tal controle centralizado.Essa uma das razes da Internet ser to propcia inovao, aosnovos negcios e aos novos entrantes. uma das razes dela ser totil e interessante. A conectividade fim a fim e a simplicidade doncleo da rede esto, portanto, entre as caractersticas da rede que sofundamentais e que devemos preservar.

    aqui que entra o IPv6. Desde 1983 a Internet baseada no IP verso 4,ou IPv4. IP abreviao de Protocolo Internet e um protocolo nada mais do que um conjunto de regras que os computadores usam para conversar.Como visto anteriormente, uma das funes do Protocolo Internet a deidentificar cada dispositivo na rede mundial com um endereo numriconico, que chamamos de endereo IP. Toda a comunicao na rededepende desses endereos. Todos os servios e aplicaes usam o IP. aprincipal tecnologia da Internet. Cada novo usurio ou, mais precisamente,cada novo computador, tablet , smartphone, videogame, smart TV, ououtro dispositivo na rede precisa de um novo endereo IP. Mas eles sofinitos e praticamente j se esgotaram.

    No Brasil e na Amrica Latina j no temos mais IPs livres para conectarnovos usurios. Por isso existe o IPv6. uma nova verso do IP, commuito mais endereos, que foi projetada para substituir o IPv4 na rede.S que o IPv6 suficientemente diferente do IPv4 para que eles nosejam compatveis, ou seja, eles no interoperam. No d para usar IPv4numa parte da Internet e IPv6 em outra, porque esses diferentes pedaos,simplesmente, no poderiam se comunicar. Essa foi uma deciso deprojeto necessria para acrescentar algumas caractersticas interessantes

  • ii

    ii

    ii

    ii

    4 INTRODUO

    no novo protocolo. Contudo, isso complica um pouco a transio. Noentanto, h uma soluo relativamente simples: por um tempo, vamosus-los em paralelo. O caminho usar ambos simultaneamente por algunsanos e, depois, ir desativando o protocolo antigo aos poucos. Muitos sitesimportantes, por exemplo, j funcionam tanto com o IPv6, como com oprotocolo antigo.

    O fim do IPv4 no aconteceu de uma hora para outra. No incio dadcada de 1990, antes ainda da utilizao da Internet explodir emtodo o mundo, como um grande sucesso, j se sabia que isso aconteceria.Nessa mesma dcada, foi desenvolvido o IPv6 como soluo. O IPv6 foipadronizado em 1998, com a proposta inicial de fazer uma transiogradual, antes ainda do esgotamento do IPv4. Tecnologias como NAT,CIDR e DHCP foram tambm desenvolvidas nessa poca e implantadascom bastante sucesso na rede para dar mais tempo a essa transio.Contudo, a ideia de mudana gradual falhou. Tecnicamente era bastantesimples e adequada, mas olhando agora em retrospectiva fica fcil perceberque poucos estariam dispostos a investir na adoo de uma tecnologiaque resolveria um problema que iria acontecer de fato s dali a algunsanos. Que administrador de TI, por exemplo, no ano de 2001, pensariaem investir tempo e dinheiro para adotar o IPv6, sabendo que no teriavantagens relevantes se fizesse isso e s teria problemas, caso no fizessenada, possivelmente dali a 10 ou 15 anos? A maior parte das redes queformam a Internet resolveu esperar at o ltimo momento, at a transiorealmente ser necessria.

    Algo bastante complexo na transio para o IPv6 justamente saberquando ela realmente necessria. No possvel marcar uma data davirada nica. A Internet grande demais, complexa demais, descentrali-zada demais, para isso. At a data de publicao deste livro, muitas redesainda adiam a adoo do protocolo, pensando que um problema para ofuturo. O fato que o tempo ideal para implantarmos IPv6 j passou. Erabastante simples fazer isso enquanto ainda havia endereos IPv4 livrespara suportar o crescimento da Internet. Agora no h mais. Criamosum enorme complicador, do ponto de vista tcnico, que coloca em riscoa prpria rede, ameaando algumas das caractersticas que deveramospreservar.

  • ii

    ii

    ii

    ii

    5

    Na falta de endereos IPv4 para conectar novos usurios, os provedoresde acesso Internet trilharo dois caminhos em paralelo. Eles conectaronovos usurios com IPv6. Eles tambm usaro o protocolo antigo, o IPv4,mas como no tero mais endereos livres, vo compartilh-los entrediferentes usurios. A tecnologia que permite que dezenas de dispositivosdividam o mesmo endereo IPv4 o CGNAT, ou Carrier Grade NAT. uma variao da tecnologia de compartilhamento que hoje comum nasnossas casas e empresas, mas o fato de ser usada na rede do provedorquebra as propriedades de conectividade fim a fim e de simpli-cidade no ncleo da rede. O CGNAT um mal necessrio, mas seele vier desacompanhado do IPv6 pode ser um verdadeiro desastre paraa Internet.

    O CGNAT aumenta o custo da rede, pois acrescenta equipamentoscaros e complexos, que podem ser pontos de falha importantes, emseu ncleo. H aplicaes que no funcionam bem com a tecnologia,como conferncias de voz e vdeo, compartilhamento peer to peer ealguns jogos. Com o CGNAT um mesmo IP pode identificar dezenasou centenas de dispositivos simultaneamente, o que dificulta consultas bases de geolocalizao, bases de reputao, e mesmo investigaescriminais.

    Todos os grandes provedores no tero outra escolha, seno usar o CGNATou tecnologia similar durante algum tempo. Alguns j comearam ausar o IPv6 ou comearo antes disso, o que excelente. Outros, splanejam trabalhar com IPv6 algum tempo depois, o que motivo degrande preocupao. Uma Internet baseada s no compartilhamento dosendereos antigos algo que ningum quer. No pior caso, poderamoster uma rede muito pior do que a que existe hoje: fragmentada, poucopropcia inovao, aos novos entrantes e novos negcios.

    O IPv6 fundamental, ento, para a expanso da Internet, possibili-tando a continuidade da adio de novos usurios e o desenvolvimentoda Internet das Coisas, interligando os mais diversos tipos de objetosinteligentes. No exagero dizer que o IPv6 fundamental para a prpriasobrevivncia da Internet nos moldes em que a conhecemos atualmente.

  • ii

    ii

    ii

    ii

    6 INTRODUO

    as ser que o IPv6 realmente importante agora para a empresa, universi-dade ou outra entidade na qual o leitor est inserido? importante paraa rede que o leitor ajuda a administrar? A resposta sim. Se o leitor atuaem um provedor de acesso Internet, ou gerencia um outro tipo de redeque no tem endereos IPv4 suficientes para continuar se expandindo,essa resposta bastante bvia. Mas, mesmo que uma determinada rede jesteja conectada Internet e tenha IPs verso 4 suficientes para suportarsua expanso, nos prximos anos, ela no pode ficar parte na transiopara o IPv6. H duas razes principais para isso.

    A primeira razo de que a rede no est isolada. A nica escolha possvelpara muitas outras redes na Internet se expandirem a implantaodo IPv6. Se uma empresa, universidade, ou outra entidade tem serviosexpostos na Internet, com uma pgina na Web, ou um servidor de e-mailsprprio, importante que estes funcionem tambm usando IPv6 o maisrapidamente possvel. Assim, a conectividade com essas novas redese novos usurios que tero o IPv6 como opo preferencial no serprejudicada. por isso que os principais portais, buscadores e outrosservios na Internet j implantaram IPv6.

    A segunda razo que, de fato, h uma alta probabilidade de que a rede,qualquer rede, j trafegue pacotes IPv6. Se os usurios dessa rede tmverses recentes de Windows, Mac OS ou Linux em seus dispositivos,por exemplo, importante notar que nestes sistemas operacionais o IPv6est ativo por padro. H algum risco em usar o protocolo dessa forma,sem a devida preparao. Por exemplo, alguns computadores podemtentar, automaticamente e sem interveno ou conhecimento do usurioou administrador de redes, utilizar tcnicas de tunelamento para obterconectividade IPv6 na Internet, contornando dispositivos de proteo efiltros. No possvel simplesmente ignorar o IPv6.

    Se o leitor ainda no estava convencido da necessidade do IPv6, e de queagora a hora certa para implant-lo, esperamos que tenha encontradoneste captulo alguns bons argumentos para se convencer. Se j estavaconvencido, esperamos que esteja agora com essa convico reforada!Os demais captulos deste livro so bem diferentes. Eles buscam trazeruma viso prtica do funcionamento e do uso do IPv6 no dia a dia, pormeio de uma srie de experimentos. Este no um livro apenas para

  • ii

    ii

    ii

    ii

    7

    ser lido: deve-se praticar, realizando as experincias no emulador CORE.Estas experincias provavelmente no respondero a todas as dvidassobre o IPv6, mas certamente daro uma base bastante slida, deixandoo leitor confortvel para comear a trabalhar com ele e implant-lo nasredes que ajuda a gerenciar.

    Mos obra!

  • ii

    ii

    ii

    ii

  • ii

    ii

    ii

    ii

    9

    Captulo 1

    Funcionalidades bsicas

    Experincia 1.1. Neighbor Discovery Protocol: NeighborSolicitation e Neighbor Advertisement

    Objetivo

    Esta experincia tem como objetivo apresentar o funcionamento do me-canismo de descoberta de vizinhos do IPv6, que responsabilidade doprotocolo Neighbor Discovery. Isto ser feito forando a comunicaoentre dois ns diretamente ligados entre si com um ping IPv6, utilizandoo binrio ping6. Ser possvel observar como as mensagens NeighborSolicitation e Neighbor Advertisement so utilizadas para mapear o en-dereo fsico e o endereo IP.

    Para o presente exerccio ser utilizada a topologia descrita no arquivo:1-01-NSNA.imn.

    Introduo terica

    A descoberta de vizinhana por meio do protocolo Neighbor Discovery noIPv6 um procedimento realizado pelos ns de uma rede para descobrirendereos fsicos dos dispositivos vizinhos presentes no mesmo enlace. Afuno deste protocolo se assemelha funo do ARP e do RARP noIPv4.

  • ii

    ii

    ii

    ii

    10 FUNCIONALIDADES BSICAS

    O procedimento iniciado quando um dispositivo tenta enviar um pacotecujo endereo fsico de destino desconhecido. O n solicitante enviauma mensagem Neighbor Solicitation (NS) para todos os ns do enlacepertencentes ao grupo multicast solicited-node (ff02::1:ffXX:XXXX), demodo que XX:XXXX so os ltimos 24 bits do endereo IPv6 em queest interessado.

    possvel notar que, por uma coincidncia dos ltimos 24 bits, bastanteprovvel que apenas o n de destino faa realmente parte deste grupo.Isto um truque interessante do IPv6 para diminuir o trfego deste tipode pacote na rede.

    Na mensagem NS, o endereo IPv6 a ser resolvido informado no campoTarget. O campo Source link-layer address informa ao n de destino oendereo MAC do n de origem, poupando-o de ter que fazer o mesmoprocedimento no sentido inverso.

    O n de destino, dono do IPv6 requisitado, ao receber este pacote, enviauma mensagem Neighbor Advertisement (NA) como resposta diretamenteao n requisitante. O seu endereo fsico ser informado no campo Targetlink-layer address.

    A informao de mapeamento entre endereos IP e endereos fsicos armazenada em uma tabela chamada neighbor cache. Nela tambm ficaregistrado o status de cada destino, informando se o mesmo alcanvelou no.

    Roteiro experimental

    1. Inicie o CORE e abra o arquivo 1-01-NSNA.imn localizado no diretrio lab,dentro do Desktop. A topologia de rede, representada pela Figura 1.1,deve aparecer.

    O objetivo desta topologia de rede representar o mnimo necessriopara que a troca das mensagens NS e NA seja verificada.

    2. Conforme descrito nos Apndices B e C, inicialize a simulao e verifiquea configurao de endereos IPv6 nos ns n1HostA e n2HostB.

  • ii

    ii

    ii

    ii

    NDP: NEIGHBOR SOLICITATION E NEIGHBOR ADVERTISEMENT 11

    Figura 1.1: topologia da Experincia 1.1 no CORE.

    3. Em paralelo, efetue:

    (a) A coleta dos pacotes trafegados na interface eth0 de n1HostA. As instru-es de coleta de pacotes utilizando tcpdump ou Wireshark se encontramno Apndice C.

    (b) Um teste de conectividade IPv6 entre n1HostA e n2HostB com um ping6.

    4. Efetue a anlise dos pacotes coletados. Aplique o filtro icmpv6 noWireshark e procure pelos pacotes NS e NA. Analise-os e veja se osdados contidos nos pacotes conferem com o que foi passado na teoria.

    Campos importantes do NS, representado na Figura 1.2:

    Destination (camada Ethernet)O destino o endereo (33:33:ff:00:00:11), sendo que o prefixo 33:33indica que a mensagem um multicast na camada Ethernet. O sufixoff:00:00:11 indica os ltimos 32 bits do endereo multicast IPv6 damensagem.

  • ii

    ii

    ii

    ii

    12 FUNCIONALIDADES BSICAS

    Figura 1.2: pacote NS mostrado no Wireshark.

    Source (camada Ethernet)A origem o endereo MAC da interface do dispositivo que enviou asolicitao (00:00:00:aa:00:00).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 58 (0x3a)refere-se a uma mensagem ICMPv6.

    Source (camada IPv6)A origem o endereo IP da interface diretamente ligada ao enlaceem que se faz a requisio (2001:db8::10).

    Destination (camada IPv6)O destino o endereo multicast solicited-node (ff02::1:ff00:11).

    Type (camada ICMPv6)Indica que a mensagem do tipo 135 (Neighbor Solicitation).

  • ii

    ii

    ii

    ii

    NDP: NEIGHBOR SOLICITATION E NEIGHBOR ADVERTISEMENT 13

    ICMPv6 option (camada ICMPv6)Indica as opes do pacote ICMPv6:

    Source link-layer addressType

    Indica o tipo de opo. Neste caso, Source link-layer address.Link-layer address

    Indica o endereo MAC da interface de origem da mensagem.

    Campos importantes do pacote NA, representado na Figura 1.3:

    Figura 1.3: pacote NA mostrado no Wireshark.

    Destination (camada Ethernet)O endereo MAC do n requisitante que foi obtido por meio damensagem NS enviada anteriormente (00:00:00:aa:00:00).

    Source (camada Ethernet)A origem o endereo MAC da interface do dispositivo n1HostA queenviou a resposta (00:00:00:aa:00:01).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

  • ii

    ii

    ii

    ii

    14 FUNCIONALIDADES BSICAS

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 58 (0x3a)refere-se a uma mensagem ICMPv6.

    Source (camada IPv6)A origem o endereo IP da interface diretamente ligada ao enlaceem que a requisio foi recebida (2001:db8::11).

    Destination (camada IPv6)Diferentemente da mensagem NS, a mensagem NA possui comodestino o endereo IPv6 global do n requisitante (2001:db8::10).

    Type (camada ICMPv6)Indica que a mensagem do tipo 136 (Neighbor Advertisement).

    Flags (camada ICMPv6)Uma mensagem NA possui trs flags:

    Indica se quem est enviando um roteador. Neste caso, o valormarcado 0, pois no um roteador.

    Indica se a mensagem uma resposta a um NS. Neste caso, ovalor marcado 1, pois uma resposta.

    Indica se a informao carregada na mensagem uma atualizaode endereo de algum n da rede. Neste caso, o valor marcado 1, pois est informando o endereo pela primeira vez.

    Target Address (camada ICMPv6)Indica o endereo IP associado s informaes das flags. Neste caso, o prprio endereo da interface do dispositivo n1HostA (2001:db8::11).

    ICMPv6 option (camada ICMPv6)Indica as opes do pacote ICMPv6:

    Target link-layer addressType

    Indica o tipo de opo. Neste caso, Target link-layer address.

    Link-layer addressIndica o endereo MAC da interface do dispositivo n1HostA(00:00:00:aa:00:01).

    5. Encerre a simulao, conforme descrito no Apndice B.

  • ii

    ii

    ii

    ii

    NDP: ROUTER SOLICITATION 15

    Experincia 1.2. Neighbor Discovery Protocol: RouterSolicitation

    Objetivo

    Esta experincia possui como objetivo apresentar o funcionamento domecanismo de descoberta de roteadores. Para isto, ela foi dividida emduas partes.

    A primeira parte mostra como um n envia uma mensagem RouterSolicitation (RS) quando sua interface de rede ativada, tendo comoresposta do roteador uma mensagem Router Advertisement (RA).

    O roteiro da Experincia 1.3 mostra o anncio peridico do roteadorpara a rede com mensagens RA.

    O presente exerccio utiliza a topologia descrita no arquivo: 1-02-RS.imn.

    Introduo terica

    A descoberta de roteadores um procedimento realizado pelos ns nomomento em que se conectam ou se reconectam a uma rede, para descobrircaractersticas do enlace e rotas de comunicao.

    O mecanismo iniciado com o envio da mensagem RS direcionada atodos os roteadores no enlace, por meio do endereo de grupo multicastall-routers (ff02::2).

    A mensagem tambm informa o endereo fsico do n que a envia, pou-pando o roteador de fazer o procedimento de descoberta de vizinhanaantes de enviar uma resposta.

    Ao receber a solicitao, o roteador responde com uma mensagem RA.O endereo de origem seu link-local .

    O roteador pode enviar mensagens RA tambm sem receber qualquersolicitao, de forma peridica, dependendo de sua configurao. Nestecaso, ela enviada para o grupo multicast all-nodes.

  • ii

    ii

    ii

    ii

    16 FUNCIONALIDADES BSICAS

    Roteiro experimental

    1. Inicie o CORE e abra o arquivo 1-02-RS.imn, localizado no diretrio lab,dentro do Desktop. A topologia de rede, representada pela Figura 1.4,deve aparecer.

    Figura 1.4: topologia da Experincia 1.2 no CORE.

    O objetivo desta topologia de rede representar o mnimo necessriopara que a mensagem RS seja verificada.

    2. Conforme descrito nos Apndices B e C, inicialize a simulao, veri-fique a configurao de endereos IPv6 nos ns n1Host e n2Router e aconectividade entre eles.

    3. Em paralelo, efetue:

    (a) A coleta dos pacotes trafegados na interface eth0 de n2Router. As instru-es de coleta de pacotes utilizando tcpdump ou Wireshark se encontramno Apndice C.

  • ii

    ii

    ii

    ii

    NDP: ROUTER SOLICITATION 17

    (b) Abra um terminal de n1Host com um duplo-clique e desabilite a interfaceeth0 temporariamente por meio dos comandos:

    # ip link set eth0 down# ip link set eth0 up

    Estes comandos desabilitam e, em seguida, habilitam a interface eth0 den1Host e atribuem o mesmo endereo IPv6 utilizado previamente. Isto realizado para forar o envio da mensagem RS por n1Host. O resultadodos comandos representado pela Figura 1.5.

    Figura 1.5: resultado da desabilitao temporria da interface eth0 de n1Host.

    4. As mensagens RA podem informar diversos parmetros da rede paraque os ns se configurem automaticamente. Nesta experincia, nenhumparmetro foi configurado nas mensagens RA enviadas pelo n2Router. Noentanto, por padro, o roteador se anuncia como gateway da rede pormeio destas mensagens. Isso pode ser verificado executando o seguintepasso:

    Abra um terminal de n1Host com um duplo-clique e utilize o seguintecomando para verificar sua tabela de rotas:

    # ip -6 route show

    O resultado dos comandos representado pela Figura 1.6.

    Figura 1.6: verificao das rotas de n1Host.

  • ii

    ii

    ii

    ii

    18 FUNCIONALIDADES BSICAS

    5. Efetue a anlise dos pacotes capturados. Aplique o filtro icmpv6 noWireshark e procure pelos pacotes RS e RA. Analise-os e veja se osdados contidos nos pacotes conferem com o que foi passado na teoria.

    Campos importantes do pacote RS, representado pela Figura 1.7:

    Figura 1.7: pacote RS mostrado no Wireshark.

    Destination (camada Ethernet)O destino o endereo (33:33:00:00:00:02), sendo que o prefixo 33:33indica que a mensagem um multicast na camada Ethernet. O sufixo00:00:00:02 indica os ltimos 32 bits do endereo multicast IPv6 damensagem.

    Source (camada Ethernet)Indica o endereo MAC da interface do dispositivo que enviou asolicitao (00:00:00:aa:00:00).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

  • ii

    ii

    ii

    ii

    NDP: ROUTER SOLICITATION 19

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 58 (0x3a)refere-se a uma mensagem ICMPv6.

    Source (camada IPv6)A origem o endereo IP de link-local da interface que fez a requisio(fe80::200:ff:feaa:0).

    Destination (camada IPv6)O destino o endereo multicast all-routers (ff02::2).

    Type (camada ICMPv6)Indica que a mensagem do tipo 133 (Router Solicitation).

    ICMPv6 option (camada ICMPv6)Indica as opes do pacote ICMPv6:

    Source link-layer addressType

    Indica o tipo de opo. Neste caso, Source link-layer address.

    Link-layer addressIndica o endereo MAC da interface de origem da mensagem.

    Campos importantes do pacote RA, representado pela Figura 1.8:

    Destination (camada Ethernet)O destino o endereo (33:33:00:00:00:01), sendo que o prefixo 33:33indica que a mensagem um multicast na camada Ethernet. O sufixo00:00:00:01 indica os ltimos 32 bits do endereo multicast IPv6 damensagem.

    Source (camada Ethernet)Indica endereo MAC da interface do roteador que originou a resposta(00:00:00:aa:00:01).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

  • ii

    ii

    ii

    ii

    20 FUNCIONALIDADES BSICAS

    Figura 1.8: pacote RA mostrado no Wireshark.

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 58 (0x3a)refere-se uma mensagem ICMPv6.

    Source (camada IPv6)A origem o endereo IP de link-local da interface que enviou aresposta, sendo neste caso o roteador (fe80::200:ff:feaa:1).

    Destination (camada IPv6)O destino o endereo multicast all-nodes (ff02::1).

    Type (camada ICMPv6)Indica que a mensagem do tipo 134 (Router Advertisement).

  • ii

    ii

    ii

    ii

    NDP: ROUTER SOLICITATION 21

    ICMPv6 option (camada ICMPv6)Indica as opes do pacote ICMPv6:

    Source link-layer addressType

    Indica o tipo de opo. Neste caso, Source link-layer address.

    Link-layer addressIndica o endereo MAC da interface de origem da mensagem.

    6. Encerre a simulao, conforme descrito no Apndice B.

  • ii

    ii

    ii

    ii

    22 FUNCIONALIDADES BSICAS

    Experincia 1.3. Neighbor Discovery Protocol: RouterAdvertisement

    Objetivo

    Esta experincia possui como objetivo apresentar o funcionamento domecanismo de descoberta de roteadores e foi dividida em duas partes.

    O roteiro da Experincia 1.2 mostra como um n envia uma mensagemRS quando sua interface de rede ativada, tendo como resposta doroteador um RA.

    Esta segunda parte mostra o anncio peridico do roteador para a redecom mensagens RA.

    O presente exerccio utiliza a topologia descrita no arquivo: 1-03-RA.imn.

    Introduo terica

    Veja a introduo terica da Experincia 1.2.

    Roteiro experimental

    1. Inicie o CORE e abra o arquivo 1-03-RA.imn localizado no diretrio lab,dentro do Desktop. A topologia de rede, representada pela Figura 1.9,deve aparecer.

    O objetivo desta topologia de rede representar o mnimo necessriopara que a mensagem RA seja verificada.

    2. Conforme descrito nos Apndices B e C, inicialize a simulao, veri-fique a configurao de endereos IPv6 nos ns n1Host e n2Router e aconectividade entre eles.

  • ii

    ii

    ii

    ii

    NDP: ROUTER ADVERTISEMENT 23

    Figura 1.9: topologia da Experincia 1.3 no CORE.

    3. Configure o roteador de modo que o Quagga envie a mensagem RA.

    (a) Abra um terminal de n2Router com um duplo-clique e verifique o contedodo arquivo de configurao do Quagga. Utilize o seguinte comando:

    # cat /usr/local/etc/quagga/Quagga.conf

    O resultado do comando representado pela Figura 1.10.

    Figura 1.10: verificao do arquivo de configurao do Quagga antes de suaedio.

    (b) Ainda no terminal de n2Router, edite o arquivo de configurao do Quagga,localizado em /usr/local/etc/quagga/Quagga.conf, de modo a adicionar aslinhas em negrito.

  • ii

    ii

    ii

    ii

    24 FUNCIONALIDADES BSICAS

    interface eth0no ipv6 nd suppress-raipv6 nd ra-interval 5ipv6 address 2001:db8::1/64

    !

    As trs linhas devem ser inseridas dentro do escopo da interface, isto, entre as linhas interface eth0 e !. No Apndice C so apresentadosalguns editores de texto disponveis, p. ex. nano.

    (c) Ainda no terminal de n2Router, verifique novamente o contedo do arquivode configurao do Quagga, com o comando:

    # cat /usr/local/etc/quagga/Quagga.conf

    O resultado do comando representado pela Figura 1.11.

    Figura 1.11: verificao do arquivo de configurao do Quagga aps sua edio.

    4. Em paralelo, efetue:

    (a) A coleta dos pacotes trafegados na interface eth0 de n1Host. As instru-es de coleta de pacotes utilizando tcpdump ou Wireshark se encontramno Apndice C.

    (b) Abra um terminal de n2Router com um duplo-clique e utilize o seguintecomando para iniciar o Quagga com as novas configuraes:

    # ./boot.sh

    Este comando reinicializa os servios associados ao roteador, incluindoo servio de roteamento Quagga. Isto realizado para que o roteadorenvie a mensagem RA. O resultado do comando representado pelaFigura 1.12.

  • ii

    ii

    ii

    ii

    NDP: ROUTER ADVERTISEMENT 25

    Figura 1.12: resultado esperado da inicializao do Quagga com a nova confi-gurao.

    5. Efetue a anlise dos pacotes capturados. Aplique o filtro icmpv6 noWireshark e procure pelos pacotes RA.

    Analise os pacotes RA e veja se os dados contidos nos pacotes conferemcom a teoria.

    Campos importantes do pacote RA, representado pela Figura 1.13:

    Figura 1.13: pacote RA mostrado no Wireshark.

    Destination (camada Ethernet)O destino o endereo (33:33:00:00:00:01), sendo que o prefixo 33:33indica que a mensagem um multicast na camada Ethernet. O sufixo00:00:00:01 indica os ltimos 32 bits do endereo multicast IPv6 damensagem.

  • ii

    ii

    ii

    ii

    26 FUNCIONALIDADES BSICAS

    Source (camada Ethernet)A origem o endereo MAC da interface do roteador que enviou aresposta (00:00:00:aa:00:01).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 58 (0x3a)refere-se uma mensagem ICMPv6.

    Source (camada IPv6)A origem o endereo IP de link-local da interface que enviou aresposta, sendo neste caso o roteador (fe80::200:ff:feaa:1).

    Destination (camada IPv6)O destino o endereo multicast all-nodes (ff02::1).

    Type (camada ICMPv6)Indica que a mensagem do tipo 134 (Router Advertisement).

    ICMPv6 option (camada ICMPv6)Indica as opes do pacote ICMPv6:

    Source link-layer addressType

    Indica o tipo de opo. Neste caso, Source link-layer address.

    Link-layer addressIndica o endereo MAC da interface a partir da qual a men-sagem de Router Advertisement foi enviada, sendo neste caso00:00:00:aa:00:01.

    6. Encerre a simulao, conforme descrito no Apndice B.

  • ii

    ii

    ii

    ii

    NDP: DETECO DE ENDEREOS DUPLICADOS 27

    Experincia 1.4. Neighbor Discovery Protocol: deteco deendereos duplicados

    Objetivo

    Esta experincia apresenta o funcionamento do mecanismo de detecode endereos duplicados. Para isto, troca-se o endereo de um dos nsda topologia para um endereo em uso por outro n. possvel obser-var a deteco do endereo duplicado pela troca de mensagens NS eNA. Observa-se tambm que o funcionamento do n cujo endereo foiduplicado no afetado.

    Para a realizao do presente exerccio ser utilizada a topologia descritano arquivo: 1-04-DAD.imn.

    Introduo terica

    A deteco de endereos duplicados (Duplicate Address Detection DAD) um procedimento realizado sempre que um novo endereo atribudoa uma interface. Isto vale tanto para endereos atribudos manualmente,quanto por autoconfigurao. Tanto na hora em que o dispositivo ligado,como quando j est em funcionamento e um novo endereo adicionado.

    O mecanismo parecido com o da descoberta de vizinhana, com adiferena de que o n tenta descobrir o endereo fsico de seu prprioendereo IP, antes de efetivamente us-lo. Se algum responder, porqueo endereo j est em uso por outro n.

    Isso feito enviando uma mensagem NS, como na descoberta de vizi-nhana. Mas o endereo de origem :: (no especificado).

    Caso receba uma mensagem NA, o n interrompe o processo de configu-rao e o endereo no poder ser utilizado. Nessa situao, o conflito s solucionado manualmente, com adio de um novo endereo.

    Caso um determinado tempo de espera seja ultrapassado e no sejarecebida nenhuma mensagem, o dispositivo poder ento finalizar suaconfigurao. O valor padro para tal espera de um segundo.

  • ii

    ii

    ii

    ii

    28 FUNCIONALIDADES BSICAS

    Roteiro experimental

    1. Inicie o CORE e abra o arquivo 1-04-DAD.imn localizado no diretrio lab,dentro do Desktop. A topologia de rede, representada pela Figura 1.14,deve aparecer.

    Figura 1.14: topologia da Experincia 1.4 no CORE.

    O objetivo dessa topologia de rede representar o mnimo necessriopara que a troca das mensagens relativas duplicidade de endereos sejaverificada.

    2. Conforme descrito nos Apndices B e C, inicialize a simulao, verifiquea configurao de endereos IPv6 nos ns n1Original,n2Duplicate e n3Hoste a conectividade entre eles.

    3. Em paralelo, efetue:

  • ii

    ii

    ii

    ii

    NDP: DETECO DE ENDEREOS DUPLICADOS 29

    (a) A coleta dos pacotes trafegados na interface eth0 de n1Original. Asinstrues de coleta de pacotes utilizando tcpdump ou Wireshark se en-contram no Apndice C.

    (b) Abra um terminal de n2Duplicate com um duplo-clique e utilize os se-guintes comandos:

    # ip addr del 2001:db8::11/64 dev eth0# ip addr add 2001:db8::10/64 dev eth0

    O resultado dos comandos representado pela Figura 1.15.

    Figura 1.15: resultado esperado da atribuio de um endereo duplicado.

    Estes comandos removem o endereo IPv6 anterior e tentam atribuir umendereo duplicado.

    4. Verifique o resultado da atribuio do endereo duplicado em n2Duplicate.

    (a) Abra um terminal de n2Duplicate com um duplo-clique e verifique aatribuio do endereo duplicado. Utilize o seguinte comando:

    # ifconfig eth0

    O resultado do comando representado pela Figura 1.16.

    Figura 1.16: verificao dos endereos atribuidos a n2Duplicate utilizando ocomando ifconfig.

  • ii

    ii

    ii

    ii

    30 FUNCIONALIDADES BSICAS

    (b) Ainda no terminal de n2Duplicate, verifique a atribuio do endereoduplicado, com o comando:

    # ip addr show dev eth0

    O resultado do comando representado pela Figura 1.17.

    Figura 1.17: verificao dos endereos atribuidos a n2Duplicate utilizando ocomando ip.

    A deteco de endereo duplicado um procedimento definido no IPv6 eo objetivo de evitar o uso de um mesmo endereo por dois dispositivosdistintos.

    Observe as linhas referentes ao endereo 2001:db8::10 na sada dos co-mandos ifconfig e ip utilizados. Note a informao tentative dadfailedcontida na sada do comando ip. Esta informao indica que foi detectadaa tentativa de uso de um endereo duplicado e, pelo fato da duplicidadede endereo, o mesmo no foi atribudo interface eth0 de n2Duplicate.

    J a sada do comando ifconfig no indica tal falha. Este um dosmotivos para a depreciao do comando ifconfig e a recomendao docomando ip para a mesma finalidade de verificao de informaes re-lativas s interfaces de rede quando se utiliza o sistema operacionalLinux.

    O procedimento da deteco de endereo duplicado tambm abordadona Experincia 3.1.

    5. Efetue a anlise dos pacotes coletados.

    (a) Primeiro, analise os pacotes coletados da interface eth0 de n1Originaldurante o passo 3.

  • ii

    ii

    ii

    ii

    NDP: DETECO DE ENDEREOS DUPLICADOS 31

    Aplique o filtro icmpv6 no Wireshark e procure pelos pacotes NS, cujoSource [::]; NA em resposta ao NS anterior; e echo reply. Analise-os eveja se os dados contidos nos pacotes conferem com o que foi passado nateoria.

    Campos importantes do pacote NS, representado pela Figura 1.18:

    Figura 1.18: pacote NS capturado em n1Original, mostrado no Wireshark.

    Destination (camada Ethernet)O destino o endereo (33:33:ff:00:00:10), sendo que o prefixo 33:33indica que a mensagem um multicast na camada Ethernet. O sufixoff:00:00:10 indica os ltimos 32 bits do endereo multicast IPv6 damensagem.

    Source (camada Ethernet)A origem o endereo MAC da interface do dispositivo que enviou asolicitao (00:00:00:aa:00:01).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

  • ii

    ii

    ii

    ii

    32 FUNCIONALIDADES BSICAS

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 58 (0x3a)refere-se a uma mensagem ICMPv6.

    Source (camada IPv6)A origem no especificada, sendo utilizado o endereo (::).

    Destination (camada IPv6)O destino o endereo multicast solicited-node (ff02::1:ff00:10).

    Type (camada ICMPv6)Indica que a mensagem do tipo 135 (Neighbor Solicitation).

    Target (camada ICMPv6)Este campo contm o endereo IPv6 procurado (2001:db8::10).

    6. Para analisar o comportamento dos dispositivos da rede aps a tentativade duplicao de endereos, efetue, em paralelo, os seguintes passos:

    (a) A coleta dos pacotes trafegados na interface eth0 de n1Original.

    (b) A coleta dos pacotes trafegados na interface eth0 de n2Duplicate.

    (c) A verificao de conectividade IPv6 entre n3Host e o endereo IP2001:db8::10.

    As instrues de coleta de pacotes utilizando tcpdump ou Wireshark seencontram no Apndice C.

  • ii

    ii

    ii

    ii

    NDP: DETECO DE ENDEREOS DUPLICADOS 33

    7. Efetue a anlise dos pacotes coletados.

    (a) Pacotes coletados da interface eth0 de n1Original durante o passo 6.

    Campos importantes do pacote echo reply, representado pela Figura 1.19:

    Figura 1.19: pacote echo reply capturado em n1Original, mostrado noWireshark.

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 58 (0x3a)refere-se a uma mensagem ICMPv6.

    Destination (camada IPv6)O destino o endereo IPv6 de n3Host (2001:db8::12).

    Source (camada IPv6)A origem o endereo IPv6 de n1Original (2001:db8::10).

    Type (camada ICMPv6)Indica que a mensagem do tipo 129 (echo reply).

  • ii

    ii

    ii

    ii

    34 FUNCIONALIDADES BSICAS

    Observe que o dispositivo n1Original respondeu todas as mensagens echorequest.

    (b) Pacotes coletados da interface eth0 de n2Duplicate durante o passo 6.

    Observe que a interface do endereo duplicado no capturou nenhumpacote destinado ao endereo em questo, somente mensagens destinadasa endereos multicast. A Figura 1.20 apresenta uma lista de pacotescoletados em n2Duplicate.

    Figura 1.20: lista de pacotes capturados em n2Duplicate, mostrada noWireshark.

    8. Encerre a simulao, conforme descrito no Apndice B.

  • ii

    ii

    ii

    ii

    SLAAC: ROUTER ADVERTISEMENT UTILIZANDO QUAGGA 35

    Experincia 1.5. Autoconfigurao stateless de endereo:Router Advertisement utilizando Quagga

    Objetivo

    Esta experincia mostra como um n configura para si um novo endereo,baseando-se em um prefixo enviado pelo roteador. Para isto ser configu-rado o Quagga, uma plataforma de roteamento para servidores Unix, non que far o papel de roteador. Os pacotes RA sero analisados e serobservado o endereo configurado automaticamente no outro n.

    Para a realizao do presente exerccio ser utilizada a topologia descritano arquivo: 1-05-SLAAC-quagga.imn.

    Introduo terica

    A autoconfigurao stateless o processo em que os ns de uma redepodem criar para si prprios endereos, baseados em informaes locaise em informaes recebidas de roteadores, por meio das mensagens RA.

    Enquanto o roteador anuncia o prefixo que identifica a rede associada aoenlace, o n determina o identificador de interface, que o identifica deforma nica nessa rede.

    Vale notar que tambm considera-se como parte da autoconfiguraostateless a obteno do endereo link-local e a deteco de endereosduplicados para todos os endereos gerados.

    A autoconfigurao dita stateless porque o roteador no mantm o regis-tro do estado e caractersticas do n destinatrio. Este ltimo encarrega-sede sua prpria configurao.

    Roteiro experimental

    1. Inicie o CORE e abra o arquivo 1-05-SLAAC-quagga.imn localizado no di-retrio lab, dentro do Desktop. A topologia de rede, representada pelaFigura 1.21, deve aparecer.

    O objetivo dessa topologia de rede representar o mnimo necessriopara que a mensagem RA seja verificada.

  • ii

    ii

    ii

    ii

    36 FUNCIONALIDADES BSICAS

    Figura 1.21: topologia da Experincia 1.5 no CORE.

    2. Conforme descrito nos Apndices B e C, inicialize a simulao e verifiquea configurao de endereos IPv6 nos ns n1Host e n2Router.

    3. Configure o roteador de modo que o Quagga envie a mensagem RA.

    (a) Abra um terminal de n2Router com um duplo-clique e edite o arquivo deconfigurao do Quagga, localizado em /usr/local/etc/quagga/Quagga.conf,de modo a adicionar as linhas em negrito.

    interface eth0ipv6 address 2001:db8::1/64no ipv6 nd suppress-raipv6 nd ra-interval 5ipv6 nd prefix 2001:db8::/64

    !

    No Apndice C so apresentados alguns editores de texto disponveis, p.ex. nano.

  • ii

    ii

    ii

    ii

    SLAAC: ROUTER ADVERTISEMENT UTILIZANDO QUAGGA 37

    importante observar que na verso 0.99.21mr2.2 do Quagga, a mesmautilizada pelo CORE na VM do IPv6.br, no possvel enviar o endereodo servidor DNS a ser utilizado por meio de RA. Mais informaes sobreessa configurao podem ser encontradas em (Ishiguro, 2006).

    (b) Verifique o contedo do arquivo de configurao do Quagga. Digite ocomando:

    # cat /usr/local/etc/quagga/Quagga.conf

    O resultado do comando representado pela Figura 1.22.

    Figura 1.22: verificao do arquivo de configurao do Quagga aps sua edio.

    4. Em paralelo, efetue:

    (a) A coleta dos pacotes trafegados na interface eth0 de n1Host. As instru-es de coleta de pacotes utilizando tcpdump ou Wireshark se encontramno Apndice C.

  • ii

    ii

    ii

    ii

    38 FUNCIONALIDADES BSICAS

    (b) Abra um terminal de n2Router com um duplo-clique e utilize o seguintecomando para iniciar o Quagga com as novas configuraes:

    # ./boot.sh

    Este comando reinicializa os servios associados ao roteador, incluindoo servio de roteamento Quagga. Isto realizado para que o roteadorenvie a mensagem RA. O resultado do comando representado pelaFigura 1.23.

    Figura 1.23: resultado da inicializao do Quagga com a nova configurao.

    Aps reinicializar o servio Quagga, verifique a configurao de endereosIPv6 nos ns n1Host e n2Router e a conectividade entre eles, conformedescrito no Apndice C.

    Note que o endereo do n n1Host originou-se do prefixo de 64 bits enviadopelo roteador.

    5. Efetue a anlise os pacotes capturados. Aplique o filtro icmpv6 noWireshark e procure pelos pacotes RA.

    Analise os pacotes RA que possuam a opo Prefix Information e vejase os dados contidos nos pacotes conferem com a teoria.

    Campos importantes do pacote RA, representado pela Figura 1.24:

    Destination (camada Ethernet)O destino o endereo (33:33:00:00:00:01), sendo que o prefixo 33:33indica que a mensagem um multicast na camada Ethernet. O sufixo00:00:00:01 indica os ltimos 32 bits do endereo multicast IPv6 damensagem.

    Source (camada Ethernet)A origem o endereo MAC da interface do roteador que enviou aresposta (00:00:00:aa:00:00).

  • ii

    ii

    ii

    ii

    SLAAC: ROUTER ADVERTISEMENT UTILIZANDO QUAGGA 39

    Figura 1.24: pacote RA mostrado no Wireshark.

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 58 (0x3a)refere-se uma mensagem ICMPv6.

    Source (camada IPv6)A origem o endereo IP de link-local da interface que enviou aresposta, sendo neste caso o roteador (fe80::200:ff:feaa:0).

    Destination (camada IPv6)O destino o endereo multicast all-nodes (ff02::1).

    Type (camada ICMPv6)Indica que a mensagem do tipo 134 (Router Advertisement).

  • ii

    ii

    ii

    ii

    40 FUNCIONALIDADES BSICAS

    ICMPv6 option (camada ICMPv6)Indica as opes do pacote ICMPv6:

    Prefix InformationType

    Contm o valor 3, que identifica o campo Prefix Information.

    Autonomous Address-Configuration Flag (A)Contm o valor 1, indicando que o prefixo deve ser utilizadopara autoconfigurao stateless.

    Preferred lifetimeMarca o tempo, em segundos, em que o endereo preferencial,isto , o tempo permitido para o uso indistinto do endereo.O valor 0xffffffff indica infinito.

    Valid lifetimeMarca o tempo, em segundos, de expirao do endereo gerado.O valor 0xffffffff indica infinito.

    PrefixContm o prefixo de rede a ser utilizado (2001:db8::).

    Prefix lengthContm o tamanho do prefixo da rede.

    Source link-layer addressType

    Indica o tipo de opo. Neste caso, Source link-layer address.

    Link-layer addressIndica o endereo MAC da interface a partir da qual a men-sagem de Router Advertisement foi enviada, sendo neste caso00:00:00:aa:00:00.

    6. Encerre a simulao, conforme descrito no Apndice B.

  • ii

    ii

    ii

    ii

    SLAAC: ROUTER ADVERTISEMENT UTILIZANDO RADVD 41

    Experincia 1.6. Autoconfigurao stateless de endereo:Router Advertisement utilizando radvd

    Objetivo

    Esta experincia mostra como um n configura para si um novo endereo,a rota padro e o servidor de DNS, baseando-se em informaes enviadaspelo roteador.

    Para isto usa-se uma topologia com trs ns. Um funcionar comoroteador, empregando o software radvd, cuja funo enviar as mensagensRA. Um dos ns ser o servidor DNS, usando o software BIND. Non cliente o software rdnssd ser usado para habilitar a configuraoautomtica do DNS.

    Na experincia ser feita a configurao do radvd no roteador e serobservada a autoconfigurao do n cliente.

    Para a realizao do presente exerccio ser utilizada a topologia descritano arquivo: 1-06-SLAAC-radvd.imn.

    Introduo terica

    Veja a introduo terica da Experincia 1.5.

    Roteiro experimental

    1. Inicie o CORE e abra o arquivo 1-06-SLAAC-radvd.imn localizado no di-retrio lab, dentro do Desktop. A topologia de rede, representada pelaFigura 1.25, deve aparecer.

    O objetivo dessa topologia de rede representar o mnimo necessrio paraque a mensagem RA seja verificada, juntamente com a funcionalidadede indicao do servidor DNS a ser utilizado pelos clientes do prefixodivulgado.

    2. Conforme descrito nos Apndices B e C, inicialize a simulao, verifiquea configurao de endereos IPv6 nos ns n1Host, n2DNS e n3Router e aconectividade entre eles.

  • ii

    ii

    ii

    ii

    42 FUNCIONALIDADES BSICAS

    Figura 1.25: topologia da Experincia 1.6 no CORE.

    3. Abra um terminal de n2DNS com um duplo-clique e utilize o seguintecomando para iniciar o servio DNS:

    # /etc/init.d/bind9 start

    Este comando inicializa o servidor de DNS BIND na interface eth0 den2DNS com as configuraes padro. O resultado do comando represen-tado pela Figura 1.26.

    Figura 1.26: resultado da inicializao do servio DNS BIND.

  • ii

    ii

    ii

    ii

    SLAAC: ROUTER ADVERTISEMENT UTILIZANDO RADVD 43

    4. Abra um terminal de n1Host com um duplo-clique e utilize o seguintecomando para iniciar o servio rdnssd:

    # /etc/init.d/rdnssd start

    Este comando inicializa o daemon de descoberta de servidor DNS recur-sivo para IPv6 (IPv6 Recursive DNS Server Discovery Daemon rdnssd).O resultado do comando representado pela Figura 1.27.

    Figura 1.27: resultado da inicializao do servio de cliente DNS rdnssd.

    5. Configure o roteador de modo que o radvd envie a mensagem RA.

    (a) Abra um terminal de n3Router com um duplo-clique e crie o arquivode configurao do radvd, localizado em radvd.conf, com as devidaspermisses. Digite os comandos:

    # touch radvd.conf# chmod og-w radvd.conf

    O resultado dos comandos representado pela Figura 1.28.

    Figura 1.28: resultado da criao do arquivo de configurao do radvd.

  • ii

    ii

    ii

    ii

    44 FUNCIONALIDADES BSICAS

    (b) Edite o arquivo de configurao do radvd, localizado em radvd.conf:

    interface eth0 {AdvSendAdvert on;AdvLinkMTU 1400;prefix 2001:db8::/64 {AdvOnLink on;AdvAutonomous on;

    };route ::/0 {};RDNSS 2001:db8::abc {};

    };

    No Apndice C so apresentados alguns editores de texto disponveis, p.ex. nano. Para obter mais informaes sobre os parmetros de configura-o do radvd consulte (Savola, 2011).

    (c) Verifique o contedo do arquivo de configurao do radvd. Digite oseguinte comando:

    # cat radvd.conf

    O resultado do comando representado pela Figura 1.29.

    Figura 1.29: verificao do arquivo de configurao do radvd aps sua edio.

  • ii

    ii

    ii

    ii

    SLAAC: ROUTER ADVERTISEMENT UTILIZANDO RADVD 45

    (d) Valide o contedo do arquivo de configurao do radvd. Utilize o seguintecomando:

    # radvd --configtest -C radvd.conf

    O resultado do comando representado pela Figura 1.30.

    Figura 1.30: validao do arquivo de configurao do radvd.6. Em paralelo, efetue:

    (a) A coleta dos pacotes trafegados na interface eth0 de n1Host. As instru-es de coleta de pacotes utilizando tcpdump ou Wireshark se encontramno Apndice C.

    (b) Efetue os seguintes passos enquanto a coleta realizada:

    i. Abra um terminal de n3Router com um duplo-clique e inicie o servioradvd. Utilize o seguinte comando:

    # radvd -C radvd.conf

    O resultado do comando representado pela Figura 1.31.

    Figura 1.31: resultado da inicializao do servio radvd.

    Caso a mensagem daemon: No such device seja exibida, seguro ignor-la,por ser um efeito colateral da virtualizao do CORE.

    ii. Abra um terminal de n1Host com um duplo-clique e verifique o recebi-mento das configuraes fornecidas por n3Router com o seguinte comando:

    # rdisc6 eth0

    O resultado do comando representado pela Figura 1.32.iii. Ainda no terminal de n1Host, verifique sua configurao de endereos

    IPv6. Note a presena do prefixo atribudo pelo radvd no endereoobtido por meio da autoconfigurao stateless. Caso necessrio, consulteo Apndice C para verificar o procedimento.

  • ii

    ii

    ii

    ii

    46 FUNCIONALIDADES BSICAS

    Figura 1.32: resultado do recebimento das configuraes fornecidas a n1Host.

    iv. Ainda no terminal de n1Host, valide a configurao obtida para o uso deservidor DNS. Utilize o seguinte comando:

    # dig -x 2001:db8::

    O resultado do comando representado pela Figura 1.33.

    v. Ainda no terminal de n1Host, verifique suas rotas IPv6. Para isto utilizeo comando:

    # ip -6 route list

    O resultado do comando representado pela Figura 1.34.

    vi. Abra um terminal de n2DNS com um duplo-clique e verifique sua conecti-vidade IPv6 com n1Host. Utilize o seguinte comando:

    # ping6 -c 4 2001:db8::200:ff:feaa:0

    O resultado do comando representado pela Figura 1.35.

  • ii

    ii

    ii

    ii

    SLAAC: ROUTER ADVERTISEMENT UTILIZANDO RADVD 47

    Figura 1.33: validao do endereo de servidor DNS recebido por RA.

    Figura 1.34: verificao das rotas IPv6 de n1Host.

    Figura 1.35: verificao de conectividade entre n2DNS e n1Host.

  • ii

    ii

    ii

    ii

    48 FUNCIONALIDADES BSICAS

    7. Efetue a anlise os pacotes capturados. Aplique o filtro icmpv6 noWireshark e procure pelos pacotes RA.

    Analise os pacotes RA que possuam a opo Prefix Information e vejase os dados contidos nos pacotes conferem com a teoria.

    Campos importantes do pacote RA, representado pela Figura 1.36:

    Figura 1.36: pacote RA mostrado no Wireshark.

    Destination (camada Ethernet)O destino o endereo (33:33:00:00:00:01), sendo que o prefixo 33:33indica que a mensagem um multicast na camada Ethernet. O sufixo00:00:00:01 indica os ltimos 32 bits do endereo multicast IPv6 damensagem.

    Source (camada Ethernet)A origem o endereo MAC da interface do roteador que enviou aresposta (00:00:00:aa:00:02).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

  • ii

    ii

    ii

    ii

    SLAAC: ROUTER ADVERTISEMENT UTILIZANDO RADVD 49

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 58 (0x3a)refere-se a uma mensagem ICMPv6.

    Source (camada IPv6)A origem o endereo IP de link-local da interface que enviou aresposta, sendo neste caso o roteador (fe80::200:ff:feaa:2).

    Destination (camada IPv6)O destino o endereo multicast all-nodes (ff02::1).

    Type (camada ICMPv6)Indica que a mensagem do tipo 134 (Router Advertisement).

    ICMPv6 option (camada ICMPv6)Indica as opes do pacote ICMPv6:

    Prefix InformationType

    Contm o valor 3, que identifica o campo Prefix Information.

    Autonomous Address-Configuration Flag (A)Contm o valor 1, indicando que o prefixo deve ser utilizadopara autoconfigurao stateless.

    Preferred lifetimeMarca o tempo, em segundos, em que o endereo preferencial,isto , tempo permitido para o uso indistinto do endereo. Ovalor 0xffffffff indica infinito.

    Valid lifetimeMarca o tempo, em segundos, de expirao do endereo gerado.O valor 0xffffffff indica infinito.

    PrefixContm o prefixo de rede a ser utilizado (2001:db8::).

    Prefix lengthContm o tamanho do prefixo da rede.

  • ii

    ii

    ii

    ii

    50 FUNCIONALIDADES BSICAS

    Source link-layer addressType

    Indica o tipo de opo. Neste caso, Source link-layer address.

    Link-layer addressIndica o endereo MAC da interface a partir da qual a men-sagem de Router Advertisement foi enviada, sendo neste caso00:00:00:aa:00:02.

    Route InformationType

    Indica o tipo de opo. Neste caso, Route Information.

    PrefixIndica um prefixo alcanvel pelo roteador que divulgou amensagem (::/0).

    LengthIndica o tamanho do prefixo divulgado na mensagem.

    Recursive DNS ServerType

    Indica o tipo de opo. Neste caso, Recursive DNS Server.

    Recursive DNS ServerIndica o endereo IPv6 do servidor DNS a ser utilizado(2001:db8::abc).

    MTUType

    Indica o tipo de opo. Neste caso, MTU.

    MTUIndica o tamanho mximo de MTU a ser utilizado no enlaceem questo, sendo 1400 neste caso.

    8. Encerre a simulao, conforme descrito no Apndice B.

  • ii

    ii

    ii

    ii

    DHCPV6 STATEFUL 51

    Experincia 1.7. DHCPv6 stateful : Solicit, Advertise,Request e Reply

    Objetivo

    Esta experincia apresenta o funcionamento do DHCPv6 no modo stateful.O servidor DHCPv6 ser configurado para informar o endereo IPv6 queo cliente dever atribuir a sua interface de rede, registrando qual clienterecebeu cada endereo. Alm do endereo IPv6, o endereo do servidorDNS recursivo da rede tambm ser informado.

    O dispositivo n1Host ser o cliente que realizar as requisies e o n3DNSrepresenta o servidor DNS recursivo da rede, utilizado para validarse as informaes divulgadas pelo servidor DHCPv6 foram aprendidascorretamente.

    Para a realizao do presente exerccio, ser utilizada a topologia descritano arquivo: 1-07-DHCPv6-stateful.imn.

    Introduo terica

    O Dynamic Host Configuration Protocol (DHCP) um protocolo utili-zado para distribuir dinamicamente endereos IP e parmetros de configu-rao da rede. H implementaes especficas para redes IPv6 e IPv4, queapresentam as mesmas funcionalidades bsicas, porm, com significativasdiferenas nas opes que podem ser enviadas. Nesta introduo, apenasas caractersticas do DHCPv6 so tratadas.

    Basicamente, a comunicao entre o servidor DHCP e as mquinas clientese d com a troca de quatro mensagens:

  • ii

    ii

    ii

    ii

    52 FUNCIONALIDADES BSICAS

    Solicit: enviada pelo cliente ao grupo multicast all-dhcp-agents(ff02::1:2) com o intuito de localizar o servidor DHCP.

    Advertise: enviada pelo servidor DHCP, diretamente ao endereolink-local do cliente, para indicar que ele pode fornecer as informaesnecessrias para a configurao.

    Request: enviada pelo cliente diretamente ao grupo multicastall-dhcp-agents (ff02::1:2) para requisitar ao servidor DHCP os dadosde configurao.

    Reply: enviada pelo servidor DHCP ao endereo de link-local docliente como resposta mensagem Request.

    O DHCPv6 possui dois modos de operao:

    Stateful: o servidor DHCPv6 responsvel por informar aos clientesos endereos IPv6 que devem ser utilizados em suas interfaces derede, mantendo o estado de qual endereo foi atribudo a determinadocliente.

    Stateless: o servidor DHCPv6 informa apenas parmetros de confi-gurao como endereo dos servidores DNS ou servidores SIP da redeaos clientes, sem a necessidade de guardar qual informao individualde cada cliente. Nesse segundo caso, o cliente dever obter o endereoIPv6 de sua interface de outra forma, seja manualmente ou SLAAC.

    Diferentemente do DHCPv4, o DHCPv6 no possui a opo Defaultrouters, que informa o endereo do roteador padro da rede. Deste modo,para que o cliente obtenha conectividade com outras redes, precisoutilizar o DHCPv6 em conjunto com o protocolo Neighbor Discovery,ou realizar a configurao do roteador padro manualmente em cadacliente. Em outras palavras, o DHCPv6 normalmente utilizado comoum complemento da autoconfigurao stateless, seja utilizado em modostateful ou stateless.

  • ii

    ii

    ii

    ii

    DHCPV6 STATEFUL 53

    Para o uso do DHCPv6 em conjunto com o NDP necessrio habilitaro envio das mensagens RA nos roteadores da rede, para que estes seanunciem como roteadores padro e manipular duas flags das mensagensRA de acordo com os parmetros que os clientes devero aprenderdo servidor DHCPv6: (i) Managed address configuration flag, quedefine a permisso do recebimento do endereo IPv6, por meio do servidorDHCPv6; e (ii) Other configuration flag, que habilita o recebimentode outras configuraes vindas do servidor DHCPv6.

    Roteiro experimental

    1. Inicie o CORE e abra o arquivo 1-07-DHCPv6-stateful.imn localizado nodiretrio lab, dentro do Desktop. A topologia de rede, representada pelaFigura 1.37, deve aparecer.

    Figura 1.37: topologia da Experincia 1.7 no CORE.

  • ii

    ii

    ii

    ii

    54 FUNCIONALIDADES BSICAS

    O objetivo dessa topologia de rede representar o mnimo necessriopara que a troca de mensagens DHCPv6 seja verificada, juntamentecom a funcionalidade de indicao do servidor DNS a ser utilizado pelosclientes.

    Note que no h um roteador nessa topologia e que o DHCP no IPv6no informa o roteador padro para os clientes. Ento, os ns no terouma rota padro.

    2. Conforme descrito nos Apndices B e C, inicialize a simulao, verifiquea configurao de endereos IPv6 nos ns n1Host, n2DHCPv6 e n3DNS e aconectividade entre eles.

    3. Abra um terminal de n3DNS com um duplo-clique e utilize o seguintecomando para iniciar o servio DNS:

    # /etc/init.d/bind9 start

    Este comando inicializa o servidor de DNS BIND na interface eth0 deservidor DNS com suas configuraes padro. O resultado do comando representado pela Figura 1.38.

    Figura 1.38: resultado da inicializao do servio DNS BIND.

    4. Configure o servio DHCPv6 para enviar as configuraes ao cliente.

    (a) Abra um terminal de n2DHCPv6 e crie os arquivos de configurao doDHCPv6. Para isto digite os seguintes comandos:

    # touch dhcpd.conf# touch dhcpd.leases

    O resultado dos comandos representado pela Figura 1.39.

  • ii

    ii

    ii

    ii

    DHCPV6 STATEFUL 55

    Figura 1.39: resultado da criao dos arquivos de configurao do DHCPv6.

    (b) Ainda no terminal de n2DHCPv6, edite o arquivo de configurao doDHCPv6, localizado em dhcpd.conf, de modo a inserir as seguintes linhas:

    default-lease-time 600;max-lease-time 7200;subnet6 2001:db8::/64 {range6 2001:db8::1234 2001:db8::abcd;option dhcp6.name-servers 2001:db8::abc;

    }

    O campo name-servers contm o endereo da mquina que funcionarcomo servidor DNS. O campo range6 contm a faixa de endereos dentrodo prefixo de sub-rede configurado, que ser distribuda entre os disposi-tivos clientes. No Apndice C so apresentados alguns editores de textodisponveis, p. ex. nano.

    (c) Verifique o contedo do arquivo de configurao do DHCPv6. Digite oseguinte comando:

    # cat dhcpd.conf

    O resultado do comando representado pela Figura 1.40.

    Figura 1.40: verificao do arquivo de configurao do DHCPv6 aps suaedio.

  • ii

    ii

    ii

    ii

    56 FUNCIONALIDADES BSICAS

    (d) Inicie o servio DHCPv6 com o comando:

    # dhcpd -6 -cf dhcpd.conf -lf dhcpd.leases

    O resultado do comando representado pela Figura 1.41.

    Figura 1.41: resultado da inicializao do servio DHCPv6.

    5. Em paralelo, efetue:

    (a) A coleta dos pacotes trafegados na interface eth0 den1Host. As instruesde coleta de pacotes utilizando tcpdump ou Wireshark se encontram noApndice C.

    (b) Efetue os seguintes passos enquanto a coleta realizada:

    i. Abra um terminal de n1Host com um duplo-clique e inicie o serviodhclient. Para isto digite os comandos:# touch dhclient6.conf# touch dhclient6.leases# dhclient -6 -cf dhclient6.conf -lf dhclient6.leases

    O resultado dos comandos representado pela Figura 1.42.

    Figura 1.42: resultado da inicializao do servio dhclient.

    Pode-se observar que o arquivo de configurao dhclient6.conf encontra-se vazio. A configurao padro do cliente DHCPv6 dhclient efetua arequisio de associao de identidade (identity-association IA), servi-dores DNS a serem utilizados e a lista de busca de domnio.

  • ii

    ii

    ii

    ii

    DHCPV6 STATEFUL 57

    ii. Ainda no terminal de n1Host, visualize as configurao adquiridas. Utilizeos seguintes comandos:

    # ip addr show# cat /etc/resolv.conf

    O resultado dos comandos representado pela Figura 1.43. Note oendereo IPv6 obtido.

    Figura 1.43: resultado das configuraes adquiridas por meio do DHCPv6.

    iii. Abra um terminal de n3DNS e verifique a conectividade com n1Host. Digiteo seguinte comando:

    # ping6 -c 4 2001:db8::abcc

    O resultado do comando representado pela Figura 1.44.

    Figura 1.44: verificao da conectividade entre n3DNS e n1Host.

  • ii

    ii

    ii

    ii

    58 FUNCIONALIDADES BSICAS

    O endereo IPv6 deve ser o mesmo adquirido por meio do DHCPv6,mostrado no passo 5. No exemplo anterior o endereo IPv6 adquirido foio 2001:db8::abcc, porm outros endereos podem ser obtidos, uma vezque se trata de uma alocao dinmica.

    iv. Abra um terminal de n1Host com um duplo-clique e verifique o funciona-mento do servio DNS:

    # dig -x 2001:db8::

    O resultado do comando representado pela Figura 1.45.

    Figura 1.45: resultado da verificao do servio DNS em n1Host.

    Note que o servidor DNS respondeu requisio do cliente.

    6. Efetue a anlise dos pacotes coletados. Aplique o filtro dhcpv6 noWireshark e procure pelos pacotes Solicit, Advertise, Request e Reply.Analise-os e veja se os dados contidos nos pacotes conferem com o quefoi passado na teoria.

    Campos importantes do pacote Solicit, representado pela Figura 1.46:

  • ii

    ii

    ii

    ii

    DHCPV6 STATEFUL 59

    Figura 1.46: pacote Solicit mostrado no Wireshark.

    Destination (camada Ethernet)O destino o endereo (33:33:00:01:00:02), sendo que o prefixo 33:33indica que a mensagem um multicast na camada Ethernet. O sufixo00:01:00:02 indica os ltimos 32 bits do endereo multicast IPv6 damensagem.

    Source (camada Ethernet)A origem o endereo MAC da interface do dispositivo que enviou asolicitao (00:00:00:aa:00:00).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 17 (0x11)refere-se a uma mensagem UDP.

    Source (camada IPv6)A origem o endereo IP de link-local da interface diretamente co-nectada ao enlace em que se fez a requisio (fe80::200:ff:feaa:0).

  • ii

    ii

    ii

    ii

    60 FUNCIONALIDADES BSICAS

    Destination (camada IPv6)O destino o endereo multicast all-dhcp-agents (ff02::1:2).

    Source port (camada UDP)Indica a porta utilizada pelo servio dhcpv6-client. Neste caso o valor 546.

    Destination port (camada UDP)Indica a porta utilizada pelo servio dhcpv6-server. Neste caso o valor 547.

    Message type (camada DHCPv6)Indica por meio do valor 1 que o tipo de mensagem Solicit.

    Client identifier (camada DHCPv6)Contm dados da identificao nica do cliente baseada no endereofsico.

    Identity association for non-temporary address (camada DHCPv6)Identifica a requisio de endereo IPv6 para o servidor.

    Option request (camada DHCPv6)Indica as opes do pacote DHCPv6.

    Requested option codeIndica a solicitao ao servidor DHCPv6 do DNS Recursive NameServer, por meio do valor 23 e a solicitao da lista de busca dedomnio, pelo valor 24.

    Campos importantes do pacote Advertise, representado pela Figura 1.47:

    Destination (camada Ethernet)O destino o endereo MAC da mquina solicitante(00:00:00:aa:00:00).

    Source (camada Ethernet)A origem o endereo MAC da interface da mquina que enviou aresposta (00:00:00:aa:00:01).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 17 (0x11)refere-se a uma mensagem UDP.

  • ii

    ii

    ii

    ii

    DHCPV6 STATEFUL 61

    Figura 1.47: pacote Advertise mostrado no Wireshark.

    Source (camada IPv6)A origem o endereo IP de link-local da interface do dispositivo queenviou a mensagem, ou seja, do servidor DHCPv6 (fe80::200:ff:feaa:1).

    Destination (camada IPv6)O destino o endereo unicast de link-local da mquina solicitante(fe80::200:ff:feaa:0).

    Source port (camada UDP)Indica a porta utilizada pelo servio dhcpv6-server. Neste caso o valor 547.

    Destination port (camada UDP)Indica a porta utilizada pelo servio dhcpv6-client. Neste caso o valor 546.

    Message type (camada DHCPv6)Indica por meio do valor 2 que o tipo de mensagem Advertise.

    Identity association for non-temporary address (camada DHCPv6)Identifica o uso do endereo IPv6 entregue para o cliente.

  • ii

    ii

    ii

    ii

    62 FUNCIONALIDADES BSICAS

    IA AddressContm o endereo e as configuraes que o cliente deve utilizar(2001:db8::abcc).

    Client identifier (camada DHCPv6)Contm dados da identificao nica do cliente baseada no endereofsico.

    Server identifier (camada DHCPv6)Contm dados da identificao nica do servidor baseada no endereofsico.

    DNS recursive name server (camada DHCPv6)Indica as informaes relacionadas aos servidores DNS recursivos.

    DNS servers addressIndica o endereo IPv6 do servidor DNS requisitado(2001:db8::abc).

    Figura 1.48: pacote Request mostrado no Wireshark.

    Campos importantes do pacote Request, representado pela Figura 1.48:

  • ii

    ii

    ii

    ii

    DHCPV6 STATEFUL 63

    Destination (camada Ethernet)O destino o endereo (33:33:00:01:00:02), sendo que o prefixo 33:33indica que a mensagem um multicast na camada Ethernet. O sufixo00:01:00:02 indica os ltimos 32 bits do endereo multicast IPv6 damensagem.

    Source (camada Ethernet)A origem o endereo MAC da interface do dispositivo que enviou arequisio (00:00:00:aa:00:00).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 17 (0x11)refere-se a uma mensagem UDP.

    Source (camada IPv6)A origem o endereo IP de link-local da interface do dispositivo queenviou a mensagem, ou seja, do cliente (fe80::200:ff:feaa:0).

    Destination (camada IPv6)O destino o endereo multicast all-dhcp-agents DHCPv6 (ff02::1:2).

    Source port (camada UDP)Indica a porta utilizada pelo servio dhcpv6-client. Neste caso o valor 546.

    Destination port (camada UDP)Indica a porta utilizada pelo servio dhcpv6-server. Neste caso o valor 547.

    Message type (camada DHCPv6)Indica por meio do valor 3 que o tipo de mensagem Request.

    Client identifier (camada DHCPv6)Contm dados da identificao nica do cliente baseada no endereofsico.

    Identity association for non-temporary address (camada DHCPv6)Identifica a confirmao do recebimento do endereo IPv6 para oservidor:

  • ii

    ii

    ii

    ii

    64 FUNCIONALIDADES BSICAS

    IA AddressContm o endereo e as configuraes que o cliente deve utilizar(2001:db8::abcc).

    Option request (camada DHCPv6)Indica as opes do pacote DHCPv6:

    Requested option codeIndica a solicitao ao servidor DHCPv6 do DNS Recursive NameServer, por meio do valor 23 e a solicitao da lista de busca dedomnio, pelo valor 24.

    Server identifier (camada DHCPv6)Contm dados da identificao nica do servidor baseada no endereofsico.

    Figura 1.49: pacote Reply mostrado no Wireshark.

    Campos importantes do pacote Reply, representado pela Figura 1.49:

    Destination (camada Ethernet)O destino o endereo MAC da mquina solicitante(00:00:00:aa:00:00).

  • ii

    ii

    ii

    ii

    DHCPV6 STATEFUL 65

    Source (camada Ethernet)A origem o endereo MAC da interface da mquina que enviou aresposta (00:00:00:aa:00:01).

    Type (camada Ethernet)Indica que a mensagem utiliza IPv6.

    Next header (camada IPv6)Indica qual o prximo cabealho. Neste caso, o valor 17 (0x11)refere-se a uma mensagem UDP.

    Source (camada IPv6)A origem o endereo IP de link-local da interface do dispositivo queenviou a mensagem, ou seja, do servidor DHCPv6 (fe80::200:ff:feaa:1).

    Destination (camada IPv6)O destino o endereo IPv6 unicast de link-local do cliente(fe80::200:ff:feaa:0).

    Source port (camada UDP)Indica a porta utilizada pelo servio dhcpv6-server. Neste caso o valor 547.

    Destination port (camada UDP)Indica a porta utilizada pelo servio dhcpv6-client. Neste caso o valor 546.

    Message type (camada DHCPv6)Indica por meio do valor 7 que o tipo de mensagem Reply.

    Identity association for non-temporary address (camada DHCPv6)Identifica a confirmao do fornecimento do endereo IPv6 para ocliente.

    IA AddressContm o endereo e as configuraes que o cliente deve utilizar(2001:db8::abcc).

    Client identifier (camada DHCPv6)Contm dados da identificao nica do cliente baseada no endereofsico.

    Server identifier (camada DHCPv6)Contm dados da identificao nica do servidor baseada no endereofsico.

  • ii

    ii

    ii

    ii

    66 FUNCIONALIDADES BSICAS

    DNS recursive name server (camada DHCPv6)Indica as informaes relacionadas aos servidore