Кратко

  • 26 октября сотрудник RIPE NCC Ondřej Caletka показал на RIPE 93 пример BIRD: собственная ASN добавляется к пути для проверки ASPA.
  • На слайде 57 он предупреждает, что в обычной пиринговой сессии это нарушает проверку пути «вверх».

Лишняя ASN похожа на дотошного ревизора. Клиенту она задаёт вопрос, почему тот не указал вашу сеть своим провайдером. Вам — почему в вашем ASPA отсутствует транзитный провайдер. Но ревизор, направленный к равноправному пиру, приносит не тот опросный лист: у соседа начинают требовать роль, которой у него нет.

В официальной программе RIPE 93 указан октябрьский урок Caletka. Его оригинальные слайды содержат пример фильтра для маршрута от транзитного провайдера: aspa_check(aspas, bgp_path.prepend(2121), false). Число 2121 обозначает местную ASN в примере; false выбирает нисходящую проверку. При недействительном результате фильтр отвергает маршрут, а комментарий предлагает сначала выводить результат для наблюдения.

Полученный AS_PATH обычно заканчивается на соседе BGP. Своя ASN появится в нём при дальнейшей передаче, но во входной проверке её пока нет. Слайд 57 называет две ошибки, которые так можно не заметить: клиент забыл указать вашу сеть провайдером, либо ваша сеть забыла указать своего транзитного провайдера. Включение своей ASN именно в проверяемую копию пути показывает этот локальный переход. Оно не приписывает входящему объявлению поля, которого в нём не было.

Для равноправного пира переход иной: это боковая связь, а не ещё один шаг к вышестоящему провайдеру. Исходное объяснение команды BIRD разделяет случаи: при клиентах и провайдерах свою ASN добавляют, при пирах — нет. Авторы также указывают, что проект IETF по проверке ASPA не предписывает такой приём и рассматривает локальную связь отдельно.

Руководство RIPE NCC требует отличать действительного провайдера от обычного пира в данных ASPA. Политика маршрутизатора обязана сохранить то же различие. Универсальный фильтр без надёжного описания ролей соседей сэкономит строки, а затем заставит одинаково ошибаться все унаследовавшие его сессии.

Первоисточники