sexta-feira, 4 de junho de 2010

IPv6 - Básico e RIPng


1        IPv6

O IPV6 é uma evolução do padrão de endereçamento atual onde, ao invés de endereços de 32 bits usados no IPv4, são usados endereços de 128 bits. O número de endereços disponíveis no IPV6 é simplesmente absurdo; seria o número 340.282.366.920 seguido por mais 27 casas decimais. Tudo isso para prevenir a possibilidade de, em um futuro distante, ser necessária uma nova migração.
Por serem muito mais longos, os endereços IPV6 são representados através de caracteres em hexa. No total temos 32 caracteres, organizados em oito quartetos e separados por dois pontos, por exemplo: 8888:9999:AAAA:BBBB:CCCC:DDDD:EEEE:FFFF.
No hexadecimal, cada caracter representa 4 bits (16 combinações). Devido a isso, temos, além dos números de 0 a 9, também os caracteres A, B, C, D, E e F, que representariam (respectivamente), os números 10, 11, 12, 13, 14 e 15. Um exemplo de endereço IPV6, válido na internet, seria 2001:BCE4:5641:3412:341:45AE:FE32:65.
Um atenuante para esta complexidade dos endereços IPV6 é que eles podem ser abreviados de diversas formas, por exemplo: ::1 ou fee::1.
         Todos os zeros à esquerda dentro dos quartetos podem ser omitidos. Por exemplo, ao invés de escrever "0341", você pode escrever apenas "341"; ao invés de "0001" apenas "1" e, ao invés de "0000" apenas "0", sem que o significado seja alterado. É por isso que muitos quartetos dentro dos endereços IPV6 podem ter apenas 3, 2 ou mesmo um único dígito. Os demais são zeros à esquerda que foram omitidos.
         Outra forma de abreviação é a retirada da sequencia de 0. Por exemplo, o endereço 2001:bce4:0:0:0:0:0:1 pode ser abreviado para apenas 2001:bce4::1, omitimos todo o trecho central 0:0:0:0:0. Ao usar o endereço, o sistema sabe que entre o 2001:bce4: e o :1 existem apenas zeros e faz a conversão internamente, sem problema algum.
Cada segmento do endereço IPv6 possui 16 bits, ou seja: 16+16+16+16+16+16+16+16 = 128 bits.
Uma máscara de rede é definida pela quantidade de bits usados no endereço de rede igual ao IPv4. Por exemplo: O endereço Fec0:0:0:0:0:1::192/96 possui como endereço de rede “Fec0:0:0:0:0:1”, pois 6 x 16 = 96 bits.

1.1           Tipos de endereçamento IPv6

Segundo a RFC 2374, uma mesma interface, que utiliza o protocolo IPv6, pode utilizar mais de um endereço, diferentemente do IPv4, onde tal característica só era possível em roteadores. Essa característica é importante porque na versão 6 algumas aplicações, em geral de controle, utilizam-se de endereços especiais que veremos adiante. Para o endereçamento das interfaces existem então 3 tipos de endereços:

1.1.1      Unicast

Responsável por 3 conexões simultâneas na mesma interface.
         Link-Local Unicast Address
Este tipo de endereço é automaticamente configurado em qualquer host IPv6, através da conjugação do seu prefixo FE80::/10 ou 1111111010 em binárioe. Estes endereços são utilizados nos processos de configuração dinâmica automática (autoconfiguração) e no processo de descoberta de elementos na hierarquia de roteamento (Neighbor Discovery Protocol). Este endereçamento permite a comunicação entre nós pertencentes ao mesmo enlace. Esse tipo de endereço não deve ser enviado como endereço de origem ou destino em pacotes e não são repassados pelos roteadores. Abaixo podemos visualizar a estrutura deste tipo de endereço
Exemplo: fe80:0000:0000:0000:260:97ff:fefe:9ced
         Site-Local
O endereço do tipo Site Local é similar aos endereços privados usados em IPv4, como as redes 10.0.0.0/8, 172.16.0.0/16 e 198.168.0.0/16. Esses endereços podem ser usados para uma comunicação restrita dentro de um domínio específico.
Este tipo de endereço é identificado pelo prefixo FEC0::/10 ou 1111111011 em binário. Exempo:
 fec0:0000:0000:0000:260:97ff:fefe:9ced
         Link-Global
