Lab 2

Anuncio
Enrutamiento dinámico
Introducción
• Las tablas de rutas se rellenan de forma
automática, gracias a un protocolo de
enrutamiento. Suele aplicarse en routers.
• Un protocolo de enrutamiento define el conjunto
de reglas utilizadas por un router cuando se
comunica con otro router para resolver este
problema:
–
–
–
–
¿Cómo se envían las actualizaciones?.
¿Qué información se incluye en la actualización?.
¿Cada cuánto se envía?.
¿Quiénes
son
los
receptores
de
las
actualizaciones?.
– ¿Qué algoritmo de enrutamiento se utiliza para
determinar la mejor ruta?.
Sistemas autónomos
RFC1930: Un grupo de prefijos de red de uno o
varios ISP en el que existe una política de
rutado única y claramente definida.
• Dentro de cada AS se
utilizan protocolos de
routing interiores o IGP.
• Entre cada AS se usarán
protocolos de routig
exteriores o EGP.
• IGP: RIP, OSPF...
• EGP: BGP
Cada AS “publicará” los
prefijos de las redes a través
de un EGP. Esa información
será utilizada por otros AS
para
garantizar
la
conectividad con esos prefijos
de red.
Componentes de un
algoritmo de enrutamiento
• Un proceso enviar y recibir información
sobre redes alcanzables a/de otros
routers
• Un proceso para calcular rutas óptimas:
– Dada una red a la que se le asigna un coste
a cada enlace, encontrar el camino más
corto entre dos redes con el mínimo
coste.
• Un proceso para reaccionar y avisar de
cambios en la topología.
Cálculo del camino más corto
• Vector distancia (Bellman-Ford):
–
–
–
Cada router conoce la distancia (=coste) de sus vecinos
directamente conectados
Un router envía una lista de actualizaciones de
enrutamiento a sus vecinos que contendrá las redes
alcanzables por él y su distancia.
Si
todos
los
routers
actualizan
las
redes
alcanzables/distancias con la información recibida de sus
vecinos, entonces, la red convergerá.
• Estado del Enlace (Dijkstra)
–
–
–
–
Cada router conoce la distancia a sus vecinos directamente
conectados.
La información de distancia, conocida como estado del
enlace (LS, Link State) es enviada por broadcast a
todos los routers en la red.
Todos los routers construyen la topología de la red.
Cada router calcula el camino más corto a todas las redes
alcanzables de manera independiente.
Vector distancia
• Cada router conoce:
– Su identificador
– Sus interfaces
– La distancia hasta el siguiente router de
cada interfaz
• Cada router construye su TE, que le indica
por que interfaz enviar los paquetes para
cada destino.
• Para ello intercambia con sus vecinos,
actualizaciones
de
enrutamiento,
conocidas como vectores distancia, que
indican la distancia a cada destino
Vector distancia
Distribución vector distancia
Características vector distancia
• Actualizaciones Periódicas: Cada cierto tiempo se
envía una actualización de enrutamiento. Un valor
típico es de 90 segundo.
• Actualizaciones por cambios: Si hay un cambio en la
métrica de un enlace, un router enviará sin esperar
más.
• Actualizaciones de toda la TE: La mayoría de los
protocolos que usan vector distancia envían toda la
tabla de enrutamiento a sus vecinos en sus
actualizaciones.
• Temporizadores para invalidar rutas: Las entradas en
la tabla de enrutamiento se invalidan si no son
refrescadas. Un valor típico de invalidación de una
entrada es no haber sido actualizada entre 3-16
veces periodo de actualización.
Problema de la Cuenta a infinito
Cuenta a infinito
• La razón de este problema es que cada nodo
sólo tiene la visión del “Próximo salto”.
• En el ejemplo, C no sabe que aprendió cómo
alcanzar A a través de B y B no sabe que él
informó a C de cómo alcanzar a A.
• ¿Cómo se puede resolver?
– Nunca enviar una actualización de una ruta a
un vecino si éste es el próximo salto (Split
Horizon).
– En el ejemplo: C no enviará información de
como alcanzar a A en sus actualizaciones y B
dejará de informar como alcanzar a A después
de que expire el temporizador de invalidación
de ruta.
RIP (Routing Information Protocol)
• RIPv1 definido en la RFC 1058 (versión 1, 1988).
• Sufre los problemas típicos del vector distancia
(cuenta a infinito), aunque hay formas de
solucionarlo.
• Solo útil en redes pequeñas (5-10 routers)
• Métrica basada en número de saltos únicamente.
• Máximo 15 saltos. Infinito 16.
• La información se intercambia cada 30 segundos.
• No permite usar múltiples rutas simultáneamente.
• Disponible en máquinas UNIX (routed)
Mensajes RIP
• Los mensajes RIP se encapsulan en datagramas UDP
en el puerto 520.
– Dirección destino broadcast dirigido.
– Sólo procesa actualización si el origen pertenece a la
red de la interfaz.
• En un mensaje RIP pueden enviarse hasta 25
entradas del vector de distancias.
– Para transportar vectores grandes se utilizan varios
mensajes.
– Una entrada de la tabla de enrutamiento se vuelve
inválida si pasan 180 segundos (hold-down timer)
sin que sea actualizada, no obstante se puede
configurar.
• No introduce la máscara de red en sus mensajes por
lo que no soporta direccionamiento sin clase.
• No soporta autenticación ni cifrado.
RIP Formato Mensajes
RIPv2 (versión 2)
•
•
•
RIPv2 (1998, RFC 2453) Los mensajes incluyen:
– Dirección.
– Máscara de subred, permite CIDR.
– Siguiente salto.
– Métrica
– Las actualizaciones se envían por multicast a la dirección 224.0.0.9.
Además incluye un método de autenticación, para aumentar la seguridad
de la red.
Funcionamiento general:
– Inicialización: Enviar una petición a través de todas las interfaces.
– Al recibir una petición de un vecino: envían su TE en una respuesta.
– Al recibir una respuesta: Actualiza su tabla de enrutamiento.
– Se realizan actualizaciones cada 30s.
– Actualizaciones por cambios: Siempre
– En conclusión, RIPv1 no debe usarse hoy día. RIPv2 se puede usar
cuando la escalabilidad no sea importante y sí el tener algo ligero.
RIPng (versión 3)
•
RIPng (Next Generation), RFC-2080:
– Incorpora soporte IPv6.
– No es compatible con RIPv1, solo con RIPv2.
– Poco extendido todavía...
Configuración RIP (v1 y v2)
•
Para activarlo en un router basta con usar:
•
R1(config)# route rip
•
A continuación la versión a usar:
•
•
R1(config-route)# version 1
Y después introducir varios comandos “network”:
●
•
R1(config-route)# network 192.168.1.0
•
R1(config-route)# network 192.168.2.0
Eso activa RIP en las interfaces de red de R1
configuradas en esas 2 redes y además serán
las 2 redes que anunciemos inicialmente
a nuestros vecinos.
Interfaces pasivos
•
Podemos declarar un interfaz pasivo, de forma que
no se envíen mensaje RIP por esa interfaz, por
ejemplo para evitar tráfico innecesario en esas redes.
•
Ejemplo:
●
R1(config)# route rip
●
R1(config-route)# passive-interface Fa0/0
Verificación RIP
•
En la tabla de enrutamiento salen las
entradas aprendidas (con una R delante):
•
R1# show ip route
o
•
•
R1# show ip route rip
Podemos usar:
•
R1# debug ip rip
para activar la depuración por consola: R1
escribirá un mensaje en consola cada vez
que envíe o reciba una actualización.
●
R1# undebug all
para desactivar todos los mensajes
de depuración activos.
Descargar