Настройка OSPF для одной зоны на маршрутизаторах Cisco. Настройка динамической маршрутизации на cisco роутерах


Настройка OSPF на Cisco IOS. Динамическая маршрутизация. | Блог | Разработка и дизайн сайтов и мобильных приложений

Динамическая маршрутизация. Настройка OSPF на Cisco IOS

Хотите узнать, для чего нужна динамическая маршрутизация cisco, как настроить OSPF на Cisco? Погрузитесь в эту статью!

Давайте рассмотрим следующую топологию сети:

Динамическая маршрутизация. Настройка OSPF на Cisco IOS

Допустим, в этой сети мы используем статическую маршрутизацию, и появилась необходимость добавить новый роутер (R4). Роутеры «знают» только про подключенные к ним сети напрямую (directly connected). В таком случае нам придется вручную добавить все маршруты к подсетям на R4, а на остальных роутерах добавить маршруты к подсетям, которые обслуживает R4:

Динамическая маршрутизация. Настройка OSPF на Cisco IOS

С ростом сети это становится достаточно трудоемкой задачей. Протоколы динамической маршрутизации позволяют обмениваться маршрутами автоматически, упрощая обслуживание сети. Также динамические протоколы маршрутизации сами определяют оптимальный маршрут для отправки пакетов (мы можем влиять на это в случае необходимости) и выбирать альтернативный маршрут в случае падения какого-то канала.

Например, R3 может связаться с R1 через несколько маршрутов: через 10.5.0.4/30, через 10.5.0.8/30 -> 10.5.0.0/30 и 10.5.0.16/30 -> 10.5.0.12/30 -> 10.5.0.0/30. При использовании OSPF роутеры будут постоянно обмениваться информацией про известные маршруты и состояние соединений. В случае падения прямого канала между R1 и R3 трафик пойдет через роутер R2.

Настройка OSPF

Вот так будет выглядеть топология нашей сети с добавленным новым роутером R4:

Динамическая маршрутизация. Настройка OSPF на Cisco IOS

Начнем с настройки роутера R1. Представляю Ваше вниманию непосредственно сам пример настройки.

Запустим процесс ospf:

R1(config)# router ospf 1

Последнее число — это PID процесса, может отличаться на разных роутерах, но исключительно для удобства лучше задавать одно и тоже число.

Теперь отключим отправку hello пакетов на всех интерфейсах. Из соображений безопасности мы будем явно задавать интерфейсы, на которых будут устанавливаться neighbour отношения.

R1(config-router)#passive-interface default

Теперь укажем интерфейсы, на которых мы будем отправлять hello пакеты. Для R1 это fa0/0 и fa0/1:

R1(config-router)#no passive-interface fa0/0 R1(config-router)#no passive-interface fa0/1

С помощью команды network мы можем сделать 2 вещи — сообщить, какие сети мы хотим анонсировать по OSPF другим роутерам и на каких интерфейсах мы будем отправлять hello пакеты. Именно поэтому ранее мы указали конкретные интерфейсы для hello пакетов. К примеру, на роутере R1 нам нужны 3 сети: 10.5.0.0/30, 10.5.0.4/30 и 172.16.0.0/26. Но в последней сети будут исключительно пользовательские устройства и нам бы совсем не хотелось, чтобы кто-то имел возможность с нее влиять на таблицы маршрутизации роутеров.

Формат команды network:

network 0.0.0.0 255.255.255.255 area 0

Первым параметром идет номер сети, вторым — wildcart маска и последним номер зоны.

Проще говоря, это команда сообщает роутеру, c каких интерфейсов будут анонсироваться подсети по OSPF. В примере выше мы разрешили анонсировать любые подсети, с любых интерфейсов. Данный способ, конечно, упрощает настройку, но не рекомендован Cisco. Потому что любой интерфейс, который вы настроили на роутере, сразу уйдет в таблицы маршрутизации других роутеров. Cisco рекомендует подключать каждую сеть отдельно, для нашей конфигурации сети на R1 это будет выглядеть так:

R1(config-router)#network 10.5.0.1 0.0.0.0 area 0 R1(config-router)#network 10.5.0.5 0.0.0.0 area 0 R1(config-router)#network 172.16.0.1 0.0.0.0 area 0

Для понимания синтаксиса приведу пример, который позволит анонсировать обе служебные сети(10.5.0.0/30 и 10.5.0.4/30):

R1(config-router)#network 10.5.0.0 0.0.0.255 area 0

Дословно это означает: «анонсировать подсети с интерфейсов, которые начинаются на 10.5.0»

Теперь настроим R2:

