Routing-RIP

Propaganda
Interior Gateway Protocols
Routing Information Protocol - RIP
IG
P
Sistema
Autónomo 1
2003 ISEL - DEEC - RCD
P
IG
Sistema
Autónomo 2
Routing Information Protocol - RIP
Características
¾ Implementa um algoritmo do tipo vector-distance.
¾ Não envia as máscaras de rede associadas às rotas
z Suporta subredes da mesma dimensão. Não suporta VLSM.
¾ Métrica: Distância medida em saltos (HOPS)
z Métrica ignora outros factores como delay, vel. de transmissão
¾ Guarda apenas os melhores caminhos.
z Não suporta load balancing entre caminhos com a mesma distância
¾ Funciona sobre UDP no porto 520 e por broadcast IP
(Dimensão Máxima das mensagens é 512 bytes ou 25 rotas)
RIP definido no RFC 1058 [Hedrick 1988]
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
2
Formato das Mensagens RIP
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
3
Formato das mensagens RIP (2)
COMMAND - Tipo de Mensagem:
1 - Request (RQ) - Pedido de informação de tabela de routing (parcial ou total)
2 - Response (RP) - Resposta com informação de tabela de routing
3 - Liga o modo Trace (obsoleto)
4 - Desliga o modo Trace (obsoleto)
5 - Poll - (Reservada para uso interno da Sun Microsystems)
6 - Poll-entry - (Reservada para uso interno da Sun Microsystems)
VERSION - Versão do protocolo RIP
ADDRESS FAMILY - Tipo de endereços propagados (2 para endereços IP)
IP ADDRESS - Endereço IP (tip. de rede) de destino
RQ - do qual se quer saber se um router pode encaminhar
RP - que o router informa que pode encaminhar
METRIC (RP) - Custo do caminho para o endereço de destino medido em número de routers
Um router anuncia METRIC=1 para as redes a que está directamente ligado
Um router anuncia METRIC=16 para as redes para que não sabe encaminhar (infinito)
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
4
Convenções de endereços no RIP
Suporta endereços até 14 bytes.
¾ Para IP usa apenas 4, colocando os restantes a 0 (zero).
Convenciona que o caminho 0.0.0.0 indica o router por
omissão para encaminhar pacotes para fora do AS.
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
5
Funcionamento do RIP (1)
Publicação de caminhos (Updates)
Normal
¾ Router envia RP, de 30 em 30 segundos (por omissão), por
todas as interfaces com informação das RT (total ou parcial)
z COMMAND = 2; AD FAM = 2 ; IP ADDRESS = IPx ; METRIC = Mx …
Provocada (Triggered Updates)
[implementado mais tarde]
¾ Quando a distância de um caminho é alterada é enviado um
RP com a informação da RT que foi alterada
z COMMAND = 2; AD FAM = 2 ; IP ADDRESS = IPx ; METRIC = Mx ...
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
6
Funcionamento do RIP (2)
Pedido de caminhos (Request)
Inicialização
¾ Router envia RQ por todas as interfaces a pedir tabelas de
routing (RT) aos routers vizinhos (Broadcast porto 520 UDP)
z COMMAND = 1; ADDRESS FAMILY = 0 ; METRIC = 16
¾ Routers vizinhos respondem enviando RT
z COMMAND = 2; AD FAM = 2 ; IP ADDRESS = IPx ; METRIC = Mx ...
Normal
¾ Request de caminhos
z COMMAND = 1; AD FAM = 2 ; IP ADDRESS = IPx
¾ Reply de caminhos
z COMMAND = 2; AD FAM = 2 ; IP ADDRESS = IPx ; METRIC = Mx ...
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
7
Funcionamento do RIP (3)
Gestão de caminhos nas RTs
Normal
¾ O router junta a informação das várias RTs recebidas para
construir a sua RT escolhendo os caminhos com menor
distância (hops)
¾ Uma rota que não é actualizada durante 3 min é apagada ou
posta a infinito (poisened reverse)
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
8
Funcionamento do RIP (4)
Troca de tabelas de routing
Destino
Distância
Caminho
Destino
Net1
Net2
Net4
Net17
Net24
Net30
Net42
1
1
8
5
6
2
2
directo
directo
Rout.L
Rout.M
Rout.J
Rout.Q
Rout.J
Net1
Net2
Net4
Net17
Net21
Net24
Net30
Net42
Tabela de routing de K
(Antes de receber
a mensagem de routing)
2003 ISEL - DEEC - RCD
Mensagem de
routing de J
Destino
Distância
Net1
Net4
Net17
Net21
Net24
Net30
Net42
2
3
6
4
5
10
3
Distância Caminho
1
1
4
5
5
6
2
4
directo
directo
Rout.J
Rout.M
Rout.J
Rout.J
Rout.Q
Rout.J
Tabela de routing de K
(Depois de receber
a mensagem de routing)
Protocolos de encaminhamento
9
Informação nas Tabelas de Routing RIP
¾ Destination Address
z Endereço de Rede, Sub-Rede, Máquina, Omissão (0.0.0.0)
¾ Router Address
z Router a quem enviar os pacotes para um determinado destino
¾ Interface
z Por onde foi recebida a informação de encaminhamento e por
onde devem ser enviados os pacotes
¾ Metric
z Distância em hops (routers) até ao endereço de destino
¾ Timer
z Tempo desde que a entrada foi actualizada
¾ Flags
z Informação vária - Ex.: Actualizada recentemente
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
10
Problemas do Alg. Vector Distance (RIP)
Possibilidade de existirem loops nas tabelas de routing
¾ O algoritmo V.D. não detecta possiveis loops nas RT
z Pode ser um problema mortal, quando a largura de banda é limitada
z Se a rede ficar saturada, devido aos loops, é impossível enviar
mensagens de configuração ao(s) router(s) para remover esse loop
Instabilidade nas tabelas de routing
¾ O algoritmo V.D. têm convergência lenta (baseado no
mecanismo de count to infinity)
z Novos destinos propagam-se rapidamente.
z Destinos inatingíveis propagam-se lentamente (por timeout).
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
11
Convergência lenta ou Count to Infinity
Quando uma ligação de um router deixa de estar activa, pode
acontecer que ele aprenda caminhos alternativos que eram
baseados (directa ou inderectamente) nessa ligação, existindo
assim um tempo de instabilidade nas tabelas de routing até que
todos os participantes se apercebam que o destino se encontra
inacessivel
1
2
3
Rede 1
Rede 1
R1
R2
R3
3
2
3
R1
R2
R3
De modo a minurar o tempo de instabilidade foi escolhido o valor
16 para representar um destino inacessivel no RIP o que limita a
extensão da rede a executar RIP (16 hops)
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
12
Resolver a “convergência lenta”
Mecanismos:
¾ Split Horizon Update - (implementado no RIP v1)
¾ Triggered Updates - (implementado no RIP v1)
¾ Route Poisoning - (implementado no RIP v2)
¾ Poison Reverse - (implementado no RIP v2)
¾ Hold Down - (implementado no RIP v2)
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
13
Resolução da “convergência lenta” (1)
Split Horizon Update - (implementado no RIP v1)
¾ Um router não envia para uma interface informação de
caminhos que tenha sido recebida pela interface
¾ Problema:
z Não resolve todos os tipos de loops (indirectos)
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
14
Resoluções da “convergência lenta” (2)
Triggered Updates - (implementado no RIP v1)
¾ Assim que detecta uma falha o router envia imediatamente
para os vizinhos o seu novo vector de distâncias, sem esperar
pelo próximo envio periódico.
¾ Problema:
z Esta técnica pode provocar uma avalanche de broadcasts em redes
com vários routers.
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
15
Resolução da “convergência lenta” (3)
Route Poisoning - (implementado no RIP v2)
¾ Quando um router detecta uma falha numa ligação, coloca as
entradas correspondentes a infinito (custo 16), e publica esse
caminho durante algum tempo.
¾ Problema:
z Aumenta a dimensão das mensagens de update
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
16
Resolução da “convergência lenta” (4)
Poison Reverse - (implementado no RIP v2)
¾ Quando um router recebe a indicação de que uma rota passou
repentinamente para uma distância infinita (Route
Poisoning), publica essa rota “infinita” no sentido de onde
aprendeu (sobrepondo-se ao Split Horizon) durante algum
tempo.
¾ Problema:
z Aumenta a dimensão das mensagens de update
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
17
Resolução da “convergência lenta” (5)
Hold Down - (implementado no RIP v2)
¾ Durante um tempo, ignora toda a informação sobre novos
caminhos para um destino que foi classificado de inatingível
(tipicamente 60s).
¾ Problemas:
z Todas as máquinas têm que ter um hold-down igual.
z Durante o período de hold down, preserva a informação de destinos
inacessiveis, mesmo que receba informação de um caminho
alternativo.
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
18
Problemas do RIP v1
Envio de Mensagens por broadcasts
¾ Interrompem todas as máquinas (mesmo que não tenham RIP)
z Resolvido no RIP v2 com endereço de Multicast
Não existe autenticação das mensagens
z Resolvido no RIP v2
Suporte muito incompleto a máscaras de rede
¾ Suporta subredes com a dimensão da máscara igual à
configurada nas interfaces do próprio router
¾ Não suporta VLSM – Variable Lenght Subnet Mask
z Resolvido no RIP v2 com o campo da mensagem Network Mask
Não suporta redes de grandes dimensões
¾ Não suporta caminhos maiores que 14 saltos (Routers)
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
19
Falhas de segurança do RIP v1
Como não existe um mecanismo de autenticação dos
routers a executar o protocolo RIP é fácil bloquear o
funcionamento de uma rede enviando mensagens RIP
falsas
Ex.: Uma máquina envia mensagens RIP anunciando custos
baixos para um conjunto de destinos fazendo com que os
outros routers comecem a encaminhar os pacotes para esses
através da máquina
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
20
Routing Information Protocol v2
Características
¾ Compativel com RIP v1
¾ Suporta Classless Routing (sub-redes, CIDR)
z Campo network mask na mensagem
¾ Mecanismo de autenticação
z Password simples e MD5 (RFC 2082 – Jan 1997)
¾ Suporta comunicação por Multicast - Endereço 224.0.0.9
z Não necessita de IGMP - mensagens entre routers e não propagadas
¾ Suporta anuncio de rotas por routers sem RIP
z Campo next-hop router na mensagem
¾ Introduz o conceito de domínio RIP
RIP2 definido nos RFCs 1723 [1994](obsol.) e 2453 [1998]
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
21
Formato das Mensagens RIP v2
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
22
Formato das mensagens RIP v2 (2)
COMMAND - Tipo de Mensagem:
1 - Request (RQ) - Pedido de informação de tabela de routing (parcial ou total)
2 - Response (RP) - Resposta com informação de tabela de routing
VERSION - Versão do protocolo RIP - 2
ROUTING DOMAIN - Identificação da instância do protocolo de routing
ADDRESS FAMILY - Tipo de endereços propagados (2 para endereços IP)
ROUTE TAG - Para suporte a protocolos EGP (Ex. BGP) – Valor não alterado pelo RIP
IP ADDRESS - Endereço IP (tip. de rede) de destino
RQ - do qual se quer saber se um router pode encaminhar
RP - que o router informa que pode encaminhar
SUBNET MASK - Máscara de rede associada ao endereço IP de destino
NEXT-HOP IP ADDRESS - Router a quem deve ser dirigido um datagrama para o destino
anunciado
METRIC (RP) - Custo do caminho para o endereço de destino medido em número de
routers
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
23
Autenticação RIP v2 – Simple Password
As mensagens enviadas pelos routers levam na primeira
entrada de 20 bytes uma password em claro definida
pelo administrador da rede e que autentica o router
emissor perante os receptores.
Campos da mensagem
ADDRESS FAMILY = 0xFFFF
ROUTE TAG = Authentication Type = 2 - password simples
PASSWORD - 16 bytes que transportam uma password em claro
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
24
Uso do campo NEXT-HOP
Rede X1
R1
R2
R3
RIP v2
Rede X2
R8
R9
Outro
Apenas o R8 executa o protocolo RIP v2 e anuncia as rotas conhecidas por
ele e por R9 (aprendidas através de outro protocolo), indicando no campo
next-hop qual o router para onde devem ser encaminhados os pacotes para
cada destino
Ex.: para X1 o next-hop é R8 e para X2 é R9
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
26
Mensagens de RIP v2
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
27
Mensagens de RIP v2
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
28
Configuração de Router com RIP v2
interface loopback 0
ip address 33.1.1.9 255.255.255.255
!
interface atm 0/1:1.19 point-to-point
atm pvc 19 0 19 aal5snap 0 0 0
ip address 10.1.19.2 255.255.255.252
!
interface atm 0/1:1.29 point-to-point
atm pvc 29 0 29 aal5snap 0 0 0
ip address 10.1.29.2 255.255.255.252
!
interface FastEthernet 6/0
ip address 20.1.91.9 255.255.255.240
router rip
version 2
maximum-paths 1
network 10.1.19.0 255.255.255.252
network 10.1.29.0 255.255.255.252
network 20.1.91.0 255.255.255.240
redistribute connected
2003 ISEL - DEEC - RCD
Protocolos de encaminhamento
29
Download