В прошлой статье мы рассмотрели основные моменты настройки сетевого оборудования HUAWEI и остановились на статической маршрутизации. В сегодняшнем топике речь пойдёт о динамической маршрутизации по протоколу OSPF совместно с маршрутизаторами Cisco. Добро пожаловать под кат.
Теория
Итак, в нашей супер сети присутствуют 4 маршрутизатора: два HUAWEI и два Cisco. Роутер R2 будет являться ASBR, R3 — ABR.
Напомню, что в OSPF маршрутизаторы делятся на несколько типов:
- Внутренний маршрутизатор (internal router) — маршрутизатор, все интерфейсы которого принадлежат одной зоне. У таких маршрутизаторов только одна база данных состояния каналов.
- Пограничный маршрутизатор (area border router, ABR) — соединяет одну или больше зон с магистральной зоной и выполняет функции шлюза для межзонального трафика. У пограничного маршрутизатора всегда хотя бы один интерфейс принадлежит магистральной зоне. Для каждой присоединенной зоны маршрутизатор поддерживает отдельную базу данных состояния каналов.
- Магистральный маршрутизатор (backbone router) — маршрутизатор, у которого всегда хотя бы один интерфейс принадлежит магистральной зоне. Определение похоже на пограничный маршрутизатор, однако магистральный маршрутизатор не всегда является пограничным. Внутренний маршрутизатор интерфейсы которого принадлежат нулевой зоне, также является магистральным.
- Пограничный маршрутизатор автономной системы (AS boundary router, ASBR) — обменивается информацией с маршрутизаторами, принадлежащими другим автономным системам или не-OSPF маршрутизаторами. Пограничный маршрутизатор автономной системы может находиться в любом месте автономной системы и быть внутренним, пограничным или магистральным маршрутизатором.[1]
Area 0 — магистральная (backbone) зона, area 1 — тупиковая зона (stub).
- Магистральная (транзитная) зона (backbone (transit) area) — зона используемая для подключения других зон.
- Тупиковая зона (stub area) — зона, не принимающая информацию о маршрутах, являющихся внешними для данной автономной системы.
- Полностью тупиковая зона (totally stub area) — зона, не принимающая информацию о внешних маршрутах и маршрутах из других автономных систем.
Итак, приступим к настройке.
Первоначальная настройка:
Для начала нам необходимо создать vlan интерфейс, назначить ему соответствующий ip адрес и разрешить прохождение трафика через физический интерфейс, таким образом добиться ip коннективити между девайсами.
После этого включим процесс OSPF на маршрутизаторах:
Cisco:
R1(config)#router ospf 1
R1(config-router)#network 172.16.1.0 0.0.0.255 area 0
R1(config-router)#network 1.1.1.1 0.0.0.0 area 0
R1(config-router)#router
R1(config-router)#router-id 1.1.1.1
HUAWEI:
[R2]ospf 1 router-id 2.2.2.2
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[R2-ospf-1-area-0.0.0.0]
Естественно, при настройке необходимо изменить значения router-id и анонсируемые сети для разных зон. Таким образом, первоначальная конфигурация OSPF будет выглядеть так:
R1 [Cisco]:
router ospf 1
router-id 1.1.1.1
log-adjacency-changes
redistribute static
network 1.1.1.1 0.0.0.0 area 0
network 172.16.1.0 0.0.0.255 area 0
!
R2 [HUAWEI]:
ospf 1 router-id 2.2.2.2
area 0.0.0.0
network 172.16.1.0 0.0.0.255
network 2.2.2.2 0.0.0.0
#
R3 [HUAWEI]:
ospf 1 router-id 3.3.3.3
area 0.0.0.0
network 3.3.3.0 0.0.0.3
network 172.16.1.0 0.0.0.255
area 0.0.0.1
network 172.16.2.0 0.0.0.3
#
R4: [Cisco]
router ospf 1
log-adjacency-changes
area 1 stub
network 4.4.4.4 0.0.0.0 area 1
network 172.16.2.0 0.0.0.3 area 1
!
Маршрутизатор R4 является ABR, поэтому в нём описываются несколько зон. Пока мы не будем переводить зону 1 в состояние stub. Посмотрим, что у нас получилось:
Switch#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 1 FULL/BDR 00:00:39 172.16.1.2 Vlan100
3.3.3.3 1 FULL/DR 00:00:31 172.16.1.3 Vlan100
Switch#
DR, BDR, DROTHER
Мы видим, что маршрутизаторы R2 и R3 выбрались BDR и DR, соответственно. Напомню что это означает. Так как познать всю теорию OSPF не является целью нашего повествования, опишем эти понятия вкратце.
- DR, designated router (выделенный маршрутизатор) — маршрутизатор который управляет процессом обмена сообщениями в сети OSPF.
- BDR, backup designated router (резервный выделенный маршрутизатор) — маршрутизатор, который заменяет DR в случае выбывания последнего.
Выбор BDR и DR осуществляется на основе приоритета маршрутизатора, но по умолчанию приоритеты всех устройств равны 1. В этом случае процесс выбора проходит по идентификатору маршрутизатора, что мы и наблюдаем. Но есть одно НО. Если DR и BDR уже выбраны, перевыборы не происходят. Действует принцип: кто первый встал того и тапки. Проверим. Для этого исключим из процесса маршрутизатор R2.
[R2]ospf 1
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]undo network 172.16.1.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]
Теперь R1 стал BDR, R3 же остался DR:
R1#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
3.3.3.3 1 FULL/DR 00:00:33 172.16.1.3 Vlan100
R1#
[R3]display ospf peer
OSPF Process 1 with Router ID 3.3.3.3
Neighbors
Area 0.0.0.0 interface 172.16.1.3(Vlanif100)'s neighbors
Router ID: 1.1.1.1 Address: 172.16.1.1
State: Full Mode:Nbr is Slave Priority: 1
!!!!!DR: 172.16.1.3 BDR: 172.16.1.1!!!!! MTU: 1500
Dead timer due in 35 sec
Retrans timer interval: 4
Neighbor is up for 00:35:59
Authentication Sequence: [ 0 ]
Neighbors
Area 0.0.0.1 interface 172.16.2.1(Vlanif101)'s neighbors
Router ID: 4.4.4.4 Address: 172.16.2.2
State: Full Mode:Nbr is Master Priority: 1
DR: 172.16.2.2 BDR: 172.16.2.1 MTU: 1500
Dead timer due in 33 sec
Retrans timer interval: 5
Neighbor is up for 00:56:48
Authentication Sequence: [ 0 ]
[R3]
Сейчас мы снова включим в процесс OSPF на роутере R2 сеть 172.16.1.0/24.
[R2]ospf 1
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]
Теперь посмотрим состояние маршрутизаторов:
R1#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 1 FULL/DROTHER 00:00:36 172.16.1.2 Vlan100
3.3.3.3 1 FULL/DR 00:00:39 172.16.1.3 Vlan100
R1#
Второй маршрутизатор перешёл в состояние DROTHER, т. е. он не является ни DR, ни BDR. Да будет так.
Межзональный обмен маршрутами
Теперь посмотрим, что мы имеем в таблицах маршрутизации.
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, E - EGP
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
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback0
2.0.0.0/32 is subnetted, 1 subnets
O 2.2.2.2 [110/1] via 172.16.1.2, 00:05:59, Vlan100
3.0.0.0/32 is subnetted, 1 subnets
O 3.3.3.3 [110/1] via 172.16.1.3, 00:05:59, Vlan100
4.0.0.0/32 is subnetted, 1 subnets
O IA 4.4.4.4 [110/3] via 172.16.1.3, 00:05:59, Vlan100
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
C 172.16.1.0/24 is directly connected, Vlan100
O IA 172.16.2.0/30 [110/2] via 172.16.1.3, 00:05:59, Vlan100
R1#
Флаги IA означают, что маршрут пришёл из другой зоны OSPF.
То же самое на HUAWEI.
[R2]disp ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 10 Routes : 10
Destination/Mask Proto Pre Cost Flags NextHop Interface
1.1.1.1/32 OSPF 10 2 D 172.16.1.1 Vlanif100
2.2.2.2/32 Direct 0 0 D 127.0.0.1 LoopBack0
3.3.3.3/32 OSPF 10 1 D 172.16.1.3 Vlanif100
4.4.4.4/32 OSPF 10 3 D 172.16.1.3 Vlanif100
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.1.0/24 Direct 0 0 D 172.16.1.2 Vlanif100
172.16.1.2/32 Direct 0 0 D 127.0.0.1 Vlanif100
172.16.2.0/30 OSPF 10 2 D 172.16.1.3 Vlanif100
[R2]
В глобальной таблице маршрутизации явно не видно, что маршрут 4.4.4.4/32 пришёл из другой зоны. Посмотрим более детально маршруты по протоколу OSPF.
[R2]dis ospf routing
OSPF Process 1 with Router ID 2.2.2.2
Routing Tables
Routing for Network
Destination Cost Type NextHop AdvRouter Area
2.2.2.2/32 0 Stub 2.2.2.2 2.2.2.2 0.0.0.0
172.16.1.0/24 1 Transit 172.16.1.2 2.2.2.2 0.0.0.0
1.1.1.1/32 2 Stub 172.16.1.1 1.1.1.1 0.0.0.0
3.3.3.3/32 1 Stub 172.16.1.3 3.3.3.3 0.0.0.0
4.4.4.4/32 3 Inter-area 172.16.1.3 3.3.3.3 0.0.0.0
172.16.2.0/30 2 Inter-area 172.16.1.3 3.3.3.3 0.0.0.0
Total Nets: 6
Intra Area: 4 Inter Area: 2 ASE: 0 NSSA: 0
[R2]
Здесь мы видим, что маршруты 4.4.4.4/32 и 172.16.2.0/30 пришли из другой зоны (Inter-area).
Редистрибьюция маршрутов
Усложним ситуацию. Вспомним, что маршрутизатор R1 по совместительству является пограничным маршрутизатором автономной системы, т. е. за ним потенциально могут быть другие маршрутизаторы. Добавим парочку статических маршрутов в рай, т. е. туда, откуда не возвращаются, да простят меня DNS'ы гугла.
[R2]ip route-static 8.8.8.8 32 NULL0
[R2]ip route-static 8.8.4.4 32 NULL0
И добавим редистрибьюцию статических маршрутов:
[R2]ospf 1
[R2-ospf-1]import-route static
Т. о. образом конфиг секции OSPF на маршрутизаторе R2:
[R2-ospf-1]di th
#
ospf 1 router-id 2.2.2.2
import-route static
area 0.0.0.0
network 2.2.2.2 0.0.0.0
network 172.16.1.0 0.0.0.255
#
return
[R2-ospf-1]
Посмотрим таблицы маршрутизации.
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, E - EGP
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
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback0
2.0.0.0/32 is subnetted, 1 subnets
O 2.2.2.2 [110/1] via 172.16.1.2, 00:01:49, Vlan100
3.0.0.0/32 is subnetted, 1 subnets
O 3.3.3.3 [110/1] via 172.16.1.3, 00:01:49, Vlan100
4.0.0.0/32 is subnetted, 1 subnets
O IA 4.4.4.4 [110/3] via 172.16.1.3, 00:01:49, Vlan100
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
C 172.16.1.0/24 is directly connected, Vlan100
O IA 172.16.2.0/30 [110/2] via 172.16.1.3, 00:01:50, Vlan100
8.0.0.0/32 is subnetted, 2 subnets
O E2 8.8.8.8 [110/1] via 172.16.1.2, 00:01:50, Vlan100
O E2 8.8.4.4 [110/1] via 172.16.1.2, 00:01:52, Vlan100
9.0.0.0/32 is subnetted, 1 subnets
O E2 9.9.9.9 [110/1] via 172.16.1.2, 00:01:52, Vlan100
R1#
Флаг E означает, что маршруты импортировались из другого протокола маршрутизации.
То же самое на HUAWEI:
[R3]disp ospf routing
OSPF Process 1 with Router ID 3.3.3.3
Routing Tables
Routing for Network
Destination Cost Type NextHop AdvRouter Area
3.3.3.3/32 0 Stub 3.3.3.3 3.3.3.3 0.0.0.0
172.16.1.0/24 1 Transit 172.16.1.3 3.3.3.3 0.0.0.0
172.16.2.0/30 1 Transit 172.16.2.1 3.3.3.3 0.0.0.1
1.1.1.1/32 2 Stub 172.16.1.1 1.1.1.1 0.0.0.0
2.2.2.2/32 1 Stub 172.16.1.2 2.2.2.2 0.0.0.0
4.4.4.4/32 2 Stub 172.16.2.2 4.4.4.4 0.0.0.1
Routing for ASEs
Destination Cost Type Tag NextHop AdvRouter
8.8.4.4/32 1 Type2 1 172.16.1.2 2.2.2.2
8.8.8.8/32 1 Type2 1 172.16.1.2 2.2.2.2
Total Nets: 8
Intra Area: 6 Inter Area: 0 ASE: 2 NSSA: 0
[R3]
Настройка тупиковых зон
Переходим к заключительному этапу — настройке тупиковой зоны area 1. Предварительно посмотрим какие маршруты пришли на несправедливо забытый маршрутизатор R4.
R4#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, E - EGP
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
1.0.0.0/32 is subnetted, 1 subnets
O IA 1.1.1.1 [110/3] via 172.16.2.1, 00:02:18, Vlan101
2.0.0.0/32 is subnetted, 1 subnets
S 2.2.2.2 [1/0] via 172.16.2.1
3.0.0.0/32 is subnetted, 1 subnets
O IA 3.3.3.3 [110/1] via 172.16.2.1, 00:02:18, Vlan101
4.0.0.0/32 is subnetted, 1 subnets
C 4.4.4.4 is directly connected, Loopback0
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
O IA 172.16.1.0/24 [110/2] via 172.16.2.1, 00:02:18, Vlan101
C 172.16.2.0/30 is directly connected, Vlan101
8.0.0.0/32 is subnetted, 2 subnets
O E2 8.8.8.8 [110/1] via 172.16.2.1, 00:02:19, Vlan101
O E2 8.8.4.4 [110/1] via 172.16.2.1, 00:02:21, Vlan101
C 192.168.254.0/24 is directly connected, Vlan96
R4#
Видим, что пришли абсолютно все маршруты. Переведём зону 1 в тупиковую.
[R3]ospf 1
[R3-ospf-1]area 1
[R3-ospf-1-area-0.0.0.1]stub
[R3-ospf-1-area-0.0.0.1]
R4(config)#router ospf 1
R4(config-router)#area 1 stub
R4(config-router)#
Смотрим таблицу маршрутизации:
R4#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, E - EGP
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 172.16.2.1 to network 0.0.0.0
1.0.0.0/32 is subnetted, 1 subnets
O IA 1.1.1.1 [110/3] via 172.16.2.1, 00:01:54, Vlan101
2.0.0.0/32 is subnetted, 1 subnets
O IA 2.2.2.2 [110/2] via 172.16.2.1, 00:00:04, Vlan101
3.0.0.0/32 is subnetted, 1 subnets
O IA 3.3.3.3 [110/1] via 172.16.2.1, 00:01:54, Vlan101
4.0.0.0/32 is subnetted, 1 subnets
C 4.4.4.4 is directly connected, Loopback0
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
O IA 172.16.1.0/24 [110/2] via 172.16.2.1, 00:01:54, Vlan101
C 172.16.2.0/30 is directly connected, Vlan101
C 192.168.254.0/24 is directly connected, Vlan96
O*IA 0.0.0.0/0 [110/2] via 172.16.2.1, 00:01:54, Vlan101
R4#
Видим, что пришли все маршруты, кроме маршрутов из других автономных систем. На все остальные адреса пакеты будут маршрутизироваться по вновь пришедшему дефолтному маршруту.
Переведём зону 1 в абсолютно тупиковую. Это можно сделать только на ABR маршрутизаторе.
[R3]ospf 1
[R3-ospf-1]area 1
[R3-ospf-1-area-0.0.0.1]stub no-summary
[R3-ospf-1-area-0.0.0.1]
Посмотрим таблицу маршрутизации:
R4#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, E - EGP
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 172.16.2.1 to network 0.0.0.0
4.0.0.0/32 is subnetted, 1 subnets
C 4.4.4.4 is directly connected, Loopback0
172.16.0.0/30 is subnetted, 1 subnets
C 172.16.2.0 is directly connected, Vlan101
C 192.168.254.0/24 is directly connected, Vlan96
O*IA 0.0.0.0/0 [110/2] via 172.16.2.1, 00:00:03, Vlan101
R4#
Видим, что теперь все пакеты, кроме подключенных напрямую сетей будут маршрутизироваться по дефолтному маршруту.
На этом всё. Спасибо за внимание.
Список использованных источников
1. OSPF xgu.ru — xgu.ru/wiki/OSPF
2. К. Пакет, Д. Тир: Создание масштабируемых сетей Cisco
3. HedEx Lite — документация по оборудованию HUAWEI.
Автор: alexkoh