Esse tipo de endereço unicast é equivalente ao endereço global unicast usado em IPv4. Sendo assim é o endereço que será usado globalmente na Internet. Essa estrutura de endereços globais permite uma agregação de prefixos de roteamento que limitam o número de entradas nas tabelas de rotas.
A estrutura deste tipo de endereço é dividida em 4 níveis
·         FP – Format Prefix, que indica justamente que se trata de um endereço do tipo Global Unicast, esse FP deve ser sempre 001.
·         Global Routing Prefix destinado a identificação dos ISPs.
·         O terceiro campo Subnet ID que é o campo Site ID da estrutura de hierarquização do endereço IPv6
·         Interface ID que possui 64 bits. Abaixo
Exemplo: 2001:0200:03b8:0000:260:97ff:fefe:9ced

1.1.2      IPv4-compatible IPv6 Address

Esse tipo de endereço é usado em IPv6 como um mecanismo de transição entre IPv6 e IPv4. É utilizado como endereços de destino e origem em tunnel IPv6 sobre IPv4. É representado por um endereço IPv6 cujos últimos 32 bits são um endereço IPv4. Desta forma, anexando-se um prefixo nulo (96 bits de zeros) a um endereço IPv4 (32 bits) obtém-se o seguinte formato:
0:0:0:0:0:0:192.168.30.1 ou no seu formato abreviado ::192.168.30.1

1.1.3      Multicast

Da mesma forma que o endereço Anycast, este endereço identifica um grupo de interfaces pertencente a diferentes hosts, mas um pacote destinado a um endereço Multicast é enviado para todas as interfaces que fazem parte deste grupo.
Um endereço do tipo Multicast Address é um endereço IPv6, que é indicado pelo prefixo FP FF00::/8 ou 11111111 em binário. O segundo octeto que se segue ao prefixo (FP = FF) define o tempo de vida (lifetime), os 4 primeiros bits e os últimos 4 bits deste octeto o escopo do endereço Multicast.
Um endereço com lifetime permanente tem um parâmetro de tempo de vida igual a "0", enquanto um endereço temporário tem o mesmo parâmetro igual a "1". O escopo deste tipo de endereço apresenta os valores já definidos de 1, 2, 3, 4, 5, 8 e "E" (os outros estão reservados para o futuro, sendo que o escopo F já está reservado para ser usado para âmbito galáctico) para identificar um host, enlace, site, organização ou um escopo global, respectivamente. Os outros 112 bits são utilizados para identificar o grupo Multicast. Abaixo, visualizamos a estrutura de um endereço:
Responsável por conexões de transmissão única para vários.
         Link-Local: formado por prefixo de multicast + sufixo da interface de rede
ff02:0000:0000:0001::fffe:9ced Completo ou ff02::1::fffe:9ced Comprimido
         Site-Local: composto por prefixo de multicast de router + sufixo de rede de Site-Local
ff05:0000:0000:0002::fffe:9ced Completo ou ff05::2::fffe:9ced Comprimido
         Link-Global: composto por prefixo de multicast de router + sufixo de rede de Link-Global
ff02:0000:0000:0001::ff9e:cc1d  Completo ou ff02::1::ff9e:cc1d Comprimido

1.1.4      Anycast

Esse tipo de endereço é utilizado para identificar um grupo de interfaces pertencentes a hosts diferentes. Um pacote destinado a um endereço Anycast é enviado para uma das interfaces identificadas pelo endereço. Especificamente, o pacote é enviado para a interface mais próxima, de acordo com o protocolo de roteamento.
Um endereço do tipo Anycast não pode ser utilizado como endereço de origem de um pacote IPv6. Este tipo de endereçamento será útil na detecção rápida de um determinado servidor ou serviço. Por exemplo, poderá ser definido um grupo de servidores de DNS configurados com endereçamento Anycast, assim um host irá alcançar o servidor mais próximo utilizando este tipo de endereço.

Existe um prefixo mais longo desse mesmo endereço para cada endereço Anycast atribuído que identifica a região ao qual todas as interfaces pertencem. A=


2        Cenário

2.1           Objetivo

