В данной статье пойдёт речь о настройке протокола динамической маршрутизации OSPF. Протокол разработан с целью упростить жизнь сетевым/системным администраторам, которые работают с большим количеством подсетей.
Рассмотрим пример. У вас есть двухэтажное здание, на каждом этаже есть две части помещений, каждая часть использует свою подсеть, маршрутизаторы расположены следующим образом:
Увеличить рисунок
RouterA и RouterC обслуживают сотрудников первого этажа, RouterB и RouterD - второго этажа. Связь между первым и вторым этажом осуществляется через маршрутизаторы RouterA и RouterB. Перед вами стоит задача – настроить динамическую маршрутизацию на каждом маршрутизаторе, чтобы не вносить маршруты подсетей на всех устройствах.
Предварительные условия
Предполагается что все устройства с заводскими установками. Используя приведённые ниже примеры, модифицируйте параметры сетевых интерфейсов под своё окружение (переходите к секции Настройка OSPF). Прежде чем использовать данные из статьи, сделайте резервную копию всех маршрутизаторов.
Первоначальные настройки устройств
Все действия выполняйте в привилегированном режиме.
RouterA
! Заходим в режим конфигурирования
Router# conf t
! Присваиваем имя маршрутизатору
Router(config)#hostname RouterA
! Смотрим доступные интерфейсы
RouterA(config)#do sh ip int bri
Interface IP-Address OK? Method Status Protocol
FastEthernet0/0 unassigned YES unset administratively down down
FastEthernet0/1 unassigned YES unset administratively down down
Vlan1 unassigned YES unset administratively down down
! Настраиваем интерфейс который «смотрит» на RoutrB
RouterA(config)#int fa 0/0
! Задаём описание интерфейсу
RouterA(config-if)#description RouterA to RouterB
! Задаём ip адрес
RouterA(config-if)#ip addr 192.168.1.1 255.255.255.0
! Если интерфейс был выключен (administratively down), включаем его
RouterA(config-if)#no shut
! Настраиваем интерфейс, сосед у которого RouterC
RouterA(config-if)#int fa 0/1
RouterA(config-if)#descr RouterA to RouterC
RouterA(config-if)#ip addr 192.168.3.1 255.255.255.0
RouterA(config-if)#no shut ! Настройка OSPF
! Первой командой будет включение процесса на маршрутизаторе
! Где команда router ospf – включение процесса OSPF на маршрутизаторе
! а 1111 – произвольное id данного процесса
RouterA(config)#router ospf 1111
! Задаём подсети, которые будут участвовать в процессе OSPF
! командой network
! хочу обратить ваше внимание на то, что после подсети нужно указать её wildcard маску
! а в самом конце командой area зону действия OSPF
RouterA(config-router)#network 192.168.1.0 0.0.0.255 area 0
RouterA(config-router)#network 192.168.3.0 0.0.0.255 area 0
Как вы, наверное, уже успели заметить, для маршрутизатора RouterA в процессе OSPF мы задали две подсети:
- 192.168.1.0 – подсеть, за которую отвечает маршрутизатор RouterA
- 192.168.3.0 – подсеть соседа (neighbour) за которую отвечает маршрутизатор RouterC
Данные подсети маршрутизатор RouterA в дальнейшем будет транслировать своим следующим соседям, в нашем случае это RouterB.
Настраиваем по аналогии остальные маршрутизаторы.
RouterB
Router#conf t
Router(config)#hostname RouterB
RouterB(config)#int fa 0/0
RouterB(config-if)#ip addr 192.168.1.2
255.255.255.0
RouterB(config-if)#no shut
RouterB(config-if)#int fa 0/1
RouterB(config-if)#ip addr 192.168.4.2
255.255.255.0
RouterB(config-if)#no shut
RouterB(config)#router ospf 2222
RouterB(config-router)#network 192.168.1.0
0.0.0.255 area 0
RouterB(config-router)#network 192.168.4.0
0.0.0.255 area 0
RouterC
Router#conf t
Router(config)#hostname RouterC
RouterC(config)#int fa 0/0
RouterC(config-if)#ip addr 192.168.3.3
255.255.255.0
RouterC(config-if)#no shut
RouterC(config)#router ospf 3333
RouterC(config-router)#network 192.168.3.0
0.0.0.255 area 0
RouterD
Router#conf t
Router(config)#hostname RouterD
RouterD(config)#int fa 0/0
RouterD(config-if)#ip addr 192.168.3.3
255.255.255.0
RouterD(config-if)#no shut
RouterD(config)#router ospf 4444
RouterD(config-router)#network 192.168.4.0
0.0.0.255 area 0
После настройки маршрутизатора RouterD должно появиться сообщение о том, что процесс OSPF загрузил таблицу маршрутизации. Пример:
00:38:13: %OSPF-5-ADJCHG: Process 4444,
Nbr 192.168.4.2 on FastEthernet0/0 from LOADING to FULL, Loading Done
Проверка
Для проверки необходимо посмотреть таблицу маршрутизации на конечных устройствах. В нашем случае RouterD должен знать маршрут до RouterC и наоборот.
RouterD#sh ip route
Codes: C - connected, S - static, I - IGRP, 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
O 192.168.1.0/24 [110/2] via 192.168.4.2, 00:12:14, FastEthernet0/0
O 192.168.3.0/24 [110/3] via 192.168.4.2, 00:00:02, FastEthernet0/0
C 192.168.4.0/24 is directly connected, FastEthernet0/0
RouterC#sh ip route
O 192.168.1.0/24 [110/2] via 192.168.3.1, 00:00:50, FastEthernet0/0
C 192.168.3.0/24 is directly connected, FastEthernet0/0
O 192.168.4.0/24 [110/3] via 192.168.3.1, 00:00:39, FastEthernet0/0
Так же они должны связываться друг с другом.
RouterD#ping 192.168.3.3
Sending 5, 100-byte ICMP Echos to 192.168.3.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 60/60/60 ms
RouterC#ping 192.168.4.4
Sending 5, 100-byte ICMP Echos to 192.168.4.4, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 50/60/70 ms
Полезные команды
Команда, которая отображает интерфейсы соседних маршрутизаторов:
RouterB#sh cdp neighbors
Capability Codes: R - Router, T - Trans
Bridge, B - Source Route Bridge
S - Switch, H - Host, I
- IGMP, r - Repeater, P - Phone
Device ID Local Intrfce Holdtme Capability
Platform Port ID
RouterA Fas 0/0
174 R C1841 Fas 0/0
RouterD Fas 0/1
166 R C1841 Fas 0/0
Команда, которая показывает соседей по OSPF:
RouterB#sh ip ospf neighbor
Neighbor ID Pri State Dead
Time Address Interface
192.168.4.4 1 FULL/DR 00:00:33
192.168.4.4 FastEthernet0/1
Поддержка OSPF в Microsoft Windows
Начиная с Microsoft Windows 2008 поддержка протокола OSPF была прекращена. Причины для этого достаточно просты – лицензии на сервер значительно дороже сетевого оборудования и задачи у операционной системы несколько иные.
Внешние ссылки
Информацию на русском языке о протоколе OSPF вы можете найти на этой странице сайта Cisco.