Logo
  • ГЛАВНАЯ
  • ОБО МНЕ
  • СЕРТИФИКАТЫ
nocip.ssh@mail.ru
Главная  >  Cisco Routing

Next-Hop-Self в BGP: зачем нужен и когда его применять


Создана 12.11.2026
Отредактирована 12.11.2026
Если вы только начинаете изучать BGP, команда  next-hop-self  часто вызывает путаницу. Кажется, что она делает что-то сложное и неочевидное. На самом деле, за ней стоит простая и логичная идея, без которой внутренняя маршрутизация в BGP просто не работает.
В этой статье мы разберём:
  • Что такое  next-hop-self  и как он переводится.
  • Почему без него ломается передача маршрутов внутри автономной системы.
  • На каких маршрутизаторах его нужно настраивать (а на каких — нет).
  • Как это выглядит на практике в топологии с двумя автономными системами.

1. Что означает next-hop-self?

Дословный перевод — «следующий прыжок — это я».
Команда  next-hop-self  (в синтаксисе Cisco:  neighbor <IP> next-hop-self ) говорит маршрутизатору:
«Когда ты отправляешь BGP-обновление этому соседу, укажи в поле next-hop (следующий прыжок) мой собственный адрес, а не тот, который ты получил изначально».
Это не оператор и не атрибут BGP. Это локальная настройка, которая применяется в конфигурации BGP для конкретного соседа. Она заставляет маршрутизатор изменить один из атрибутов ( NEXT_HOP ) в исходящих обновлениях.

2. Проблема, которую решает next-hop-self

BGP работает в двух режимах:
  • eBGP — между разными автономными системами (AS).
  • iBGP — внутри одной автономной системы.
По умолчанию iBGP ведёт себя так: маршрут, полученный от одного iBGP-соседа, нельзя передавать другому iBGP-соседу (правило split horizon). Но есть и вторая проблема, менее очевидная.
Представьте, что пограничный маршрутизатор (ASBR) получил маршрут из внешней AS по eBGP. Он хочет передать этот маршрут своим внутренним iBGP-соседям. По умолчанию BGP не меняет атрибут next-hop при передаче по iBGP. То есть внутренние соседи получат маршрут с next-hop, указывающим на внешний адрес (например, на R1 из AS 65501).
В чём проблема?
Внутренние маршрутизаторы (R4, R5) не знают, как добраться до этого внешнего адреса. У них нет маршрута к R1. В результате маршрут помечается как недоступный (next-hop inaccessible), и трафик не идёт.

inaccessible [ɪnəkˈsesəb(ə)l] недоступный

3. Топология сети
Рис. 1.Топология сети (выполнена в GNS3)
4.  Аналогия: курьер и склад
Представьте, что BGP-маршрутизаторы — это склады, а маршруты — это посылки.
  • R1 — внешний магазин.
  • R2 и R3 — пограничные склады (ASBR).
  • R4 и R5 — внутренние склады.
Внешний магазин (R1) отправляет посылку на пограничный склад (R2). На коробке написан адрес отправителя: «Магазин R1, улица Внешняя, дом 1».
Пограничный склад (R2) должен переслать её внутреннему складу (R4). По правилам iBGP он перекладывает коробку, не меняя наклейку. R4 получает посылку и видит: «Забрать у магазина R1, улица Внешняя, дом 1». R4 в панике: «Я не знаю, где эта улица!»
Решение: вы говорите R2: «Когда ты пересылаешь посылку внутренним складам, заклеивай старую наклейку и пиши свой адрес: "Забрать у склада R2"». Теперь R4 знает, где находится R2 (потому что внутри компании работает внутренняя служба навигации — IGP, например, EIGRP). Проблема решена.

5. Когда next-hop-self нужен, а когда — нет

✅ Нужен: на пограничных маршрутизаторах (ASBR)
Команда настраивается на маршрутизаторах, которые получают маршруты из eBGP и передают их iBGP-соседям. Они «переклеивают наклейку» с внешнего адреса на свой внутренний адрес (Loopback), который внутренние соседи знают через IGP.
В нашей топологии это R2 и R3.
🚫 Не нужен: на внутренних маршрутизаторах
Внутренние (транзитные и тупиковые) маршрутизаторы не получают маршруты извне напрямую. Если они применят  next-hop-self , это не сломает сеть, но будет избыточно и нарушит оптимальную маршрутизацию (Best Path). В нашей топологии это R4 и R5.
6. Практика: настройка на топологии
Рассмотрим схему с двумя автономными системами:
  • AS 65501 — R1 (сети  10.1.1.0/26 ,  10.1.1.64/26 ,  10.1.1.128/26 ,  10.1.1.192/26 ).
  • AS 65502 — R2, R3, R4, R5 (сеть  10.1.5.0/24 ). Внутри AS работает OSPF (обеспечивает связность Loopback-адресов).