router ospf 1 passive-interface default no passive-interface FastEthernet0/0 no passive-interface FastEthernet0/1 no passive-interface Vlan30 network 10.5.0.2 0.0.0.0 area 0 network 10.5.0.9 0.0.0.0 area 0 network 10.5.0.13 0.0.0.0 area 0 network 172.16.0.129 0.0.0.0 area 0

После этого мы получим уведомление:

*Mar 1 00:05:29.875: %OSPF-5-ADJCHG: Process 1, Nbr 172.16.0.1 on FastEthernet0/0 from LOADING to FULL, Loading Done

Это означает, что R1 и R2 установили neighbour отношения и обменялись информацией о известных маршрутах. Теперь на R2 должен быть один «сосед»:

R2#show ip ospf neighbor   Neighbor ID Pri State Dead Time Address Interface 172.16.0.1 1 FULL/DR 00:00:35 10.5.0.1 FastEthernet0/0

Посмотрим таблицу маршрутизации на R2:

R2#show ip route Codes: 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 i - IS-IS, su - IS-IS summary, 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   172.16.0.0/26 is subnetted, 2 subnets C 172.16.0.128 is directly connected, Vlan20 O 172.16.0.0 [110/11] via 10.5.0.1, 00:06:39, FastEthernet0/0 10.0.0.0/30 is subnetted, 3 subnets C 10.5.0.8 is directly connected, Vlan30 O 10.5.0.4 [110/20] via 10.5.0.1, 00:06:39, FastEthernet0/0 C 10.5.0.0 is directly connected, FastEthernet0/0

От R1 мы получили 2 маршрута по OSPF, о чем и говорит буква O в начале записи о маршруте.

Конфигурация R3:

router ospf 1 passive-interface default no passive-interface FastEthernet0/0 no passive-interface FastEthernet0/1 no passive-interface Vlan20 network 10.5.0.6 0.0.0.0 area 0 network 10.5.0.10 0.0.0.0 area 0 network 10.5.0.17 0.0.0.0 area 0 network 172.16.0.65 0.0.0.0 area 0

И для R4:

router ospf 1 passive-interface default no passive-interface FastEthernet0/0 no passive-interface FastEthernet0/1 network 10.5.0.14 0.0.0.0 area 0 network 10.5.0.18 0.0.0.0 area 0 network 172.16.1.1 0.0.0.0 area 0 network 172.16.1.65 0.0.0.0 area 0 network 172.16.1.129 0.0.0.0 area 0 network 172.16.1.193 0.0.0.0 area 0

Теперь наша таблица маршрутизации выглядит так:

R1#show ip route ...   172.16.0.0/26 is subnetted, 6 subnets O 172.16.1.128 [110/21] via 10.5.0.6, 00:11:05, FastEthernet0/1 [110/21] via 10.5.0.2, 00:11:05, FastEthernet0/0 O 172.16.1.192 [110/21] via 10.5.0.6, 00:11:05, FastEthernet0/1 [110/21] via 10.5.0.2, 00:11:05, FastEthernet0/0 C 172.16.0.0 is directly connected, Vlan10 O 172.16.1.0 [110/21] via 10.5.0.6, 00:11:05, FastEthernet0/1 [110/21] via 10.5.0.2, 00:11:05, FastEthernet0/0 O 172.16.0.64 [110/11] via 10.5.0.6, 00:11:07, FastEthernet0/1 O 172.16.1.64 [110/21] via 10.5.0.6, 00:11:07, FastEthernet0/1 [110/21] via 10.5.0.2, 00:11:07, FastEthernet0/0 10.0.0.0/30 is subnetted, 5 subnets O 10.5.0.12 [110/20] via 10.5.0.2, 00:11:07, FastEthernet0/0 O 10.5.0.8 [110/11] via 10.5.0.6, 00:11:08, FastEthernet0/1 [110/11] via 10.5.0.2, 00:11:08, FastEthernet0/0 C 10.5.0.4 is directly connected, FastEthernet0/1 C 10.5.0.0 is directly connected, FastEthernet0/0 O 10.5.0.16 [110/20] via 10.5.0.6, 00:11:11, FastEthernet0/1

Теперь можно попробовать сымитировать падения аплинка. Проведем трассировку маршрута с роутера R3 к клиентскому ПК с IP 172.16.0.2:

R3#traceroute 172.16.0.2   Type escape sequence to abort. Tracing the route to 172.16.0.2   1 10.5.0.5 16 msec 16 msec 16 msec 2 172.16.0.2 24 msec 36 msec 44 msec

Из трассировки видно, что трафик пойдет напрямую к R1. Отключим интерфейс на R1, к которому подключен R3:

R1#conf t Enter configuration commands, one per line. End with CNTL/Z. R1(config)#interface fa0/1 R1(config-if)#shutdown R1(config-if)#end

