curso ipv6 avançado - sala de aula - nic.br
TRANSCRIPT
Curso IPv6 Avançado
Serviços em IPv6
Licença de uso do material
Esta apresentação está disponível sob a licença
Creative CommonsAtribuição – Não a Obras Derivadas (by-nd)http://creativecommons.org/licenses/by-nd/3.0/br/legalcode
Você pode:● Compartilhar — copiar, distribuir e transmitir a obra.● Fazer uso comercial da obra.● Sob as seguintes condições:
Atribuição — Ao distribuir essa apresentação, você deve deixar claro que ela faz parte do Curso de Formação para Sistemas Autônomos do CEPTRO.br/NIC.br, e que os originais podem ser obtidos em http://ceptro.br. Você deve fazer isso sem sugerir que nós damos algum aval à sua instituição, empresa, site ou curso.
Vedada a criação de obras derivadas — Você não pode modificar essa apresentação, nem criar apresentações ou outras obras baseadas nela..
Se tiver dúvidas, ou quiser obter permissão para utilizar o material de outra forma, entre em contato pelo e-mail: [email protected].
● Motivação
● Funcionalidades Básicas
● DNS
● NTP
● Servidores HTTP
● Proxies
● SMB | CIFS ( SAMBA )
Agenda
Provedor de Acesso ⨯ Provedor de Conteúdo
Motivação
06 de Junho de 2012
● DHCPv6
● Firewall
● DNS
● NTP
● HTTP
● Proxy
● Proxy Reverso
● SMB | CIFS
● SSH
● ...
Serviços
● BIND ○ IPv6 desde Julho/2001 ○ BIND 9.1.3
● NTP ○ IPv6 nativo desde
Outubro/2003 ○ NTP 4.2.0
● Apache HTTP Server ○ IPv6 nativo desde
Março/2001 ○ Apache 2.0.14
● nginx ○ IPv6 preliminar desde
Fevereiro/2009 ○ nginx 0.7.36
● Squid ○ IPv6 nativo desde
Outubro/2008 ○ squid-3.1.0.1
● Samba ○ IPv6 desde Julho/2008 ○ Samba 3.2
● OpenSSH ○ IPv6 desde Janeiro/2000 ○ openssh-1.2.1pre26
● PuTTY
○ IPv6 desde Abril/2005 ○ PuTTY 0.58
Implementações
Distribuindo endereços IPv6 na rede
● Forma mais básica de configuração
● Depende da sintaxe do sistema operacional utilizado
● Simples de ser configurado
● Pouco escalável
Exemplos:
ip -6 addr add 2001:db8:abcd::1/64 dev eth0
ifconfig eth0 inet6 add 2001:db8:abcd::1/64
New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress 2001:db8:abcd::1 -PrefixLength 64
netsh interface ipv6 add address "Local Area Connection" 2001:db8:abcd::1
Configuração Estática
Autoconfiguração de Endereços Stateless (StateLess Address AutoConfiguration)
○ Mecanismo que permite a atribuição de endereços unicast aos nós...
■ sem a necessidade de configurações manuais.
■ sem servidores adicionais.
■ apenas com configurações mínimas dos roteadores.
○ Gera endereços IP a partir de informações enviadas pelos roteadores e de dados locais como o endereço MAC.
○ Gera um endereço para cada prefixo informado nas mensagens RA
○ Se não houver roteadores presentes na rede, é gerado apenas um endereço link local.
SLAAC
Autoconfiguração de Endereços Stateless (StateLess Address AutoConfiguration)
○ Um endereço link-local é gerado.■ Prefixo FE80::/64 + identificador da interface.
○ Endereço adicionado aos grupos multicast solicited-node e all-node.
○ Verifica-se a unicidade do endereço. ■ Se já estiver sendo utilizado, o processo é interrompido,
exigindo uma configuração manual.■ Se for considerado único e válido, ele será atribuído à
interface.○ Host envia uma mensagem RS para o grupo multicast all-routers.○ Todos os roteadores do enlace respondem com mensagem RA.
SLAAC
● Autoconfiguração de Endereços Stateful○ Usado pelo sistema quando nenhum roteador é encontrado.○ Usado pelo sistema quando indicado nas mensagens RA.○ Fornece:
■ Endereços IPv6■ Outros parâmetros (servidores DNS, NTP...)
○ Clientes utilizam um endereço link-local para transmitir ou receber mensagens DHCP.
○ Servidores utilizam endereços multicast para receber mensagens dos clientes (FF02::1:2 ou FF05::1:3).
○ Clientes enviam mensagens a servidores fora de seu enlace utilizando um Relay DHCP.
DHCPv6 - Stateful
● Autoconfiguração de Endereços Stateful
○ Permite um controle maior na atribuição de endereços aos host.
○ Os mecanismos de autoconfiguração de endereços stateful e stateless podem ser utilizados simultaneamente.
■ Por exemplo: utilizar autoconfiguração stateless para atribuir os endereços e DHCPv6 para informar o endereço do servidor DNS.
○ DHCPv6 e DHCPv4 são independentes. Redes com Pilha Dupla precisam de serviços DHCP separados.
DHCPv6 - Stateful
● Não existente no DHCPv4
● Utilizada para distribuir prefixos de rede a roteadores
1) Roteador envia uma requisição de prefixo enviada para rede com destino a todos os servidores DHCPv6
2) Os servidores pré-configurados com um pool de prefixos respondem a este pedido feito pelo roteador enviando um prefixo IPv6
3) Ao receber esta resposta, o roteador fica encarregado de dividir o prefixo e redistribui-lo por suas interfaces
4) Os novos prefixos possuirão o tamanho /64 para que ao serem distribuídos aos hosts via Router Advertisement o procedimento de autoconfiguração stateless seja realizado
DHCPv6 - Prefix Delegation
Path MTU Discovery
● MTU - Maximum Transmit Unit - tamanho máximo do pacote que pode trafegar através do enlace.
● Fragmentação - permite o envio de pacotes maiores que o MTU de um enlace. ○ IPv4 - todos os roteadores podem fragmentar os pacotes que sejam
maiores que o MTU do próximo enlace. ■ Dependendo do desenho da rede, um pacote IPv4 pode ser
fragmentado mais de uma vez durante seu trajeto. ○ IPv6 - fragmentação é realizada apenas na origem.
● Path MTU Discovery – busca garantir que o pacote será encaminhado no maior tamanho possível.
● Todos os nós IPv6 devem suportar PMTUD. ○ Implementações mínimas de IPv6 podem omitir esse suporte,
utilizando 1280 Bytes como tamanho máximo de pacote.
Path MTU Discovery
● Assume que o MTU máximo do caminho é igual ao MTU do primeiro salto. ● Pacote maiores do que o suportado por algum roteador ao longo do
caminho, são descartados ○ Uma mensagem ICMPv6 packet too big é retornada.
● Após o recebimento dessa mensagem, o nó de origem reduz o tamanho dos pacotes de acordo com o MTU indicado na mensagem packet too big.
● O procedimento termina quando o tamanho do pacote for igual ou inferior ao menor MTU do caminho.
● Essas interações podem ocorrer diversas vezes até se encontrar o menor MTU.
● Pacotes enviados a um grupo multicast utilizam tamanho igual ao menor PMTU de todo o conjunto de destinos.
Experiencia1.10 MTU
Path MTU Discovery
Página 99
Laboratório
● Informações de “nomes” e “endereços”
Os nomes na Internet
Os nomes na Internet
● Imensa base de dados distribuída utilizada para a resolução de nomes de domínios em endereços IP e vice-versa
● Arquitetura hierárquica, com dados dispostos em uma árvore invertida, distribuída eficientemente em um sistema descentralizado e com cache
● Registros: ○ A ( IPv4 ): Traduz nomes para endereços IPv4. ○ AAAA [ quad-A ] ( IPv6 ): Traduz nomes para endereços
IPv6
Exemplo: www.ipv6.br. IN A 200.160.4.9IN AAAA 2001:12ff:0:4::9
DNS
● Registros PTR – Resolução de Reverso ● in-addr.arpa. ( IPv4 ): Traduz endereços IPv4 em nomes● Ip6.arpa. ( IPv6 ): Traduz endereços IPv6 em nomes
Exemplo:
ipv6.br. IN A 200.160.4.9IN AAAA 2001:12ff:0:4::9
9.4.160.200.in-addr.arpa. PTR ipv6.br. 9.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.4.0.0.0.0.0.0.0.f.f.2.1.1.0.0.2.ip6.arpa. PTR ipv6.br.
● Obsoletos ○ Registros
■ A6 ■ DNAME
○ Domínio para a resolução de reverso ■ ip6.int
DNS
● A base de dados de um servidor DNS pode armazenar tanto registros IPv6 quanto IPv4
● Esses dados são independentes da versão de IP em que o servidor DNS opera ○ Um servidor com conexão apenas IPv4 pode
responder consultas AAAA ou A ○ As informações obtidas na consulta IPv6 devem ser
iguais às obtidas na consulta IPv4
DNS
● Software DNS mais utilizado da Internet
● Lançado em 1984 com uma publicação técnica
● BIND 9 foi reescrito do zero em 2000 pois: ○ Era difícil auditar o código antigo ○ Era necessário suportar o DNSSEC ○ Era necessário o suporte a IPv6 ○ Existiam muitas vulnerabilidades nas versões
antigas
BIND
Experiencia 2.2 DNSServidor autoridade
Página 117
Laboratório DNS ( BIND )
● Fornece hora em UTC, não considera horário de verão ou fuso horário
● Importante para: ○ sincronização de logs ○ validação de certificados ○ tratamento de incidentes ○ perícia
NTP (Network Time Protocol)
NTP.br
Servidores HTTP
● Apache ○ servidor mais utilizado na Internet (50 a 60%) ○ possui suporte IPv6 por padrão
● nginx ○ servidor com maior crescimento ○ utilizado em mais de 20% dos TOP1000 sites ○ suporta IPv6, mas precisa configuração
Servidores HTTP
Experiencia 2.4 HTTPpaginas existentes no Apache
Página 135
Experiencia 2.5 HTTPnovas paginas no Nginx
Página 141
Laboratório HTTP ( Apache e nginx )
● Possuem múltiplos usos como: ○ manter anonimato do usuário ○ acelerar o acesso com caches ○ aplicar políticas de acesso e filtragem de
conteúdo ○ balanceamento de cargas ○ geração de logs de acesso ○ análise de tráfego com filtros para evitar
malwares
Proxy
Proxy Direto
Experiencia 2.6 ProxyProxy Web direto
Página 147
LaboratórioProxy ( Squid )
Proxy Reverso
Experiencia 2.7 ProxyProxy Web reverso
Página 160
LaboratórioProxy Reverso ( Squid )
● Server Message Block (SMB) ou Common Internet File System (CIFS) é um protocolo da camada de aplicação para fornecer acesso compartilhado a arquivos, impressoras etc
● Acesso pode ser direto via TCP na porta 445
● Acesso pode ser via NetBIOS API: ○ UDP nas portas 137, 138 ○ TCP nas portas 137, 139
● Largamente utilizado por computadores com sistema operacional Microsoft foi reescrito com o SAMBA, sendo este implementado em Software Livre
SMB | CIFS ( SAMBA)
Experiencia 2.8 SMBSamba
Página 168
Laboratório SMB | CIFS ( SAMBA )
● IPv6 é suportado nos principais serviços de rede
● Comece a implantar e testar estes serviços com IPv6, no momento que for necessária a utilização do IPv6 em produção você estará mais preparado e adaptado
● Se encontrar bugs, reporte. Este feedback é importante para que os serviços possuam em IPv6 a mesma qualidade que em IPv4
Considerações Finais
Dúvidas?
Patrocinadores
Terabyte
Gigabyte
Apoio
Obrigado !!!