JuanJo Ciarlante
jjo−lug−
[email protected]
Tabla de contenidos
Mendoza−Wireless OSPF HOWTO
1. OSPF: Introducción
1.1. OSPF: Características
1.2. OSPF: Modo de operación
2. Zebra
2.1. Instalación
2.2. Configuración
2.3. Arranque
3. Diagnóstico y administración
3.1. Diagnóstico
3.2. Administración de zebra
4. Problemas frecuentes
5. Seguridad
6. Referencias
Glosario
Motivación
Mendoza−Wireless OSPF HOWTO
($Id: OSPF−HOWTO.sgml,v 1.10 2003/02/04 18:13:05 jjo Exp
$)
Describe, en forma práctica, como configurar el dæmon de routeo zebra para permitir auto distribución de
información de routing.
Tabla de contenidos
1. OSPF: Introducción
1.1. OSPF: Características
1.2. OSPF: Modo de operación
2. Zebra
2.1. Instalación
2.1.1. Debian
2.1.2. RedHat
2.1.3. Mandrake
2.2. Configuración
2.3. Arranque
3. Diagnóstico y administración
3.1. Diagnóstico
3.1.1. Procesos
3.1.2. Paquetes OSPF en la red
Mendoza−Wireless OSPF HOWTO
1
3.2. Administración de zebra
3.2.1. Sesión de ejemplo
4. Problemas frecuentes
5. Seguridad
6. Referencias
Glosario
($Id: OSPF−HOWTO.sgml,v 1.10 2003/02/04 18:13:05 jjo Exp $)
Describe, en forma práctica, como configurar el dæmon de routeo zebra para permitir auto
distribución de información de routing.
1. OSPF: Introducción
Este documento NO pretende ser un tratado sobre protocolos de routing, ni siquiera para el caso
concreto de OSPF; pero puede servirte de guía para comenzar.
1.1. OSPF: Características
OSPF es uno de los protocolos más utilizados para routing "interior" (es decir, dentro de TU ámbito
administrativo), siendo RIP (version 1 y 2) el otro más popular
Tiene como características principales:
OSPF es "Open Shortest Path First"
Abierto (RFC 2328)
Cada router OSPF hace flooding de estado de links (interfaces) a toda una área dentro de la red a
través de LSAs
Existe un área especial, el área 0 ó backbone que sirve de unión entre el resto de las áreas "regulares"
•
•
•
•
•
Rápida convergencia (aprendizaje de cambios)
1.2. OSPF: Modo de operación
Se suele decir que los routers OSPF "hacen conocer a la red el estado de sus interfaces ", a diferencia por ej.,
de RIP que hace conocer en una interface lo que ha aprendido de la red (vía otras interfaces).
Para lograr minimizar el flooding, OSPF "divide" la red en "áreas":
•
1. OSPF: Introducción
2
Cada área se degina con un Area−IDúnico dentro del dominio AS
•
•
•
•
•
Existe un área especial: el área 0 que es el backbone: todas las áreas DEBEN contactar al área 0
directamente a través de (al menos) un router, el ABR.
El flooding de información de link−state (a través de LSAs solamente se realiza DENTRO de un área
ABR sumariza la información de routing de su área al backbone
En cada segmento de red OSPF designa dos routers para "centralizar" la información de routing: DR
(designated router) y Backup DR; con los cuales se "comunican" el resto de los routers dentro del
segmento (establecen ¨adyacencias")
Para establecer las "adyacencias¨ OSPF usa multicast (para los medios que lo permiten) ó unicast
(para los punto−a−punto)
2. Zebra
2.1. Instalación
2.1.1. Debian
bash # apt−get install zebra
2.1.2. RedHat
bash # up2date −u zebra
Debe haberse configurado previamente el up2date/rhn_register
2.1.3. Mandrake
bash # urpmi zebra
2.2. Configuración
Ver Sección 5
•
Copiar el siguiente ejemplo de configuración en /etc/zebra/ospfd.conf
! −*− ospf −*−
!
! OSPFd sample configuration file
! para mendoza−wireless
2. Zebra
3
!
! Editame y cambia' el nro 14 (aparece 3 veces: router−id, net y area)
! por _TU_ nro de estacion.
!
!
hostname ospfd
!password [passwd]
!enable password [passwd]
!
!
interface wlan0
ip ospf message−digest−key 1 md5 PONEME_UNA_CLAVE
ip ospf authentication message−digest
router ospf
router−id 10.55.0.14
network 10.55.0.0/24 area 0
network 10.55.14.0/24 area 14
redistribute kernel
redistribute connected
distribute−list net−10−55−0−0 out connected
distribute−list net−10−55−0−0 out kernel
area 0 authentication message−digest
!
!access−list net−10−0−0−0 permit 10.0.0.0/8
!access−list net−10−0−0−0 deny any
access−list net−10−55−0−0 permit 10.55.0.0/16
access−list net−10−55−0−0 deny any
!
! Solamente permitir las siguientes rutas
!
route−map just−10−55−0−0 permit 10
match ip address net−10−55−0−0
!
! log stdout
log file /var/log/zebra/ospfd.log
•
Activar el arranque de zebra y ospfd
Debian
Editar /etc/zebra/daemons y poner zebra=yes y ospfd=yes
2.3. Arranque
Arrancarlo con
bash # /etc/init.d/zebra start
Starting Zebra daemons (prio:10): zebra2002/12/12 12:16:00 ZEBRA: can't create router advertisement socket: Address family not supported by protocol
ospfd.
el mensaje Address family not supported by protocol es, en este caso, porque no tener habilitado IPv6.
Tu distro probablemente lo haya dejado listo para arrancar automáticamente el próximo booteo.
2.3. Arranque
4
3. Diagnóstico y administración
3.1. Diagnóstico
3.1.1. Procesos
La arquitectura de zebra se basa en un proceso "maestro" más 1 proceso por protocolo de routing
Por lo tanto, para ésta configuración existirán los siguientes procesos
bash # ps ax
:
233 ? S 0:00 /usr/sbin/zebra −d
243 ? S 0:00 /usr/sbin/ospfd −d
:
3.1.2. Paquetes OSPF en la red
También se pueden "observar" con tcpdump la actividad OSPF en la interfaz para comprobar que nuestro
router está "hablando" OSPF con sus vecinos.
bash # tcpdump −n −i wlan0 proto ospf
:
11:38:29.491799 10.55.0.33 > 224.0.0.5: OSPFv2−hello 56: backbone dr 10.55.0.100 bdr 10.55.0.33 [ttl 1]
11:38:29.540651 10.55.0.14 > 224.0.0.5: OSPFv2−hello 56: backbone dr 10.55.0.100 bdr 10.55.0.33 [ttl 1]
11:38:29.541131 10.55.0.7 > 224.0.0.5: OSPFv2−hello 56: backbone dr 10.55.0.100 bdr 10.55.0.33 [ttl 1]
11:38:38.529552 10.55.0.100 > 224.0.0.5: OSPFv2−hello 56: backbone dr 10.55.0.100 bdr 10.55.0.33 [ttl 1]
:
Nuestra dirección IP debería aparecer allí.
3.2. Administración de zebra
Zebra tiene una interfaz de administración muy similar a cisco, se puede administrar localmente ó
remotamente.
3.2.1. Sesión de ejemplo
Existe un "shell" de administración local: vtysh, el cual se conecta al proceso zebra para propósitos
administrativos.
Una sesión de ejemplo:
bash # vtysh
Hello, this is zebra (version 0.92a).
Copyright 1996−2001 Kunihiro Ishiguro.
localhost> sh ip ro
Codes: K − kernel route, C − connected, S − static, R − RIP, O − OSPF,
B − BGP, > − selected route, * − FIB route
K>* 0.0.0.0/0 via A.B.C.D, ppp0
O 10.55.0.0/24 [110/10] is directly connected, wlan0, 00:10:27
C>* 10.55.0.0/24 is directly connected, wlan0
O 10.55.14.0/24 [110/10] is directly connected, eth0, 03:48:32
C>* 10.55.14.0/24 is directly connected, eth0
3. Diagnóstico y administración
5
C>* 127.0.0.0/8 is directly connected, lo
localhost> sh ip o in
lo is up, line protocol is up
OSPF not enabled on this interface
eth0 is up, line protocol is up
Internet Address 10.55.14.254/24, Area (0.0.0.14)
Router ID 10.55.0.14, Network Type BROADCAST, Cost: 10
Transmit Delay is 1 sec, State DR, Priority 1
Designated Router (ID) 10.55.0.14, Interface Address 10.55.14.254
No backup designated router on this network
Timer intarvals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:06
Neighbor Count is 0, Adjacent neighbor count is 0
tun0 is up, line protocol is up
OSPF not enabled on this interface
tun1 is up, line protocol is up
OSPF not enabled on this interface
wlan0 is up, line protocol is up
Internet Address 10.55.0.14/24, Area (0.0.0.0)
Router ID 10.55.0.14, Network Type BROADCAST, Cost: 10
Transmit Delay is 1 sec, State DROther, Priority 1
Designated Router (ID) 10.55.0.100, Interface Address 10.55.0.100
Backup Designated Router (ID) 10.55.0.33, Interface Address 10.55.0.33
Timer intarvals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:09
Neighbor Count is 3, Adjacent neighbor count is 2
localhost> sh ip o ne
Neighbor ID Pri State Dead Time Address Interface RXmtL RqstL DBsmL
10.55.0.7 1 2−Way/DROther 00:00:35 10.55.0.7 wlan0:10.55.0.14 0 0 0
10.55.0.33 1 Full/Backup 00:00:33 10.55.0.33 wlan0:10.55.0.14 0 0 0
10.55.0.100 1 Full/DR 00:00:36 10.55.0.100 wlan0:10.55.0.14 0 0 0
localhost> sh ip o ro
============ OSPF network routing table ============
N 10.55.0.0/24 [10] area: (0.0.0.0)
directly attached to wlan0
N IA 10.55.7.0/24 [20] area: (0.0.0.0)
via 10.55.0.7, wlan0
N 10.55.14.0/24 [10] area: (0.0.0.14)
directly attached to eth0
N IA 10.55.33.0/24 [20] area: (0.0.0.0)
via 10.55.0.33, wlan0
N IA 10.55.100.0/24 [20] area: (0.0.0.0)
via 10.55.0.100, wlan0
============ OSPF router routing table =============
R 10.55.0.7 [10] area: (0.0.0.0), ABR, ASBR
via 10.55.0.7, wlan0
R 10.55.0.33 [10] area: (0.0.0.0), ABR, ASBR
via 10.55.0.33, wlan0
R 10.55.0.100 [10] area: (0.0.0.0), ABR, ASBR
via 10.55.0.100, wlan0
============ OSPF external routing table ===========
La mayoría de las referencias de arriba corresponden a abreviaciones de los siguientes comandos
(1)show ip routes : muestra un resumen todas las rutas (independiente de OSPF). Las rutas
efectivamente instaladas en el kernel (FIB) aparecen con un "*"
3. Diagnóstico y administración
6
(2)show ip ospf interfaces : muestra el estado de OSPF respecto de las interfaces
(3)show ip ospf neighbours : muestra los "vecinos OSPF" encontrados. Deberían aparecer
todos los routers que corren OSPF en el/los links.
(4)show ip o
Comentarios de: OSPF HOWTO (0)
No hay comentarios