R3 заметил падение канала с R1:

*Mar 1 03:32:41.567: %OSPF-5-ADJCHG: Process 1, Nbr 172.16.0.1 on FastEthernet0/0 from FULL to DOWN, Neighbor Down: Dead timer expired

Теперь трафик пойдет через альтернативный канал (R3 -> R2 — R1):

R3#traceroute 172.16.0.2   Type escape sequence to abort. Tracing the route to 172.16.0.2   1 10.5.0.9 16 msec 16 msec 16 msec 2 10.5.0.1 40 msec 32 msec 40 msec 3 172.16.0.2 44 msec 48 msec 68 msec

На этом настройка OSPF с одной зоной (area 0) закончена. Теперь наша сеть использует OSPF для динамической маршрутизации.

Multi Area OSPF

Для чего нам может понадобиться разделить нашу сеть на несколько зон? В первую очередь, для агрегации маршрутов. Например, в нашей топологии роутер R4 анонсирует в сеть 4 маршрута, но все сети из диапазона 172.16.1.0-172.16.1.255 будут принадлежать исключительно ему, и мы хотим анонсировать один маршрут — 172.16.1.0/24. Это особенно актуально в больших сетях с большой таблицей маршрутизации. Так же, в силу специфики всех link-state протоколов динамической маршрутизации, в OSPF каждый роутер узнает о падении любого канала в сети. Это, конечно, повышает качество выбора оптимального маршрута, но и заметно повышает нагрузку. Допустим, у нас есть 15 офисов в Хмельницком и 10 в Виннице — роутерам в Виннице совершенно не обязательно знать о том, что какой-то роутер в Хмельницком упал. Разделение сети на разные зоны решает данный вопрос.

Динамическая маршрутизация. Настройка OSPF на Cisco IOS

Для начала уберем анонс подсетей с R4:

router ospf 1 no network 172.16.1.1 0.0.0.0 area 0 no network 172.16.1.65 0.0.0.0 area 0 no network 172.16.1.129 0.0.0.0 area 0 no network 172.16.1.193 0.0.0.0 area 0

И добавим их с area 1:

router ospf 1 network 172.16.1.1 0.0.0.0 area 1 network 172.16.1.65 0.0.0.0 area 1 network 172.16.1.129 0.0.0.0 area 1 network 172.16.1.193 0.0.0.0 area 1

И объявим диапазон для зоны:

R4(config-router)#area 1 range 172.16.1.0 255.255.255.0

Теперь на роутерах с area 0 появился только один маршрут:

R1#show ip route Codes: 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 i - IS-IS, su - IS-IS summary, 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 ... O IA 172.16.1.0/24 [110/21] via 10.5.0.6, 00:00:30, FastEthernet0/1 [110/21] via 10.5.0.2, 00:00:30, FastEthernet0/0 ...

Работать с нами!

Об авторе

Женя Гуринович

Системный администратор

Женя отвечает за настройку серверов, автоматизацию конфигурирования инфраструктуры, создание горизонтально масштабируемых и отказоустойчивых систем. Знанет Puppet, Docker, Ruby и Ruby on Rails.

Похожие статьи

Вернуться к списку записей К списку записей

stfalcon.com

Настройка OSPF для одной зоны на маршрутизаторах Cisco

В данной статье описывается процесс настройки протокола динамической маршрутизации OSPF на маршрутизаторах Cisco. Перед прочтением статьи рекомендуется ознакомиться с общими принципами работы OSPF и основными понятиями. Кроме того, существует отдельная статья по настройке OSPF для работы с несколькими зонами.

Описание топологии и задач

Для демонстрации работы OSPF будем использовать следующий стенд. Подразумевается, что в начале, у нас подняты все необходимые интерфейсы и на них настроены ip адреса, у провайдера настроены статические маршруты в нашу сеть, соседние маршрутизаторы могут пинговать друг друга. Требуется настроить OSPF.

Топология для настройки OSPF в одной зоне

  • ISP – маршрутизатор провайдера, он не входит в зону нашей ответственности и в OSPF процессе не участвует
  • R1 – наш пограничный маршрутизатор, он должен обеспечить пропуск трафика из внутренних сетей к провайдеру и обратно. На нём следует настроить статический маршрут по умолчанию и передать его остальным маршрутизаторам с помощью OSPF
  • R2, R3 и R4 – внутренние маршрутизаторы каждый из них отвечает за некую локальную сеть (192.168.2.0, 192.168.3.0 и 192.168.4.0), к которым подключаются клиенты. Чтобы не усложнять топологию, эти интерфейсы сети представлены в виде loopback, которые имитируют реальные интерфейсы.

