Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

GRE_RECURSIVE_ROUTING Сетевое оборудование и VPN

Диагностика туннелей GRE: рекурсивная маршрутизация и Keepalive таймауты

Обновлено: 25.08.2026 · Официальная документация ↗
  • Интерфейс Tunnel циклически переходит из состояния UP в DOWN каждые несколько секунд с ошибкой %TUN-5-RECURDOWN: Tunnel0 temporarily disabled due to recursive routing.
  • Падение сессий динамической маршрутизации OSPF/EIGRP/BGP, установленных поверх GRE-туннеля.
  • Интерфейс GRE находится в статусе up/down из-за неполучения ответных Keepalive-пакетов.
  • Транзитный трафик через туннель теряется, несмотря на физическую доступность внешних адресов (Underlay IP).

1. Причина возникновения Recursive Routing

Ошибка рекурсивной маршрутизации возникает, когда маршрутизатор узнает маршрут к Tunnel Destination IP (внешнему адресу туннеля) через сам этот Tunnel-интерфейс (Overlay сеть). Маршрутизатор пытается отправить туннелированный пакет внутрь самого себя, фиксирует логическую петлю и отключает интерфейс на защитный интервал.

2. Методы устранения ошибки RECURDOWN

  • Исключение Tunnel Destination из протоколов динамической маршрутизации: убедитесь, что сети Underlay (публичные IP адреса маршрутизаторов) не анонсируются в OSPF/BGP внутри туннеля.
  • Использование статических маршрутов с высокой административной дистанцией (AD): жестко зафиксируйте маршрут к endpoint через физический интерфейс:
# Пример правильной изоляции маршрутов на Cisco IOS
ip route 203.0.113.2 255.255.255.255 GigabitEthernet0/0/0 198.51.100.1
!
interface Tunnel0
 ip address 10.255.255.1 255.255.255.252
 tunnel source GigabitEthernet0/0/0
 tunnel destination 203.0.113.2
 tunnel path-mtu-discovery
!
# Ограничение анонсов OSPF внутри туннеля
router ospf 1
 passive-interface GigabitEthernet0/0/0
 network 10.255.255.0 0.0.0.3 area 0
 network 192.168.0.0 0.0.255.255 area 0

3. Настройка и траблшутинг GRE Keepalive

По умолчанию туннель GRE не имеет механизмов проверки L2/L3 доступности и остается в статусе UP/UP даже при обрыве связи на стороне провайдера. Для быстрого переключения маршрутов включите Keepalive:

interface Tunnel0
 # Отправлять keepalive каждые 3 секунды, считать упавшим после 3 потерь (9 секунд)
 keepalive 3 3

4. Диагностика счетчиков и сбросов

show interfaces Tunnel0
show ip route 203.0.113.2
show log | include %TUN-5-RECURDOWN
💡 Практика специалистов: Для надежного разделения маршрутизации Overlay и Underlay используйте технологию VRF (Virtual Routing and Forwarding). Поместите физический интерфейс и внешнюю точку туннеля в VRF WAN (директива 'tunnel vrf WAN'), а сам интерфейс Tunnel — в глобальную таблицу маршрутизации.

Частые вопросы (FAQ)

Как работает механизм GRE Keepalive на сетевом уровне?

Маршрутизатор генерирует специальный GRE-пакет сам к себе: во внутренний заголовок помещается пакет от удаленного endpoint к локальному IP, инкапсулированный в стандартный GRE к удаленному роутеру. Удаленный роутер, получая такой пакет, просто декапсулирует его и, глядя на IP получателя, отправляет обратно инициатору.

Почему нельзя использовать маршрут по умолчанию (0.0.0.0/0) через Tunnel интерфейс без исключений?

Если направить default route в туннель, адрес Tunnel Destination также попадет под этот маршрут, что мгновенно вызовет ошибку рекурсивной маршрутизации и падение интерфейса.

Какой дополнительный оверхед (overhead) вносит чистый туннель GRE?

Чистый GRE добавляет 24 байта к каждому пакету (20 байт нового внешнего IPv4 заголовка + 4 байта базового заголовка GRE). Если включены ключи (GRE Key) или секвенция, оверхед возрастает до 28–32 байт.

Как защитить трафик внутри GRE с помощью IPsec?

Используйте профили IPsec в режиме Tunnel/Transport: создайте 'crypto ipsec profile' и примените его напрямую к туннелю командой 'tunnel protection ipsec profile <name>'.

Полезные материалы
Рекомендуем