Настройка OSPF через GRE и L2‑канал для отказоустойчивости
В Packet Tracer OSPF не распространяется через GRE‑туннель и L2‑канал. Узнайте, как объявить интерфейсы и задать тип сети, чтобы маршруты переключались.
Почему OSPF не распространяется в Cisco Packet Tracer, если между двумя объектами настроены два канала – GRE‑туннель и L2‑канал? Я хочу, чтобы при падении одного канала маршрутизация переключалась на другой. Ниже приведены конфигурации интерфейсов и OSPF на обоих объектах, но маршруты не обмениваются. Что может быть причиной и как исправить?
- Сеть 192.168.20.0/24 и 192.168.36.0/24.
- Интерфейсы: Tunnel0, GigabitEthernet0/0/0.10, GigabitEthernet0/0/0.236, GigabitEthernet0/0/1, и т.д.
- OSPF: router-id, network 192.168.20.0 0.0.0.255 area 1, network 192.168.236.0 0.0.0.255 area 0 (на первом объекте) и аналогично на втором.
- Соседство устанавливается, но маршруты не приходят.
Как правильно настроить OSPF, чтобы маршруты распространялись через оба канала и обеспечивалась отказоустойчивость?
Краткий ответ
OSPF не распространяется, потому что интерфейсы GRE и L2‑канала неправильно объявлены в OSPF.
Для GRE нужно явно задать тип сети point‑to‑point и использовать правильный маски wildcard (обычно /30), а интерфейс порт‑канала должен включаться в OSPF как broadcast.
После корректной настройки обеих ссылок маршруты появятся, а при падении одного канала маршрутизация автоматически переключится на другой.
Содержание
- Проверка интерфейсов и их статуса
- Почему adjacency формируется, но LSA не обмениваются
- Настройка GRE‑туннеля для OSPF
- Настройка L2‑канала (port‑channel) для OSPF
- Проверка и отладка OSPF
- Обеспечение отказоустойчивости
- Часто задаваемые вопросы
Проверка интерфейсов и их статуса
Прежде чем менять конфигурацию, убедитесь, что все интерфейсы находятся в состоянии up и имеют корректные IP‑адреса.
show ip interface brief show interfaces Tunnel0 show interfaces GigabitEthernet0/0/0.10 show interfaces Port-channel1
Если какой‑то интерфейс «shutdown» – включите его:
interface Tunnel0 → no shutdown.
Почему adjacency формируется, но LSA не обмениваются
- Тип сети – GRE‑туннели по умолчанию объявляются как broadcast.
ОSPF тогда ожидает наличие нескольких соседей, а пакеты LSA не проходят. - Wildcards – если в команде
networkуказана маска 0.0.0.255, она не совпадает с IP‑адресом /30, поэтому OSPF не объявляет интерфейс. - Router‑ID – одинаковый router‑ID на двух роутерах приводит к конфликту; хотя adjacency может формироваться, LSAs не обмениваются.
Настройка GRE‑туннеля для OSPF
interface Tunnel0 ip address 192.168.20.1 255.255.255.252 ! /30 ip ospf network point-to-point ! критично no shutdown
Важно – маска /30 и wildcard 0.0.0.3 в network:
router ospf 1 router-id 10.0.0.1 network 192.168.20.0 0.0.0.3 area 1 ! GRE
Согласно сообществу Cisco, для GRE‑туннеля обязательно задавать
point‑to‑pointтип сети, иначе LSAs не проходят.
— Решено: проблема GRE-туннеля и OSPF – сообщество Cisco
Настройка L2‑канала (port‑channel) для OSPF
interface GigabitEthernet0/0/0.10 encapsulation dot1Q 10 ip address 192.168.236.10 255.255.255.0 no shutdown interface Port-channel1 ip address 192.168.236.1 255.255.255.0 ip ospf network broadcast ! тип сети по умолчанию no shutdown
В OSPF объявляем весь диапазон:
router ospf 1 network 192.168.236.0 0.0.0.255 area 0
Проверка и отладка OSPF
| Команда | Что показывает |
|---|---|
show ip ospf neighbor |
Состояние соседей, их ID, область |
show ip ospf interface |
Какие интерфейсы участвуют, тип сети, cost |
show ip ospf database |
LSAs, которые роутер видит |
debug ip ospf events |
Подробные события OSPF (помимо обычного debug ospf packet) |
Если LSA не видны, проверьте, что wildcard в network соответствует IP‑адресу интерфейса и что тип сети правильный.
Обеспечение отказоустойчивости
-
Настройте одинаковые hello/dead интервалы на обоих интерфейсах (по умолчанию 10 с и 40 с).
bashinterface Tunnel0 ip ospf hello-interval 10 ip ospf dead-interval 40
-
Установите различный cost – более низкий для «первичного» канала, более высокий для резервного.
bashinterface GigabitEthernet0/0/0.10 ip ospf cost 10 interface Tunnel0 ip ospf cost 100
-
Проверьте, что router‑ID уникален на каждом роутере:
router ospf 1→router-id 10.0.0.1иrouter-id 10.0.0.2.
При падении GRE‑туннеля OSPF автоматически пересчитает маршруты и использует L2‑канал, и наоборот.
Часто задаваемые вопросы
-
Проблема с TTL в GRE
Убедитесь, чтоtunnel ttl 255(по умолчанию 0 – не пересекает маршрутизаторы). -
Packet Tracer не поддерживает OSPF на GRE
В версиях < 7.2 некоторые функции ограничены; обновите до последней версии. -
Маршруты не появляются, но
show ip ospf neighborпоказывает Full
Проверьте, чтоnetworkкоманды в OSPF действительно охватывают IP‑адреса интерфейсов.
Источники
- Решено: проблема GRE-туннеля и OSPF – сообщество Cisco
- Роутер с одной стороны GRE-туннеля не добавляет маршрут OSPF через туннель, в то время как роутер с другой стороны
- Трафик, отправленный в GRE-туннель, не проходит, но GRE-туннель поднят и OSPF-соседи сформированы
- Настройка GRE-туннеля поверх IPsec с OSPF – Cisco
- Руководство по настройке OSPF Cisco – тип сети
Заключение
- Для успешного обмена OSPF‑LSAs через GRE‑туннель требуется point‑to‑point тип сети, правильные wildcard‑маски и включение интерфейса в OSPF.
- L2‑канал (port‑channel) объявляется как broadcast, но может иметь более низкий cost, чтобы служить резервным маршрутом.
- После исправления конфигурации маршруты появятся, а при падении одного канала маршрутизация автоматически переключится на другой.
- Регулярно проверяйте статус соседей и LSAs с помощью команд
show ip ospf neighborиshow ip ospf database, чтобы убедиться, что отказоустойчивость работает как задумано.