A6. Protocols Sense Classe
torna M7 - UF3 Administració avançada de Xarxes
Protocols sense classe
RIP Versió 2
Característiques RIP v1:
- Protocol IGP (Interior Sistemes Autònoms, xarxes no massa grans)
- Vector distància. Coneix els veïns, però no la resta de la xarxa
- Mètrica de salts. (Màxim 15). Algoritme de mínim cost de Bellman-Ford
- Utilitza temporització d’espera 180 segons per evitar bucles.
- Implementa Horitzó dividit (També evita bucles). Split Horizon, Split Horizon with Poison Reverse.
- Actualitzacions automàtiques cada 30 segons. Envia la taula completa broadcast.
Limitacions
- No envia màscares
- No permet tractament de VLSM o CIDR
- No admet autenticació
Millores RIP v2:
- Transmet la màscara, i per tant permet VLSM i CIDR
- Permet transmetre text xifrat (MD5), autenticació.
- No envia broadcast sinó 224.0.0.9 (Classe D multicast) evitant que siguin processades per la resta de màquines que no usen RIP
- Utilitza 16 salts per indicar distància infinita (Xarxa no accessible)
Canvis a la topologia
RIP envia missatges de refresc cada T = 30 s. Té una temporització d’espera, si en 6*T = 180 s. no rep missatge del veí marca la ruta cap aquest com invàlida. (Mètrica = 16 salts).
Problema: Counting to infinite (comptatge a infinit). .
Es tracta d'un efecte ping-pong després d’una falla de xarxa, es creuen missatges fins que tots els Routers tenen distància infinita (16 salts).
Solucions: Split horizon i Poison Reverse
Horitzó dividit (Split horizon) consisteix en NO enviar informació a un Router de les rutes comunicades per aquest.
Enverinament invers (Poisson Reverse) consisteix en enviar les rutes anteriors però amb cost infinit (16 salts). Augmenta la mida dels missatges.
Triggered updates (Disparadors d’actualitzacions) és una tècnica que consisteix en enviar les taules tant aviat com es produeixi un canvi a la xarxa sense esperar els 30 segons. Millora la convergència.
Exercici Indica la informació que es comunicarien els Routers en els següents casos a) Sense split-horizon ni poisson reverse b) Split-horizon però sense poisson reverse c) Sense split-horizon. Hi ha poisson reverse i la xarxa 8.0 cau [[ Fitxer: exercicirip2.png ]]
OSPF
Característiques
- Protocol d’estat d’enllaç IGP. Millor que vector distància per a xarxes més complexes.
- Algoritme de la ruta més curta (Dijkstra).
- Mètrica de cost dels enllaços que reflexa la capacitat abstracta d’aquests. La pot definir l’administrador. Pot fer referència per exemple a l’ample de banda.
- Cada node manté una imatge de la xarxa (Limitada) completa. Les decisions d’enrutament són més fiables.
- Tècnica d’inundació (flooding). Envia informació per tots els ports excepte el d’entrada.
- No utilitza enviaments periòdics sinó només en cas de canvis a la topologia. Consumeix menys ample de banda.
- Codi obert. (Original RFC 1131).
- Millora la convergència del RIP però és més difícil de configurar i requereix més recursos (Memòria i CPU).
- Permet autentificació (MD5).
- Accepta adreçament sense classe.
Les xarxes OSPF es divideixen en àrees que són agrupacions lògiques de Routers que externament és veuen com una unitat. Redueix el tràfec donat que la topologia dins una àrea és desconeguda des de fora.
El nombre de Routers dins una àrea està limitat perquè els missatges LSA (Link State Advertisements) que inunden la xarxa impliquen l’actualització de taules i bases de dades.
Tipus d’àrees:
- Backbone: Nucli OSPF, Manté connexió física o lògica amb la resta d’àrees. Estructura jeràrquica. Sempre ha d’existir una. Els routers que connecten l’àrea backbone amb les altres àrees s’anomenen “area-border routers”. Totes les àreas han d'estar connectades a aquesta físicament o amb un enllaç virtual
- Transit: Àrees que permeten el trànsit entre d’altres àrees, per exemple per connectar (lògicament) l’àrea backbone i una stub (Topologia virtual)
- Stub: Només tenen un punt (ABR) de sortida, i no rep rutes externes, només rutes entre àrees. Per accedir a l’exterior cal especificar una ruta per defecte i tots els routers interns s'han de definir com a stub. Aquesta configuració permet reduir la mida de les taules de ruta.
- Altres: La resta d'àreas són normals
Els Routers que connecten àrees s’anomenen ABR (Area Border Routers).
- Un Router amb totes les interfaces a la mateixa àrea és un Router Intern.
- Un Router amb interfaces a múltiples àrees és un ABR.
- Un Router que fa de gateway entre OSPF i altres protocols d'enrutament (En el mateix AS o diferent, RIP, altres configuracions OSPF, etc..) s'anomena ASBR (autonomous system boundary router).
En les xarxes multiaccés (P.E. Ethernet) amb varis Routers per evitar que el procés d’inundació col·lapsi la xarxa es selecciona un dels Routers (DR, Router Designat) com a representant i la resta només envien els LSA en aquest, és aquest l’únic que fa la inundació. Això representa un únic punt de fallada i per tant també és selecciona un altre de recolzament (BDR)
En xarxes punt a punt no existeix aquest problema.
Exemple: Una única àrea multiaccés
Exemple: Vàries àrees multiaccés
Per accedir d’una àrea a una altre cal passar per la backbone.
Algoritme SPF (Shortest Path First)
Un enllaç fa referència a cadascuna de les interfases d’un Router, l’algoritme de Dijkstra treballa sobre un enllaç, creant un arbre on l’arrel és aquest, que permet calcular les millors rutes a la resta de xarxes per afegir-les a la taula.
Exemple
A la taula de ruta es manté tots els possibles destins des de tots els nodes, l’algoritme de Dijkstra consisteix en el següent:
- La xarxa és un conjunt de nodes connectats per enllaços punt a punt.
- Cada enllaç té un cost (Menor cost, millor camí).
- Cada node té un nom
- Cada node té una base de dades amb la informació de tots els enllaços (totes dins l’àrea són iguals).
Exemple
La base de dades d’enllaços és igual per a tots els nodes, indica cada node quins enllaços té i el cost.
Amb aquesta informació, cada node munta el seu arbre de rutes més curtes (Sense bucles i aquest a l’arrel)
A partir del node B s’indica com accedir a la resta de nodes, amb quin cost i a través d’on.
Més exemples de funcionament de l’algoritme:
http://www-b2.is.tokushima-u.ac.jp/~ikeda/suuri/dijkstra/Dijkstra.shtml
Selecció de rutes. Distància administrativa
La mètrica indica el cost de les rutes per un mateix algoritme de Routing: rutes estàtiques, RIP, OSPF ...
Però no serveix per comparar rutes de diferents algoritme perquè cadascun fa servir criteris diferents.
Alhora d'escollir entre vàries rutes al mateix destí cal poder decidir quina és la millor opció.
Per això s'estableix una prioritat entre els diferents protocols de Routing que s'anomena Distància administrativa.
Per exemple:
- 0 => Xarxes conectades
- 1 => Rutes estàtiques
- 110 => OSPF
- 120 => RIP
Aquest valor apareix a cada ruta al costat de la mètrica corresponent
Router#sh ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is not set
R 8.0.0.0/8 [120/1] via 200.200.200.3, 00:00:12, GigabitEthernet0/2
R 130.130.0.0/16 [120/2] via 200.200.200.2, 00:00:15, GigabitEthernet0/2
[120/2] via 200.200.200.3, 00:00:12, GigabitEthernet0/2
R 140.140.0.0/16 [120/2] via 200.200.200.2, 00:00:15, GigabitEthernet0/2
[120/2] via 200.200.200.3, 00:00:12, GigabitEthernet0/2
192.168.100.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.100.0/24 is directly connected, GigabitEthernet0/0
L 192.168.100.1/32 is directly connected, GigabitEthernet0/0
192.168.150.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.150.0/24 is directly connected, GigabitEthernet0/1
L 192.168.150.1/32 is directly connected, GigabitEthernet0/1
R 192.168.200.0/24 [120/1] via 200.200.200.2, 00:00:15, GigabitEthernet0/2
R 198.198.198.0/24 [120/1] via 200.200.200.3, 00:00:12, GigabitEthernet0/2
R 199.199.199.0/24 [120/1] via 200.200.200.2, 00:00:15, GigabitEthernet0/2
200.200.200.0/24 is variably subnetted, 2 subnets, 2 masks
C 200.200.200.0/24 is directly connected, GigabitEthernet0/2
L 200.200.200.1/32 is directly connected, GigabitEthernet0/2
Configuració i verificació (IOS Cisco)
Configuració RIP v2
El protocol RIP és molt senzill de configurar, només cal indicar-li la versió i les xarxes directament connectades al router (Xarxes que es vulgui propagar als veïns).
Per exemple si el Router té connectada la xarxa 100.50.0.0/16 i té una interfície local FastEthernet 0/0 per la que no volem enviar dades del protocol
Router(config)#router rip
Router(config-Router)#version 2
Router(config-router)#no auto-summary
Router(config-router)#passive-interface fa0/0
Router(config-Router)#network 100.50.0.0
Cal afegir totes les xarxes connectades.
La opció no auto-summary evita l'agrupament per subxarxes (Així mostra la taula de ruta amb les subxarxes correctament)
Les interfícies passives també es poden configurar de la següent manera, establir per defecte totes les interfícies com passives
Després desactivar la configuració a les interfícies que no siguin passives
Router(config)# router rip
Router(config-router)# passive-interface default
Router(config-router)# no passive-interface gigabitEthernet 0/1
Altres comandes per a una configuració més detallada permeten establir per exemple els valors dels comptadors i activar/desactivar la funcionalitat split horizon a la interfície gigabitEthernet 0/1.
Router(config)#interface gigabitEthernet 0/1
Router(config-if)#ip split-horizon
Router(config-if)#ex
Router(config)#router rip
Router(config-router)#timers basic update invalid holddown flush // ''timers basic 10 30 40 40''
Propagar el (Boundary) Router que té connexió amb l'exterior del sistema (Internet)
Router(config)#ip route 0.0.0.0 0.0.0.0 200.200.150.2
Router(config)#router rip
Router(config-router)#default-information originate
També es poden distribuir rutes estàtiques dels routers (Com rutes per defecte)
Router(config)#ip route 0.0.0.0 0.0.0.0 200.200.150.2
Router(config)#router rip
Router(config-router)#redistribute static [metric <0-16>]
Verificació RIP
Per configurar RIP v2 només cal indicar la versió del protocol. Les xarxes es marquen sense màscara igual que a la versió 1, aquesta s’agafa de la configuració de les interfases, els canvis interns però són múltiples.
Les següents comandes permeten comprovar els valors de la configuració de RIP v2.
Router#show ip protocol // Mostra temps espera 180 s. No PT
Router#show ip route rip
Router#show ip route
També hi ha una comanda que de depuració que mostra el contingut dels missatges rip.
Router#debug ip rip // Mostra els missatges rip
Router#no debug all // Desactiva depuració
Configuració OSPF d’una àrea
http://www.cisco.com/en/US/tech/tk365/technologies_white_paper09186a0080094e9e.shtml
http://www.cisco.com/en/US/docs/ios/12_0/np1/configuration/guide/1cospf.html
Cada Router es troba a una àrea, aquestes s’identifiquen per un nombre de 0 a 65.535.
Una de les àrees serà la 0 (backbone) i estarà connectada a la resta. Aquesta àrea és obligatòria.
Les adreces de xarxa es configuren amb màscares wildcard.
Per exemple si el Router té connectada la xarxa 100.50.0.0/16 a l'àrea 0 seria, i la interfície fa0/0 connecta una xarxa local i per tant és passiva
Router(config)#router ospf 1 // process-id 1
Router(config-router)#passive-interface fa0/0
Router(config-router)#network 100.50.0.0 0.0.255.255 area 0
Caldria repetir el procés per totes les xarxes connectades al Router
Router ID i Interface Loopback
Cada Router OSPF té una ID que correspon a la interfase amb IP més alta, si no existeix o es desactiva OSPF no funciona.
Per la estabilitat de OSPF cal configurar un ID diferent a cada dispositiu
Router(config)#router ospf 1
Router(config-router)#router-id 1.1.1.1
Router(config-router)#
També es pot configurar una interface loopback (Lògica) i obligar a que aquesta identifiqui el Router.
Router(config)#interface loopback 0
Router(config-if)#ip address 1.1.1.1 255.255.255.0
Mètrica
Cisco calcula el cost com 10^8/ample de banda (Més cost per a rutes més lentes), però l’administrador pot assignar el valor que cregui a cada ruta.
Router(config)#interface serial 0/0
Router(config-if)#bandwidth 56 // Cisco
Router(config-if)#ip ospf cost number //General
Autentificació
Exemple autenticació simple
Router(config)#router ospf 1
Router(config-router)#area area-number authentication // Activa autenticació
Router(config-router)#ex
Router(config)#interface fa0/0
Router(config-if)#ip ospf authentication-key password // Clau compartida entre Routers
En el cas anterior la clau viatja en text pla. Es pot configurar per a encriptar-la.
Exemple autenticació xifrada
Router(config)#router ospf 1
Router(config-router)#area area-id authentication message-digest // Activa autenticació xifrda
Router(config-router)#ex
Router(config)#interface fa0/0
Router(config-if)#ip ospf message-digest-key key-id md5 key // Key-id [1-255] i Key fins a 16 caràcters
Amb el missatge i la clau es genera un message-digest que es comprova per veure si s’ha modificat el paquet.
Temporitzadors
Es pot configurar per exemple a nivell d'interfície cada quants segons s'envien les comunicacions hello i temps d'espera que cal esperar sense rebre una comunicació hello abans de decidir que el veí està caigut, o dit d'altre manera si es supera el dead-interval sense rebre un hello el Router (veí) es declara caigut.
Router(config)#interface fa0/0
Router(config-if)#ip ospf hello-interval seconds
Router(config-if)#ip ospf dead-interval seconds
Per defecte la relació hauria de ser 10/40, i totes les interfícies dels Routers han de tenir el mateixos intervals.
Propagació d’una ruta per defecte
Sortida per als paquets amb destí inexistent a la taula de ruta, cal especificar-ne una per les xarxes fora del domini OSPF. S’indica al Router que connecta amb l’exterior i es propaga als altres.
S’anomena ruta quad-zero.
Router(config)#ip route 0.0.0.0 0.0.0.0 192.168.1.3
Router(config)#router ospf 1
Router(config-router)#default-information originate // Propaga la ruta als altres
Verificació OSPF
Exemple de comandes per a verificar OSPF
A la taula de ruta
- Rutes internes a una àrea (Marcades O a la taula de ruta)
- Rutes entre àrees (Marcades O IA a la taula de ruta)
- Rutes externes (Injectades des de fora del sistema, marcades amb O EX a la taula de ruta)
Router#show ip protocols
Router#show ip route [ospf]
Router#show ip ospf interface // Info. Designats DR, i BackUp BDR
Router#show ip ospf //Nombre de vegades executat SPF
Router#show ip ospf neighbor detail // Informació veïns
Router#show ip ospf database // bbdd topològica
Redistribució de rutes
router ospf 1
router-id 1.1.1.1
log-adjacency-changes
area 0 authentication
redistribute rip subnets
network 200.200.30.0 0.0.0.255 area 0
network 192.168.1.0 0.0.0.255 area 1
!
router rip
version 2
redistribute ospf 1 metric 3
network 150.150.0.0
no auto-summary
!
Routing IPv6
RIPng IPv6
Per la comunicació entre Routers RIPng fa servir l'adreça multicast FF02::9 (Fa referència a tots els Routers RIP).
Activar l'encaminament IPv6
Router(config)#ipv6 unicast-routing
Iniciar el procés RIP per IPv6. Cal indicar un nom pel procés, p.e. RIPNG.
Router(config)#ipv6 router rip RIPNG
Router(config-rtr)#
Indicar les interfícies que participaran del Routing. Xarxes que cal publicar al protocol.
Router(config)#interface fastEthernet 0/0
Router(config-if)#ipv6 rip RIPNG enable
No permet configurar les interfícies passive, en canvi es pot simular aquest comportament deixant les interfícies locals sense activar el RIPng i fent la redistribució d'aquestes xarxes
Router(config)#ipv6 router rip RIPNG
Router(config-rtr)#redistribute connect
Consultar la taula de ruta per IPv6
Router#show ipv6 route
Altres consultes i verificacions
Router#show ipv6protocols
Router#show ipv6 rip database
Router#show ipv6 rip process name
OSPF v3
Activar l'encaminament IPv6
Router(config)#ipv6 unicast-routing
Iniciar el procés OSPF per IPv6. Cal indicar un número de procés, p.e. 1. També configurar el Router-ID. Opcionalment es poden indicar les interfícies passives.
Router(config)#ipv6 router ospf 1
Router(config-rtr)#router-id 1.1.1.1
Router(config-rtr)#passive-interface fastEthernet 0/0
Indicar les interfícies que participaran del Routing i a quina àrea es troben. Xarxes que cal publicar al protocol.
Router(config)#interface fastEthernet 0/0
Router(config-if)#ipv6 ospf 1 area 0
Consultar la taula de ruta per IPv6
Router#show ipv6 route
Altres consultes i verificacions
Router#show ipv6 route [ospf]
Router#show ipv6 protocols
Router#show ipv6 ospf neighbor
Router#show ipv6 ospf interface
Router#show ipv6 ospf interface g0/0