Коммутатор не сконфигурирован, то есть, все маршрутизаторы находятся в одном VLAN и видят друг друга. В данном примере нет никакой необходимость его как-то настраивать. Приведём основные моменты конфигурации маршрутизаторов на начальный момент времени.

ISP

hostname ISP interface FastEthernet0/0 description TO-CLIENT ip address 10.10.10.1 255.255.255.252 ip route 192.168.0.0 255.255.0.0 FastEthernet0/0 ip route 10.0.0.0 255.0.0.0 FastEthernet0/0

R1

hostname R1 interface FastEthernet0/0 description TO-INTERNAL-NETWORK ip address 192.168.0.1 255.255.255.252 interface FastEthernet0/1 description TO-ISP ip address 10.10.10.2 255.255.255.252

R2

hostname R2 interface Loopback0 description TO-R2-LAN ip address 192.168.2.1 255.255.255.0 interface FastEthernet0/0 description TO-BORDER-ROUTER ip address 192.168.0.2 255.255.255.252 interface FastEthernet0/1 description TO-ROUTER-EXCHANGE-NETWORK ip address 192.168.1.2 255.255.255.0

R3

hostname R3 interface Loopback0 description TO-R3-LAN ip address 192.168.3.1 255.255.255.0 interface FastEthernet0/0 description TO-ROUTER-EXCHANGE-NETWORK ip address 192.168.1.3 255.255.255.0

R4

hostname R4 interface Loopback0 description TO-R4-LAN ip address 192.168.4.1 255.255.255.0 interface FastEthernet0/0 description TO-ROUTER-EXCHANGE-NETWORK ip address 192.168.1.4 255.255.255.0 duplex auto speed auto

Базовая настройка OSPF

На каждом маршрутизаторе необходимо создать процесс OSPF командой router ospf номер-процесса, какой именно номер мы укажем – не имеет значения, для простоты будем везде использовать 1, далее надо описать все сети, входящие в процесс маршрутизации с помощью команды network. Когда мы указываем некоторую сеть, это приводит к двум последствиям:

  1. Информация об этой сети начинает передаваться другим маршрутизаторам (при условии, что на маршрутизаторе есть рабочий интерфейс в данной сети)
  2. Через интерфейс, находящийся в этой сети маршрутизатор начинает общаться с соседями.

Таким образом, необходимо указывать на каждом маршрутизаторе все сети, непосредственно подключенные к нему. Исключением является R1 – на нём не надо указывать сеть 10.10.10.0, так как, во-первых, с той стороны находится провайдер, который ничего не знает про наш внутренний OSPF и с ним не надо устанавливать соседских отношений (он просто прописывает статический маршрут в наши сети), с другой стороны к провайдеру итак пойдёт маршрут по умолчанию, поэтому именно про сеть 10.10.10.0 никому из внутренних маршрутизаторов знать не обязательно. Настроим маршрутизацию.

R1

R1(config)#router ospf 1 R1(config-router)#network 192.168.0.0 0.0.0.3 area 0

При добавлении сетей используется wildcard маска, обратная к маске подсети. В данном случае 255.255.255.255-255.255.255.252=0.0.0.3.

R2

R2(config)#router ospf 1 R2(config-router)#network 192.168.0.0 0.0.0.3 area 0 00:37:37: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.0.1 on FastEthernet0/0 from LOADING to FULL, Loading Done R2(config-router)#network 192.168.1.0 0.0.0.255 area 0

Видно, что как только мы прописали с двух сторон одну и ту же сеть, маршрутизаторы сразу же установили соседские отношения. Так же мы прописали нашу «локальную» сеть 192.168.1.0 – чтобы сообщить маршрутизаторам о ней. Список соседей можно увидеть:

R2#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 192.168.0.1 1 FULL/BDR 00:00:36 192.168.0.1 FastEthernet0/0

Пока у R2 только один сосед – R1, так как на R3 и R4 – ещё не включен OSPF и не добавлена сеть 192.168.1.0

R3

R3(config)#router ospf 1 R3(config-router)#network 192.168.1.0 0.0.0.255 area 0 00:43:23: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.2.1 on FastEthernet0/0 from LOADING to FULL, Loading Done R3(config-router)#network 192.168.3.0 0.0.0.255 area 0

R4

R4(config)#router ospf 1 R4(config-router)#network 192.168.4.0 0.0.0.255 area 0 R4(config-router)#network 192.168.1.0 0.0.0.255 area 0 R4(config-router)# 00:44:43: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.3.1 on FastEthernet0/0 from LOADING to FULL, Loading Done 00:44:43: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.2.1 on FastEthernet0/0 from LOADING to FULL, Loading Done

Диагностика OSPF

Как видно, маршрутизаторы установили друг с другом соседские отношения. Посмотрим снова таблицу соседей на R2:

R2#show ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface 192.168.0.1 1 FULL/BDR 00:00:37 192.168.0.1 FastEthernet0/0 192.168.3.1 1 FULL/BDR 00:00:37 192.168.1.3 FastEthernet0/1 192.168.4.1 1 FULL/DROTHER 00:00:37 192.168.1.4 FastEthernet0/1

Видно, что:

  1. Все соседи выбрали себе Router ID – в данном случае это наибольший из адресов их loopback интерфейсов
  2. Маршрутизатор R3 – стал BDR, R4 – не стал ни DR ни BDR, таким образом, в сети со множественным доступом 192.168.1.0/24, DR-ом стал сам R2.
  3. Все соседские отношения установились, в последнем столбце таблицы видно, через какой именно интерфейс доступны соседи.

Эта команда важна для диагностики OSPF и именно с неё надо начинать диагностику, так как, если маршрутизатор отсутствует в таблице соседей, то это один класс проблем (перепутали ip адреса, не включили нужную сеть командой network, не включили интерфейс командой no shutdown, не совпадают значения Hello-интервалов с двух сторон линка). Если же маршрутизатор есть в таблице соседей, значит, скорее всего, сам OSPF работает нормально и надо проверить таблицу маршрутизации.

R2#show 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 192.168.0.0/30 is subnetted, 1 subnets C 192.168.0.0 is directly connected, FastEthernet0/0 C 192.168.1.0/24 is directly connected, FastEthernet0/1 C 192.168.2.0/24 is directly connected, Loopback0 192.168.3.0/32 is subnetted, 1 subnets O 192.168.3.1 [110/2] via 192.168.1.3, 00:07:48, FastEthernet0/1 192.168.4.0/32 is subnetted, 1 subnets O 192.168.4.1 [110/2] via 192.168.1.4, 00:06:36, FastEthernet0/1

Как мы видим, все маршруты появились в таблицу с буквой «O», что означает работоспособность OSPF нам не хватает только маршрута по умолчанию, но об этом позже. Ещё одна полезная команда позволяет нам посмотреть содержимое LSDB – то есть, кто где с кем связан. По сути, это и есть полная карта сети:

R2#show ip ospf database OSPF Router with ID (192.168.2.1) (Process ID 1) Router Link States (Area 0) Link ID ADV Router Age Seq# Checksum Link count 192.168.0.1 192.168.0.1 895 0x80000005 0x00f2b3 1 192.168.2.1 192.168.2.1 554 0x80000004 0x007c3d 2 192.168.3.1 192.168.3.1 540 0x80000003 0x0051ce 2 192.168.4.1 192.168.4.1 468 0x80000003 0x006bb0 2 Net Link States (Area 0) Link ID ADV Router Age Seq# Checksum 192.168.0.2 192.168.2.1 901 0x80000001 0x00f340 192.168.1.2 192.168.2.1 468 0x80000003 0x00a384

Passive-interface

Появляется одна неочевидная проблема с безопасностью. Когда мы включаем некоторую сеть в процесс ospf, мы не только рассказываем про неё всем маршрутизаторам, но и начинаем слать в неё hello пакеты. Для клиентских сетей (в нашем примере – loopback) этого делать не нужно, так как там не должно быть маршрутизаторов. В то же время, если мы исключим такую сеть – то про неё никто не узнает и трафик в неё доставляться не будет. Решение – включать такую сеть, но прописывать команду passive-interface, которая запрещает слать на некоторые интерфейсы апдейты. Подробнее с ней можно ознакомиться в отдельной статье.

R2(config-router)#passive-interface loopback 0 R3(config-router)#passive-interface loopback 0 R4(config-router)#passive-interface loopback 0

Передача статического маршрута по умолчанию средствами OSPF

Последняя задача, которую необходимо решить – сообщить всем внутренним маршрутизаторам о том, что у нас есть маршрут по умолчанию, смотрящий на провайдера. Задача эта решается достаточно просто на R1:

R1(config)#ip route 0.0.0.0 0.0.0.0 10.10.10.1 R1(config)#router ospf 1 R1(config-router)#default-information originate

Первая строчка добавляет статический маршрут по умолчанию в направлении ISP, но этот маршрут пока локальный, то есть он известен только на R1. Команда default-information originate заставляет OSPF передавать этот маршрут остальным маршрутизаторам.

R1#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 10.10.10.1 to network 0.0.0.0 10.0.0.0/30 is subnetted, 1 subnets C 10.10.10.0 is directly connected, FastEthernet0/1 192.168.0.0/30 is subnetted, 1 subnets C 192.168.0.0 is directly connected, FastEthernet0/0 O 192.168.1.0/24 [110/2] via 192.168.0.2, 00:53:25, FastEthernet0/0 192.168.3.0/32 is subnetted, 1 subnets O 192.168.3.1 [110/3] via 192.168.0.2, 00:53:15, FastEthernet0/0 192.168.4.0/32 is subnetted, 1 subnets O 192.168.4.1 [110/3] via 192.168.0.2, 00:51:54, FastEthernet0/0 S* 0.0.0.0/0 [1/0] via 10.10.10.1

Как видно, на R1 маршрут статический (с буквой «S»). Если посмотреть таблицу маршрутизации на R4, то она выглядит следующим образом:

R4#show 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 192.168.1.2 to network 0.0.0.0 192.168.0.0/30 is subnetted, 1 subnets O 192.168.0.0 [110/2] via 192.168.1.2, 00:53:21, FastEthernet0/0 C 192.168.1.0/24 is directly connected, FastEthernet0/0 192.168.3.0/32 is subnetted, 1 subnets O 192.168.3.1 [110/2] via 192.168.1.3, 00:53:21, FastEthernet0/0 C 192.168.4.0/24 is directly connected, Loopback0 O*E2 0.0.0.0/0 [110/1] via 192.168.1.2, 00:05:49, FastEthernet0/0

В последней строчке «O» означает, что маршрут получат с помощью OSPF, «*» – что он является маршрутом по умолчанию, а «E2» – что маршрут является внешним по отношению к OSPF, то есть изначально он получен не от OSPF (в данном случае был статическим), а OSPF используется только для передачи этого маршрута. Конфигурация из данной статьи доступна в формате Packet Tracer

ciscotips.ru

Часть 2. Базовая настройка протокола OSPF на маршрутизаторе Cisco

Рассмотрение настройки протокола OSPF начнём со следующей топологии:

topol_3

Здесь 4 маршрутизатора находятся в area 0 (Backbone Area).

Настройка протокола OSPF на маршрутизаторах Cisco не представляет каких-либо сложностей. Достаточно в режиме глобальной конфигурирации выполнить следующие команды (начнём с маршрутизатора R1):

R1(config)# router ospf 1 R1(config-router)# router-id 1.1.1.1 R1(config-router)# network 192.168.12.1 0.0.0.0 area 0

Далее на R2:

R2(config)# router ospf 2 R2(config-router)# router-id 2.2.2.2 R2(config-router)# network 192.168.12.2 0.0.0.0 area 0

Разберёмся с каждой из трёх команд на маршрутизаторе R1:

  • router ospf 1 — команда для запуска процесса динамической маршрутизации OSPF на маршрутизаторе. Цифра 1 в конце команды указывает номер процесса OSPF (OSPF Process ID). Следует отметить, что этот номер не обязан быть одинаковым на всех маршрутизаторах в area (да и даже в автономной системе в целом), на которых запускаем OSPF. Я буду использовать OSPF Process ID равный номеру маршрутизатора в рассматриваемой топологии
  • router-id 1.1.1.1 — задаётся в режиме конфигурирования процесса маршрутизации (в который попадаем после ввода первой рассмотренной команды). Здесь указывается OSPF идентификатор (OSPF Router ID) данного маршрутизатора. OSPF идентификатор каждого маршрутизатора, который участвует в процессе маршрутизации OSPF в автономной системе, должен быть уникальным. Процесс выбора OSPF Router ID происходит следующим образом (по уменьшению приоритета):

1. Задаётся вручную командой router-id 1.1.1.1 (наиболее предпочтительный способ)2. Выбирается наибольший IP адрес Loopback интерфейса, который в состоянии up/up3. Выбирается наибольший IP адрес физического интерфейса, который в состоянии up/up

Без OSPF Router ID процесс маршрутизации не запустится. В этом случае в консоли будет сообщение:

*Sep 11 09:54:02.935: %OSPF-4-NORTRID: OSPF process 1 failed to allocate unique router-id and cannot start

OSPF Router ID играет одну из ключевых ролей при наполнении базы данных состояния каналов OSPF (OSPF LSDB), на основании которой и происходит расчёт кратчайших маршрутов к сетям в домене маршрутизации OSPF и занесение этих маршрутов в таблицу маршрутизации.

При смене OSPF Router ID на маршрутизаторе с запущенным процессом OSPF потребуется перезапуск процесса OSPF, который повлечёт переустановление отношений смежности OSPF с другими маршрутизаторами. В течение процесса преустановления смежности OSPF произойдёт исключение маршрутов, полученных посредством OSPF, из таблицы маршрутизации.

  • network 192.168.12.1 0.0.0.0 area 0 — указываем на каких интерфейсах маршрутизатора запускать процесс OSPF. Я предпочитаю указывать явно IP адрес каждого интерфейса, на котором необходимо запустить процесс OSPF, причём использовать при этом wildcard-маску «0.0.0.0». Такой подход позволяет явно контролировать, на каких интерфейсах будет запущен OSPF и какие сети будут анонсироваться OSPF соседям. «area 0» в конце команды говорит о том, что интерфейсы маршрутизатора с IP адресами, подпадающими под сеть, указанную после «network«, будут относиться к нулевой области (Backbone Area). В представленной топологии в area 0 «попадёт» интерфейс gi2/0 с IP адресом 192.168.12.1/24

Хочу немного подробнее рассмотреть третью команду (network 192.168.12.1 0.0.0.0 area 0), а именно варианты её использования.

Можно задать эту команду в виде:

network 0.0.0.0 0.0.0.0 area 0

и тогда все интерфейсы (с настроенными IP адресами и в состоянии up/up) маршрутизатора будут участвовать в процессе OSPF и пытаться найти OSPF «соседа», отсылая через каждый интерфейс OSPF сообщение «Hello». Некоторые интерфейсы маршрутизатора могут быть подключены к конечным сетям (с компьютерами, МФУ и т.п.), в которых не будет маршрутизатора с запущенным OSPF процессом. Такие интерфейсы можно сконфигурировать как «passive», и тогда маршрутизатор не будет на этом интерфейсе отсылать и принимать «Hello» сообщения с целью найти OSPF «соседа»:

R1(config)# router ospf 1R1(config-router)# passive-interface gi4/0

Здесь на интерфейсе gi4/0 маршрутизатор никогда не установит отношений соседства/смежности OSPF.

Кроме того, задание интерфейсов, на которых не должен появиться OSPF «сосед» как «passive», предотвратит появление в сети несанкционированного маршрутизатора, который, установив OSPF соседство с одним из наших маршрутизаторов, сможет распространить в сети «фальшивые» маршруты и таким образом «завернуть» пользовательский трафик через машину со снифером; либо исказить маршрутную информацию в сети с целью вызвать отказ в обслуживании (DoS).

После ввода этих команд на маршрутизаторах R1 и R2, если на них включён режим вывода log-сообщений в терминал (кстати включается этот режим командой «router# terminal monitor»), то на экране увидим следующее сообщение (сообщение с R2):

*Sep 11 09:59:34.435: %OSPF-5-ADJCHG: Process 2, Nbr 1.1.1.1 on GigabitEthernet1/0 from LOADING to FULL, Loading Done

говорящее о том, что маршрутизатор R2 установил отношение смежности с соседом (Nbr — от слова Neighbor), идентификатор OSPF (OSPF Router Id) которого 1.1.1.1, и находится этот сосед за интерфейсом GigabitEthernet1/0 и перешёл в состояние Full (об этом детально будет позже).

Чтобы посмотреть, на каких интерфейсах запущен процесс OSPF, воспользуемся командой «show ip ospf interface» на маршрутизаторе R1 (на данном этапе OSPF настроен только на R1 и R2):

R1#show ip ospf interface

GigabitEthernet2/0 is up, line protocol is upинтерфейс GigabitEthernet2/0 с IP адресом 192.168.12.1/24 находится в Area 0 Internet Address 192.168.12.1/24, Area 0идентификатор процесса OSPF (OSPF Process ID), который мы задали первой командой — 1, OSPF Router ID (задали второй командой) — 1.1.1.1 Process ID 1, Router ID 1.1.1.1, Network Type BROADCAST, Cost: 1…………………………………………………количество соседей — 1, отношения соседства установлены с одним маршрутизатором Neighbor Count is 1, Adjacent neighbor count is 1OSPF Router ID соседа, с которым установлены отношения соседства — 2.2.2.2 (задавали на маршрутизаторе R2) Adjacent with neighbor 2.2.2.2 (Designated Router)…………………………………………………

Настроив все 4 маршрутизатора мы получим рабочий OSPF домен маршрутизации с одной областью — area 0 (Backbone Area).

Просмотреть соседей OSPF можно командой «show ip ospf neighbor»:

R1#show ip ospf neighbor

Neighbor ID      Pri       State         Dead Time         Address              Interface3.3.3.3             1      FULL/BDR        00:00:33     192.168.13.3    GigabitEthernet3/02.2.2.2             1      FULL/DR          00:00:34     192.168.12.2    GigabitEthernet2/0

Видим, что у R1 есть 2 OSPF-соседа. Так же видим OSPF Router ID, IP Address соседей и через какие интерфейсы маршрутизатора R1 эти соседи достижимы.

Ну и таблица маршрутизации на R1:

R1#show ip route

Codes: 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 i — IS-IS, su — IS-IS summary, 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

C 192.168.12.0/24 is directly connected, GigabitEthernet2/0C 192.168.13.0/24 is directly connected, GigabitEthernet3/0O 192.168.24.0/24 [110/2] via 192.168.12.2, 00:02:54, GigabitEthernet2/0O 192.168.34.0/24 [110/2] via 192.168.13.3, 00:04:23, GigabitEthernet3/0

Две последние подсети были установлены в таблицу маршрутизации при помощи протокола динамической маршрутизации OSPF, о чём свидетельствует буква O в начале последних двух строк вывода команды «show ip route».

В данной статье не проведена грань между понятиями «соседство» и «смежность» при рассмотрении отношений между маршрутизаторами с запущенным процессом OSPF. В дальнейших статьях будет приведено отличие между этими двумя терминами.

blog.sbolshakov.ru

Статическая маршрутизация в Cisco IOS (static route)

Статический роутинг представляет собой определяемые пользователем маршруты (route), которые заставляют пакеты, перемещающиеся между источником и адресатом, отправляться по указанному пути. Он также полезен для определения шлюза последней надежды (gateway of last resort) , на который будут направляться все unroutable пакеты. Статический маршрут обычно предназначен для тех случаев, когда  Cisco не может динамически формировать маршрут для адресата.

Для настройки статического роутинга, в режиме глобальной конфигурации, необходимо ввести команды, типа:

ip route prefix mask {address | interface} [distance] [tag tag] [permanent]

, где

prefixIP route prefix для сети адресата
maskPrefix mask для сети адресата
addressIP address следующего hop'а,  который может использоваться, для достижения этой сети
interfaceиспользуемый network interface
distance(необязательно) An administrative distance
tag tag(необязательно) Tag - это значение, которое может использоваться, в качестве критерия соответствия  для управления перераспределенем маршрутов (for redistributing routes) через route maps
permanent(необязательно) Запрещает удаление маршрута, даже при interface shuts down

CISCO помнит статические маршруты, до тех пор, пока вы не удаляете их (используя в режиме глобальной конфигурации команду no ip route prefix mask ). Однако, если Вы определяете параметр administrative distance, Вы ослабеваете(flagging) статический маршрут, который может быть отменен (overridden) динамической информацией. Например, IGRP-derived (-полученные) маршруты имеют заданное по умолчанию значение administrative distance равное 100. Чтобы иметь статический маршрут, который был бы отменен в соответствии с IGRP dynamic route, определите ему administrative distance большее, чем 100. Статические маршруты имеют заданное по умолчанию значение administrative distance равное 1. Каждый dynamic routing protocol имеет некоторое значение по умолчанию для administrative distance (см. таблицу)

Route SourceDefault Distance
Connected interface0
Static route1
Enhanced IGRP summary route5
External BGP20
Internal Enhanced IGRP90
IGRP100
OSPF110
IS-IS115
RIP120
EGP140
Internal BGP200
Unknown255

Статические маршруты, которые указывают на интерфейс, будут рекламироваться (advertised) через RIP, IGRP, или другие протоколы динамической маршрутизации dynamic routing protocols, независимо от того, были ли определены для этих протоколов dynamic routing protocols команды redistribute static. Однако, если Вы определяете статический маршрут на интерфейс, который не входит ни в одну из сетей, определенных в команде network для dynamic routing protocols, никакой из этих протоколов не рекламирует (advertise) этот маршрут, если redistribute static для них определена.

В первом примере, было выбрано administrative distance равное 110. В этом случае, пакеты для сети 10.0.0.0 будут направлены через маршрутизатор 131.108.3.4, если динамическая информация с administrative distance меньшим, чем 110 не доступна:

ip route  10.0.0.0  255.0.0.0  131.108.3.4  110

Во-втором примере пакеты для сети 131.108.0.0 будут направлены маршрутизатору 131.108.6.6:

ip route  131.108.0.0  255.255.0.0  131.108.6.6

В общем случае при настройке статической маршрутизации вам необходимо настроить заданный по умолчанию маршрут для IP трафика. Его предназначение - заставлять трафик для неизвестных подмножеств IP адресов (не определенных командами ip route) следовать по заданному по умолчанию маршруту.

Для этого, в режиме глобальной маршрутизации, необходимо прописать:

ip route  0.0.0.0  0.0.0.0 interface-name | IP address

Статическая маршрутизация в Cisco IOS (static route)

Источник: blogsvazista.ru/static-route/

ciscoacs.blogspot.ru


Смотрите также