Роли
  • R2 и R3 — пограничные (ASBR), имеют eBGP-сессии с R1.
  • R4 — транзитный внутренний маршрутизатор.
  • R5 — тупиковый внутренний маршрутизатор.
Конфигурация R2 (ASBR)

router bgp 65002 bgp router-id 2.2.2.2 ! Соседство с R3 (iBGP) neighbor 3.3.3.3 remote-as 65002 neighbor 3.3.3.3 update-source Loopback0 neighbor 3.3.3.3 next-hop-self ! Соседство с R4 (iBGP) neighbor 4.4.4.4 remote-as 65002 neighbor 4.4.4.4 update-source Loopback0 neighbor 4.4.4.4 next-hop-self ! Соседство с R5 (iBGP) — если R5 должен видеть внешние маршруты через R2 neighbor 5.5.5.5 remote-as 65002 neighbor 5.5.5.5 update-source Loopback0 neighbor 5.5.5.5 next-hop-self

Конфигурация R3 (ASBR)
Аналогично R2, но для соседей 2.2.2.2, 4.4.4.4 и 5.5.5.5.
Конфигурация R4 (внутренний)

router bgp 65002 bgp router-id 4.4.4.4 neighbor 2.2.2.2 remote-as 65002 neighbor 2.2.2.2 update-source Loopback0 neighbor 3.3.3.3 remote-as 65002 neighbor 3.3.3.3 update-source Loopback0 neighbor 5.5.5.5 remote-as 65002 neighbor 5.5.5.5 update-source Loopback0 ! next-hop-self НЕ настраивается

Конфигурация R5 (внутренний)

router bgp 65002 bgp router-id 5.5.5.5 neighbor 2.2.2.2 remote-as 65002 neighbor 2.2.2.2 update-source Loopback0 neighbor 3.3.3.3 remote-as 65002 neighbor 3.3.3.3 update-source Loopback0 neighbor 4.4.4.4 remote-as 65002 neighbor 4.4.4.4 update-source Loopback0 ! next-hop-self НЕ настраивается

7. Проверка результата
На R4 или R5 выполните команду  show ip bgp  для маршрутов из AS 65501.
До настройки  next-hop-self  (на R2/R3):

BGP routing table entry for 10.1.1.0/26 ... Next Hop: 10.1.12.1 (R1) ...

Маршрут может быть помечен как недоступный, если R4/R5 не знают, как добраться до 10.1.12.1.
После настройки:

BGP routing table entry for 10.1.1.0/26 ... Next Hop: 2.2.2.2 (R2) ...

Теперь R4/R5 знают, что следующий прыжок — это R2, и успешно передают трафик.
8. Краткое резюме
Вопрос
Ответ
Что делает  next-hop-self ?
Меняет next-hop в исходящих iBGP-анонсах на собственный адрес.
Кому нужен?
Пограничным маршрутизаторам (ASBR), которые получают маршруты из eBGP.
Кому не нужен?
Внутренним (транзитным и тупиковым) маршрутизаторам.
Зачем нужен?
Чтобы внутренние соседи могли разрешить next-hop через IGP (OSPF или EIGRP).
Как настраивается?
neighbor <IP> next-hop-self  в режиме  router bgp .
Теперь, если через месяц вы забудете, зачем нужна эта команда, достаточно вспомнить аналогию с курьером: пограничный склад переклеивает наклейку, чтобы внутренний склад знал, у кого забрать посылку.

Приветствуем всех любителей ретро-игровой индустрии на канале RetraR
Сувенирная и брендированная продукция с персонажами из любимых игр.
RetraR — Компьютерные игры для Nintendo Game Boy
RetraR - Computer games for Nintendo Game Boy 🌌🛸👽👾☄️🤖
RetraR - 任天堂ゲームボーイ用コンピュータゲーム 🎮🕹️👾

RetraR в VK
Канал - RetraR в Telegram
Канал - RetraR в Telegram

Оформить заказ

Нажимая на кнопку, вы даете согласие на обработку персональных данных

Спасибо за заказ

Ваш заказ принят в обработку. 

Мы свяжемся с вами в ближайшее время.