Cisco. OSPF. Динамическая маршрутизация
Описание
Предположим, что имеется центральный офис
с VPN-сервером и филиалы с VPN-клиентами:
ЦО
Внутренняя сеть: 192.168.250.0/24
Внешний интерфейс VPN(сервер) для филиала А: 10.10.1.2/30
Внешний интерфейс VPN(сервер) для филиала Б: 10.10.1.6/30
Внешний интерфейс VPN(сервер) для филиала Б: 10.10.1.10/30
Филиал А
Внутренняя сеть: 192.168.17.0/24
Внешний интерфейс VPN(клиент) для филиала А: 10.10.1.1/30
Филиал Б
Внутренняя сеть: 192.168.10.0/24
Внешний интерфейс VPN(клиент) для филиала Б: 10.10.1.5/30
Филиал В
Внутренняя сеть: 192.168.22.0/24
Внешний интерфейс VPN(клиент) для филиала В: 10.10.1.9/30
Loopback интерфейсы нумеруем по схеме: 172.16.255.<номер_внутренней_подсети>/32
По такой же схеме именуем router-id
Настройка
ЦО
(config)# interface loopback 0
(config)# ip address 172.16.255.250 255.255.255.255
(config)# router ospf 1
// 1 это номер процесса, непринципиален
// номер процесса OSFP на разных маршрутизаторах не обязательно должен быть одинаковым, но лучше, если это будет так
(config)# router-id 172.16.255.250
(config)# log-adjacency-changes
Логирование изменений
(config)# network 192.168.250.0 0.0.0.255 area 0
Анонсирование локальной сети ЦО за маршрутизатором используя wildcard (обратная маска),
Area 0 это не простая зона — это так называемая Backbone-area.
Это означает, что она объединяет все остальные зоны, т.е. пакет, идущий от любой ненулевой зоны в любую ненулевую, обязан проходить через area 0
(config)# network 10.10.1.0 0.0.0.255 area 0
Анонсирование сети VPN для всех филиалов на всех VPN-интерфейсах одной обратной маской
ИЛИ
(config)# network 10.10.1.2 0.0.0.3 area 0
(config)# network 10.10.1.6 0.0.0.3 area 0
(config)# network 10.10.1.10 0.0.0.3 area 0
Анонсирование сети VPN для каждого филиала на каждом VPN-интерфейсе
Командой network мы задаём не ту сеть, что будет вещать наш маршрутизатор, мы определяем интерфейсы, участвующие в процессе.
Все интерфейсы маршрутизатора, IP адреса которых попадают в настроенный диапазон включатся в процесс.
Это означает следующее:
а) с данных интерфейсов будут рассылаться Hello-сообщения, через них будут устанавливаться отношения соседства и отправляться обновления о топологии сети.
б) OSPF изучает подсети данных интерфейсов и именно их будет аносировать и следить за их состоянием. То есть не как мы настроили, а те, что удовлетворяют этому диапазону
Филиал А (Настройка остальных филиалов аналогична)
(config)# interface loopback 0
(config)# ip address 172.16.255.17 255.255.255.255
(config)# router ospf 1
// 1 это номер процесса, непринципиален
(config)# router-id 172.16.255.17
(config)# log-adjacency-changes
Логирование изменений
(config)# network 192.168.17.0 0.0.0.255 area 0
Анонсирование локальной сети ЦО за маршрутизатором используя wildcard (обратная маска),
area 0 - корневая area, все остальные ненулевые area проходят через нее
(config)# network 10.10.1.1 0.0.0.3 area 0
Анонсирование сети VPN на VPN-интерфейсе обратной маской
10.10.1.1 - адрес впн-клиента в сети 10.10.1.0/30
И сразу после этого вы видите в консоли сообщение подобное этому:
02:27:33: %OSPF-5-ADJCHG: Process 1, Nbr 172.16.255.17 on FastEthernet0/0.5 from LOADING to FULL, Loading Done
Такое же показывает и маршрутизатор в ЦО
02:27:33: %OSPF-5-ADJCHG: Process 1, Nbr 172.16.255.250 on FastEthernet0/1.5 from LOADING to FULL, Loading Done.
Аналогично настраиваем остальные филиалы
Проверка
Смотрим соседей
# show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface 172.16.255.10 1 FULL/BDR 00:00:35 10.10.1.5 FastEthernet3/0 172.16.255.22 1 FULL/BDR 00:00:35 10.10.1.9 FastEthernet4/0 172.16.255.17 1 FULL/BDR 00:00:35 10.10.1.1 FastEthernet2/0
Смотрим интерфейсы, задействованные через network 10.10.1.0 0.0.0.255 area 0
# show ip ospf interfaces
Смотрим таблицу маршрутизации
# show ip route
Gateway of last resort is not set 10.0.0.0/30 is subnetted, 3 subnets C 10.10.1.0 is directly connected, FastEthernet2/0 C 10.10.1.4 is directly connected, FastEthernet3/0 C 10.10.1.8 is directly connected, FastEthernet4/0 172.16.0.0/32 is subnetted, 1 subnets C 172.16.255.250 is directly connected, Loopback0 O 192.168.10.0/24 [110/2] via 10.10.1.5, 00:36:40, FastEthernet3/0 O 192.168.17.0/24 [110/2] via 10.10.1.1, 00:36:40, FastEthernet2/0 O 192.168.22.0/24 [110/2] via 10.10.1.9, 00:36:40, FastEthernet4/0 C 192.168.250.0/24 is directly connected, FastEthernet9/0
С помощью команды show ip protocols можно посмотреть информацию о запущенных протоколах динамической маршрутизации и их взаимосвязи
# show ip protocols
Для отладки и понимания работы протоколов будет полезно воспользоваться следующими командами
debug ip OSPF events
debug ip OSPF adj
debug EIGRP packets