Três roteadores (R1, R2 e R3) são conectados fisicamente R1-R2-R3 e deverá ser implementado uma conectividade puramente IPv6 seguindo os critérios:
         A rede entre R1 e R2 deverá ser 2001:12:12:12:12:12:12/112 e seus endereços IPs com final 1 e 2no último segmento, respectivamente;
         Cada roteador deverá ter um endereço na loopback 0 no formato 2001::;
         O roteamento RIPv6 deverá ser implementado divulgando todas as interfaces.

2.2           Topologia

Figure-01:              Topologia

2.3           IOS utilizados

         R1, R2 e R3 – c7200-k91p-mz.122-25.S15.bin

2.4           Configuração dos Roteadores

2.4.1      Configurações do IPv6

Inicialmente deve-se habilitar o roteamento IPv6 nos roteadores com o comando “ipv6 unicast-routing”. Nas interfaces os endereços link-global são configurados com o comando “ipv6 address
/”. Os endereços link-local são automaticamente configurados.

2.4.2      Configurações do RIPng

O roteamento RIP é configurado com o comando “ipv6 router rip ”. Diferente do RIP do IPv4, deve-se habilitar nas interfaces o roteamento RIP IPv6 com o comando “ipv6 rip enable”, automaticamente a rede é divulgada para os vizinhos.

2.4.3      Configurações do roteamento estático multicast

2.5           Observações e Bugs

Documentação:
http://www.cisco.com/en/US/partner/tech/tk872/technologies_configuration_example09186a00800b49a5.shtml

2.6           Comandos Importantes de Verificação

R1#show ipv6 interface brief
FastEthernet0/0            [up/up]
    FE80::C800:3FF:FE9C:0
    2001:12:12:12:12:12:12:1
Loopback0                  [up/up]
    FE80::C800:3FF:FE9C:0
    2001::1

R1#show ipv6 routers
Router FE80::C801:3FF:FE9C:0 on FastEthernet0/0, last update 3 min
  Hops 64, Lifetime 1800 sec, AddrFlag=0, OtherFlag=0, MTU=1500
  Reachable time 0 msec, Retransmit time 0 msec
  Prefix 2001:12:12:12:12:12:12:0/112 onlink autoconfig
    Valid lifetime 2592000, preferred lifetime 604800

R1#show ipv6 neighbors
IPv6 Address                              Age Link-layer Addr State Interface
FE80::C801:3FF:FE9C:0                       6 ca01.039c.0000  STALE Fa0/0

R1#show ipv6 route
IPv6 Routing Table - 8 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP
       U - Per-user Static route
       I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
       O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
       ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
LC  2001::1/128 [0/0]
     via ::, Loopback0
R   2001::2/128 [120/2]
     via FE80::C801:3FF:FE9C:0, FastEthernet0/0
R   2001::3/128 [120/3]
     via FE80::C801:3FF:FE9C:0, FastEthernet0/0
C   2001:12:12:12:12:12:12:0/112 [0/0]
     via ::, FastEthernet0/0
L   2001:12:12:12:12:12:12:1/128 [0/0]
     via ::, FastEthernet0/0
R   2001:23:23:23:23:23:23:0/112 [120/2]
     via FE80::C801:3FF:FE9C:0, FastEthernet0/0
L   FE80::/10 [0/0]
     via ::, Null0
L   FF00::/8 [0/0]
     via ::, Null0

3        Configuração

3.1           R1

!
ipv6 unicast-routing
!
!
interface Loopback0
 ipv6 address 2001::1/128
 ipv6 rip LAB enable
!
interface FastEthernet0/0
 ipv6 address 2001:12:12:12:12:12:12:1/112
 ipv6 rip LAB enable
!
ipv6 router rip LAB
!

3.2           R2

!
ipv6 unicast-routing
!
!
interface Loopback0
 ipv6 address 2001::2/128
 ipv6 rip LAB enable
!
interface FastEthernet0/0
 ipv6 address 2001:12:12:12:12:12:12:1/112
 ipv6 rip LAB enable
!
interface FastEthernet1/0
 ipv6 address 2001:23:23:23:23:23:23:3/112
 ipv6 rip LAB enable
!
ipv6 router rip LAB
!

3.3           R3

!
ipv6 unicast-routing
!
!
interface Loopback0
 ipv6 address 2001::3/128
 ipv6 rip LAB enable
!
interface FastEthernet0/0
 ipv6 address 2001:23:23:23:23:23:23:3/112
 ipv6 rip LAB enable
!
ipv6 router rip LAB
!

Nenhum comentário: