Experimento 3

Configuração do protocolo IPv6 em um segmento de rede, utilizando interface Tunnel para interligação ao Br6Bone.


 

 


Objetivos

Para este experimento utilizamos equipamentos com suporte ao protocolo IPv6 (roteadores e estações) e um roteador com IOS sem suporte IPv6. Configuramos as interfaces Ethernet dos roteadores Cisco1 e Cisco3 e as estações Linux com endereços de rede IPv6 e também endereços IPv4. As interfaces Seriais dos roteadores Cisco1, Cisco3 e IPv4 possuem apenas endereços IPv4. Desta forma, podemos verificar no diagrama abaixo a formação de duas ”ilhas” IPv6. Para uni-las utilizaremos uma conexão através de um Tunnel entre os roteadores Cisco1 e Cisco3.

Verificaremos os seguintes itens:

·        Configuração das interfaces Ethernet e Tunnel dos roteadores com suporte IPv6;

·        Configuração do protocolo de roteamento RIPv6 e anuncio de suas redes em cada roteador com suporte IPv6;

·        Conectividade entre os roteadores e estações;

·        Auto-configuração das estações Linux. (Verificamos que a estação concatena o prefixo de rede do gateway com o próprio MAC e alguns caracteres de controle);

·        Resultados das tabelas de rotas IPv6 nos roteadores.

Obs: Neste experimento também existem configurações de endereços e do protocolo RIP, para redes IPv4. Porém não são alvo deste experimento. Qualquer dúvida pode ser verificada no sitio http://mesonpi.cat.cbpf.br/redes/labweb/principal.htm.

 TOPO 


Arquitetura utilizada na rede

TOPO


Configuração dos equipamentos

               Comandos para os roteadores CISCO1 e CISCO3
 
 
·                Habilitando o roteamento IPv6:
 
CISCO1#
CISCO1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
CISCO1(config)#ipv6 unicast-routing
CISCO1(config)#
 
 
·                Configuração de endereço IPv6 global-unicast numa interface ethernet:
 
CISCO3#
CISCO3#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
CISCO3(config)#interface ethernet [no da interface]
CISCO3(config)#ipv6 enable
CISCO3(config-if)#ipv6 address [endereço IPv6*] [prefixo de rede**]
CISCO3(config-if)#
 

Obs:

        * - refere-se a notação do endereço a ser configurado – xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx – onde “x” são algarismos hexadecimais divididos em 8 grupos de 4 cada separado por “:” – Ex: 2000::1 (note que os grupos somente formados por zeros podem ser simplificados).

        ** - refere-se ao no de bits que fazem parte do prefixo de rede – Ex: 2000::1/16 (os 16 primeiros bits deste endereço “2000” referem-se a rede e o restante (112 bits) indicam a interface “::1”. 

                

 
·                 Configuração de endereço IPv6 global-unicast numa interface tunnel:
 
CISCO3#
CISCO3#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
CISCO3(config)#interface tunnel [no da interface]
CISCO3(config-if)#ipv6 enable
CISCO3(config-if)#ipv6 address [endereço IPv6] [prefixo de rede]
CISCO3(config-if)#
 
 
·                 Configuração de Tunnel entre dois roteadores para encapsulamento IPv6 sobre IPv4:
 
CISCO3#
CISCO3#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
CISCO3(config)#interface tunnel [no da interface]
CISCO3(config-if)#tunnel source [tipo da interface de saída*] [no da interface]
CISCO3(config-if)#tunnel destination [endereço de destino**]
CISCO3(config-if)# tunnel mode ipv6ip***

 

Obs:

        * - refere-se a interface usada como fonte do tunnel Ex: Serial.

        ** - refere-se ao endereço IPv4 da interface de destino do tunnel Ex: a interface serial 0 do roteador Cisco1, 200.20.20.2. 

        *** - refere-se ao modo de encapsulamento usado pelo tunnel Ex: neste caso usaremos IPv6 sobre IPv4.

 
 
·                Criação de um processo do protocolo RIPv6 e anuncio das redes conectadas:
 
CISCO1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
CISCO1(config)#ipv6 router rip [nome*]
CISCO1(config-router)#
 

Obs:

        * - refere-se ao nome dado ao processo criado para o funcionamento do protocolo RIPv6, Ex: ipv6 router ripteste3.

 
 
·                Habilitação do protocolo RIPv6 numa interface qualquer:
 
CISCO1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
CISCO1(config)#interface [tipo da interface] [no da interface]
CISCO1(config-if)#ipv6 rip [nome] enable
 
 
·                Anuncio das redes conectadas e habilitadas no processo do RIPv6:
 
CISCO1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
CISCO1(config)#ipv6 router rip [nome]
CISCO1(config-router)#redistribute connected
CISCO1(config-router)#
     

 

SHOW RUNNING-CONFIG

 

·        Este comando é utilizado para verificar a configuração do roteador. Observar se a interface está UP/DOWN, quais os endereços IPv6 e IPv4 de cada interface. Verificar na interface as configurações do Tunnel e do processo RIPv6. Ainda é importante observar as configurações para IPv4 existente em toda rede, utilizando protocolo de roteamento RIP.

 
 
Resultados CISCO1
 
CISCO1#show running-config
Building configuration...
 
Current configuration : 598 bytes

!

version 12.2

service timestamps debug uptime

service timestamps log uptime

no service password-encryption

!

hostname CISCO1

!

!

ip subnet-zero

!

ipv6 unicast-routing

!

!

!

interface Tunnel0

 no ip address

 ipv6 address 3000::1/64

 ipv6 enable

 ipv6 rip 1 enable

 tunnel source Serial0

 tunnel destination 200.20.10.2

 tunnel mode ipv6ip

!

interface Ethernet0

 ip address 152.84.50.1 255.255.255.0

 ipv6 address 2001::1/64

 ipv6 enable

 ipv6 rip 1 enable

!

interface Serial0

 ip address 200.20.20.2 255.255.255.0

 no fair-queue

!

interface Serial1

 no ip address

 shutdown

!

router rip

 network 152.84.0.0

 network 200.20.20.0

!

ip classless

ip http server

ip pim bidir-enable

!

ipv6 router rip 1

 redistribute connected

!

!

!

line con 0

line aux 0

line vty 0 4

!

end

 

 

Resultados CISCO3
 
CISCO3#show running-config
Building configuration...
 
Current configuration : 598 bytes

!

version 12.2

service timestamps debug uptime

service timestamps log uptime

no service password-encryption

!

hostname CISCO3

!

!

ip subnet-zero

!

ipv6 unicast-routing

!

!

!

interface Tunnel0

 no ip address

 ipv6 address 3000::3/64

 ipv6 enable

 ipv6 rip 1 enable

 tunnel source Serial0

 tunnel destination 200.20.20.2

 tunnel mode ipv6ip

!

interface Ethernet0

 ip address 200.20.30.1 255.255.255.0

 ipv6 address 2003::1/64

 ipv6 enable

 ipv6 rip 1 enable

!

interface Serial0

 ip address 200.20.10.2 255.255.255.0

 no fair-queue

!

interface Serial1

 no ip address

 shutdown

!

router rip

 network 200.20.10.0

 network 200.20.30.0

!

ip classless

ip http server

ip pim bidir-enable

!

ipv6 router rip 1

 redistribute connected

!

!

!

line con 0

line aux 0

line vty 0 4

!

end

 
 
Resultados IPV4 
 

!

version 12.1

no service single-slot-reload-enable

service timestamps debug uptime

service timestamps log uptime

no service password-encryption

!

hostname IPv4

!

!

!

!

!

!

ip subnet-zero

!

!

!

!

interface Ethernet0

 no ip address

 shutdown

 media-type 10BaseT

!

interface Ethernet1

 no ip address

 shutdown

 media-type 10BaseT

!

interface Serial0

 ip address 200.20.10.1 255.255.255.0

 no fair-queue

 clockrate 2000000

!

interface Serial1

 ip address 200.20.20.1 255.255.255.0

 clockrate 2000000

!

interface Serial2

 no ip address

 shutdown

!

interface Serial3

 no ip address

 shutdown

!

router rip

 network 200.20.10.0

 network 200.20.20.0

!

ip classless

no ip http server

!

!

line con 0

line aux 0

line vty 0 4

!

end

TOPO


Conclusões

Neste item serão apresentados três comandos fundamentais para que possamos tirar as conclusões a respeito do correto funcionamento de nossa rede de testes. São eles os comandos ping6 (que verifica a conectividade da rede IPv6), traceroute6 (que mostra por quais roteadores um pacote enviado passa até alcançar seu destino) e o show ipv6 route (que apresenta a tabela de rotas de cada roteador).

 

PING6

 

  • Verifica a conectividade entre a estação Linux A (de onde é executado o programa ping6) e a estação Linux B. O programa ping6 envia um pacote ICMP com 64 bytes de dados para o endereço indicado (neste caso 2003::201:2ff:febf:a56b – endereço IPv6 do Linux B) e aguarda o retorno do mesmo, calculando o tempo gasto para execução desta tarefa.

 

[root@linuxA raphagg]# ping6 2003::201:2ff:febf:a56b

PING 2003::201:2ff:febf:a56b(2003::201:2ff:febf:a56b) from 2001::2a0:c9ff:fec8:e0c2 : 56 data bytes

64 bytes from 2003::201:2ff:febf:a56b: icmp_seq=1 ttl=62 time=12.8 ms

64 bytes from 2003::201:2ff:febf:a56b: icmp_seq=2 ttl=62 time=11.9 ms

64 bytes from 2003::201:2ff:febf:a56b: icmp_seq=3 ttl=62 time=11.9 ms

64 bytes from 2003::201:2ff:febf:a56b: icmp_seq=4 ttl=62 time=11.9 ms

64 bytes from 2003::201:2ff:febf:a56b: icmp_seq=5 ttl=62 time=11.9 ms

64 bytes from 2003::201:2ff:febf:a56b: icmp_seq=6 ttl=62 time=12.6 ms

 

--- 2003::201:2ff:febf:a56b ping statistics ---

6 packets transmitted, 6 received, 0% loss, time 5010ms

rtt min/avg/max/mdev = 11.908/12.225/12.874/0.410 ms

 

  • Verifica a conectividade entre a estação Linux B e a estação Linux A.

 

[root@linuxB raphagg]# ping6 2001::2a0:c9ff:fec8:e0c2

PING 2001::2a0:c9ff:fec8:e0c2(2001::2a0:c9ff:fec8:e0c2) 56 data bytes

64 bytes from 2001::2a0:c9ff:fec8:e0c2: icmp_seq=1 ttl=62 time=12.7 ms

64 bytes from 2001::2a0:c9ff:fec8:e0c2: icmp_seq=2 ttl=62 time=12.3 ms

64 bytes from 2001::2a0:c9ff:fec8:e0c2: icmp_seq=3 ttl=62 time=12.9 ms

64 bytes from 2001::2a0:c9ff:fec8:e0c2: icmp_seq=4 ttl=62 time=12.2 ms

64 bytes from 2001::2a0:c9ff:fec8:e0c2: icmp_seq=5 ttl=62 time=12.0 ms

64 bytes from 2001::2a0:c9ff:fec8:e0c2: icmp_seq=6 ttl=62 time=12.6 ms

64 bytes from 2001::2a0:c9ff:fec8:e0c2: icmp_seq=7 ttl=62 time=12.0 ms

 

--- 2001::2a0:c9ff:fec8:e0c2 ping statistics ---

7 packets transmitted, 7 received, 0% packet loss, time 6056ms

rtt min/avg/max/mdev = 12.073/12.434/12.929/0.325 ms

 

 

            TRACEROUTE6

 

  • Mostra o caminho percorrido da estação Linux A até alcançar o destino, a estação Linux B. Podemos verificar que o pacote enviado do Linux A para o Linux B passa por 2001::1 - roteador CISCO1, interface ethernet 0, passa por 3000::3 - roteador CISCO3, interface tunnel 0, e alcança seu destino ao chegar em 2003::2201:2ff:febf:a56b – estação Linux B. Podemos verificar que os pacotes passam pela nuvem IPv4, sem serem percebidos, isto é, utiliza Tunnel com encapsulamento IPv6 sobre IPv4. 

 

[root@linuxA raphagg]# traceroute6 2003::201:2ff:febf:a56b

traceroute to 2003::201:2ff:febf:a56b (2003::201:2ff:febf:a56b) from 2001::2a0:c9ff:fec8:e0c2, 30 hops max, 16 byte packets

 1  2001::1 (2001::1)  2.476 ms *  2.396 ms

 2  3000::3 (3000::3)  10.843 ms *  11.007 ms

 3  2003::201:2ff:febf:a56b (2003::201:2ff:febf:a56b)  12.227 ms  11.705 ms  12.058 ms 

 

  • Mostra o caminho percorrido da estação Linux B até alcançar o destino, a estação Linux A. Podemos verificar que o pacote enviado do Linux B para o Linux A passa por 2003::1 - roteador CISCO3, interface ethernet 0, passa por 3000::1 - roteador CISCO1, interface tunnel 0, e alcança seu destino ao chegar em 2001::2a0:c9ff:fec8:e0c2 – estação Linux A. Podemos verificar que os pacotes passam pela nuvem IPv4, sem serem percebidos, isto é, utiliza Tunnel com encapsulamento IPv6 sobre IPv4.

 

[root@multicast raphagg]# traceroute6 2001::2a0:c9ff:fec8:e0c2

traceroute to 2001::2a0:c9ff:fec8:e0c2 (2001::2a0:c9ff:fec8:e0c2) from 2003::201:2ff:febf:a56b, 30 hops max, 16 byte packets

 1  2003::1 (2003::1)  2.975 ms  2.617 ms *

 2  3000::1 (3000::1)  10.953 ms  11.091 ms *

 3  2001::2a0:c9ff:fec8:e0c2 (2001::2a0:c9ff:fec8:e0c2)  13.746 ms  12.076 ms  11.593 ms

 

 

            SHOW IPV6 ROUTE

 

  • CISCO1 - Podemos verificar na tabela de rotas IPv6 do roteador CISCO1, que existem 3 tipos de rotas L, C, S. As rotas L (locais) são as rotas configuradas manualmente nas interfaces ou aquelas autoconfiguradas pelo protocolo IPv6. Por exemplo, as rotas para 2001::1/128 (1)-(endereço da interface ethernet 0) e 3000::1/128 (4)-(endereço da interface tunnel 0) são rotas do tipo “L” configuradas manualmente e são aprendidas pelas proprias interfaces. Já as rotas FE80::/10 (6)-(prefixo de endereço link local) e FF00::/8 (7)-(prefixo de endereço multicast) são rotas do tipo “L” configuradas automaticamente pelo protocolo. Essas rotas são necessárias para configurar equipamentos que não estão possuem endereços, para reconhecimento de vizinhos e reconhecimento de grupos multicast. As rotas  do tipo “C” para 2001::/64 (2) e 3000::/64 (5) são de redes diretamente conectadas e aprendidas respectivamente através das interfaces serial 0 e tunnel 0. A rota do tipo “R” para 2003::/64 (3) é uma rota aprendida pelo protocolo RIPv6, através de sua interface tunnel 0(interface de comunicação com o CISCO3), note que ele aprende essa rota através de um endereço link local (*), que o o endereço deste tipo para a interface tunnel 0 (cada interface é automaticamente configurada com um endereço desse tipo quando o protocolo IPv6 é habilitado na mesma). 

   

CISCO1#show ipv6 route

IPv6 Routing Table - 7 entries

Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP

Timers: Uptime/Expires

 

L   2001::1/128 [0/0]

     via ::, Ethernet0, 00:00:15/never                (1)

C   2001::/64 [0/0]

     via ::, Ethernet0, 00:00:18/never                (2)

R   2003::/64 [120/2]

     via FE80::C814:A02, Tunnel0, 00:08:26/00:02:59   (3)

L   3000::1/128 [0/0]

     via ::, Tunnel0, 00:08:28/never                  (4)

C   3000::/64 [0/0]

     via ::, Tunnel0, 00:08:31/never                  (5)

L   FE80::/10 [0/0]

     via ::, Null0, 00:09:25/never                    (6)

L   FF00::/8 [0/0]

     via ::, Null0, 00:09:25/never                    (7)

 
 
  • CISCO3 – Verificamos que a tabela de rotas é bem semelhante a tabela do CISCO1, as diferenças se devem somente aos endereços das interfaces e a rota aprendida por RIPv6.
 

CISCO3#sh ipv6 route

IPv6 Routing Table - 7 entries

Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP

Timers: Uptime/Expires

 

R   2001::/64 [120/2]

     via FE80::C814:1402, Tunnel0, 00:05:54/00:02:03

L   2003::1/128 [0/0]

     via ::, Ethernet0, 00:06:47/never

C   2003::/64 [0/0]

     via ::, Ethernet0, 00:06:50/never

L   3000::3/128 [0/0]

     via ::, Tunnel0, 00:05:55/never

C   3000::/64 [0/0]

     via ::, Tunnel0, 00:05:58/never

L   FE80::/10 [0/0]

     via ::, Null0, 00:06:51/never

L   FF00::/8 [0/0]

     via ::, Null0, 00:06:51/never

   VOLTA


 

Última atualização:
05/09/03

melhor visualização
800 X 600 ou superior

Contato