Ви ознайомилися з теорією протоколу OSPF і готові до його налаштуванні. Ну що ж, поїхали.
Подивимося на наступну схему мережі. Що мається:
- 3 шт. catalyst 3560G з активним з'єднанням маршрутизації
- маршрутизатор А пов'язує нашу мережу з мережею Інтернет
- до маршрутизаторів Б і В підключені клієнти, що знаходяться в 200-ом Вланєв і IP-подсетях 10.0.1.0/24 і 10.0.2.0/24
- у маршрутизаторів Б і В зазначений статичний маршрут до default gateway (маршрутизатор А, 10.0.255.1)
Схема мережі до включення OSPF
В даній схемі OSPF начебто зовсім ні до чого. Можна його звичайно запустити, але плюсів він особливо не принесе. А тепер зробимо наступне: з'єднаємо маршрутизатори Б і В між собою. У такій схемі, можна як мінімум забезпечити резервування лінків від маршрутизатора Б до А і від В до А, а також швидко заводити нові підмережі і поширити маршрути до них в нашій мережі - динамічна маршрутизація (в даному випадку OSPF) нам в цьому допоможе.
Отже отримана схема, на якій, як мені здається, ви зможете зрозуміти / подивитися принципи роботи OSPF, яку ми і будемо налаштовувати:
Ми розглянемо роботу OSPF в broadcast середовищі і на point-to-point з'єднанні.
маршрутизатор А
Switch> enable
Switch # configure terminal
Switch (config) # vlan 10
Switch (config-vlan) # name main
Switch (config-vlan) # exit
Switch (config) # int vlan 10
Switch (config-if) # ip address 10.0.255.1 255.255.255.248
Явно вкажемо тип середовища, в якому буде працювати цей інтерфейс в OSPF:
Switch (config-if) # ip ospf network broadcast
Switch (config-if) # exit
Switch (config) # ip routing
Switch (config) # ip subnet-zero
Switch (config) # ip classless
Переходимо до налаштування OSPF. номер процесу у нас буде 10:
Switch (config) # router ospf 10
Switch (config-router) # log-adjacency-changes
Задамо RID 255.255.255.255, для того щоб даний маршрутизатор при виборах DR і BDR завжди вибирався як DR (у кого більший router-id той і переможе у виборах за місце DR в мережі якщо у всіх маршрутизаторів однаковий пріоритет), а так же потім буде легко його визначати (у висновках show команд) за цим номером RID як «верхній» маршрутизатор:
Switch (config-router) # router-id 255.255.255.255
Включимо протокол OSPF на інтерфейсі vlan 10 в Area 0:
Switch (config-router) # network 10.0.255.0 0.0.0.7 area 0
Команда network означає, що маршрутизатор включить протокол OSPF на тих IP інтерфейси, які потрапляють під зазначену маску підмережі.
Зазначимо що ми хочемо поширювати default маршрут в мережу OSPF. тобто даний маршрутизатор буде поширювати маршрут за замовчуванням:
Switch (config-router) # default-information originate
Switch (config-router) # exit
Switch (config) # exit
Switch # wri
маршрутизатор Б
Створимо ВЛАН 10, в якому «живуть» маршрутизатори А і В:
Switch> enable
Switch # configure terminal
Switch (config) # vlan 10
Switch (config-vlan) # name main
Створимо ВЛАН 200, в якому «живуть» клієнти:
Switch (config-vlan) # vlan 200
Switch (config-vlan) # name clients
Switch (config-vlan) # exit
Switch (config) # int vlan 10
Switch (config-if) # ip address 10.0.255.2 255.255.255.248
Switch (config-if) # ip ospf network broadcast
Switch (config-if) # int vlan 200
Switch (config-if) # ip address 10.0.1.1 255.255.255.0
Switch (config-if) # exit
Створимо ВЛАН 100, в по якому будуть обмінюватися маршрутизатори Б і В
Switch (config) # vlan 100
Switch (config-vlan) # name backup
Switch (config-vlan) # exit
Switch (config) # int vlan 100
Switch (config-if) # ip address 10.0.255.9 255.255.255.252
Явно вкажемо тип середовища, в якому буде працювати цей інтерфейс в OSPF. але не такий як на маршрутизаторі А, тому що між маршрутизаторами Б і В явно виражене p2p з'єднання і немає сенсу проводити вибори DR і BDR на p2p лінк, там завжди буде тільки два маршрутизатора: Б і В.
Позбавимо протокол OSPF від цієї необхідності:
Switch (config-if) # ip ospf network point-to-point
Switch (config-if) # exit
Switch (config) # ip routing
Switch (config) # ip subnet-zero
Switch (config) # ip classless
Переходимо до налаштування OSPF. Номер процесу (10) може відрізнятися, тому що OSPF не вставляти номер процесу в відправляються пакети, але ми залишимо 10, мені так зручніше;):
Switch (config) # router ospf 10
Switch (config-router) # log-adjacency-changes
Switch (config-router) # router-id 1.1.1.1
Switch (config-router) # network 10.0.255.0 0.0.0.7 area 0
Опишемо інтерфейс vlan 100, але тут я зроблю трохи по іншому, для прикладу:
Зробимо запис про мережі 10.0.1.0/24:
Switch (config-router) # network 10.0.1.0 0.0.0.255 area 0
Switch (config-router) # exit
Switch (config) # exit
Switch # wri
маршрутизатор У
Створимо ВЛАН 10, в якому «живуть» маршрутизатори А і Б і ВЛАН під клієнтів:
Switch> enable
Switch # configure terminal
Switch (config) # vlan 10
Switch (config-vlan) # name main
Switch (config-vlan) # vlan 200
Switch (config-vlan) # name clients
Switch (config-vlan) # exit
Switch (config) # int vlan 10
Switch (config-if) # ip address 10.0.255.3 255.255.255.248
Switch (config-if) # ip ospf network broadcast
Switch (config-if) # int vlan 200
Switch (config-if) # ip address 10.0.2.1 255.255.255.0
Switch (config-if) # exit
Створимо ВЛАН 100, в по якому будуть обмінюватися маршрутизатори В і Б
Switch (config) # vlan 100
Switch (config-vlan) # name backup
Switch (config-vlan) # exit
Switch (config) # int vlan 100
Switch (config-if) # ip address 10.0.255.10 255.255.255.252
Switch (config-if) # ip ospf network point-to-point
Switch (config-if) # exit
Switch (config) # ip routing
Switch (config) # ip subnet-zero
Switch (config) # ip classless
Switch (config) # router ospf 10
Switch (config-router) # log-adjacency-changes
Switch (config-router) # router-id 2.2.2.2
Switch (config-router) # network 10.0.255.0 0.0.0.7 area 0
Switch (config-router) # network 10.0.255.10 0.0.0.0 area 0
Switch (config-router) # network 10.0.2.0 0.0.0.255 area 0
Switch (config-router) # exit
Switch (config) # exit
Switch # wri
Ось в принципі і все, що було необхідно зробити, щоб протокол OSPF заробив в цій схемі.
Якщо ви ввсе зробили правильно, то по команді:
Switch # sh ip ospf neighbor
На маршрутизаторі А, ви побачите:
На маршрутизаторі Б:
На маршрутизаторі В:
Подивіться приходять маршрути по протоколу OSPF:
Switch # show ip route ospf
На маршрутизаторах Б і В серед маршрутів приходять по OSPF ви повинні бачити і default:
На маршрутизаторі Б, маршрут до мережі 10.0.2.0/24 буде проходити по vlan 100, тому що це найкоротший маршрут:
Відповідно на маршрутизаторі В:
Ось ще кілька корисних команд.
show ip ospf interface
show ip ospf
show ip ospf database
Якщо по show ip ospf neighbor нічого немає, то:
- перевірте чи правильно ви все сконфигурировали
- «Ходить» чи multicast по цих каналах
- НЕ виставлений чи storm-control або ACL на multicast
- скористайтеся наступними командами debug:
- debug ip ospf
- debug ip ospf adj
- debug ip ospf hello
- debug ip ospf events
- debug ip ospf packet
- debug ip ospf
висновок
Протокол OSPF не такий простий як може здатися. Я розглянув тільки початок і зовсім небагато з того, що вміє даний протокол. В даній схемі, завдяки протоколу OSFP. при падінні лінків між маршрутизаторами Б і А чи В і А зв'язність мережі не загубиться і користувачі з IP мереж 10.0.1.0/24 і 10.0.2.0/24 завжди матимуть можливість обмінюватися трафіком між собою, а також з мережею Інтернет тому, що ми вкинули default маршрут в мережу OSPF.
З.И.И. Очепятки можливі. Якщо ви помітили неточність або у вас є питання по даній схемі, то ви можете написати про це на нашому форумі з відповідному розділі.