hostprofi.ru
Подобрать хостинг
Термин·буква B

BGP

краткое определение

BGP (Border Gateway Protocol) — протокол маршрутизации между автономными системами (AS) интернета. Версия 4 (RFC 4271) — основа глобальной маршрутизации: каждый провайдер, хостинг-компания и крупная организация управляет связностью через BGP.

BGP (Border Gateway Protocol, протокол граничного шлюза) — протокол динамической маршрутизации, используемый для обмена информацией о достижимости сетей между автономными системами (AS). Автономная система — это набор IP-сетей, управляемых одной организацией с единой маршрутной политикой, обозначаемый номером ASN. BGP 4, описанный в RFC 4271 (2006), — протокол, на котором работает весь интернет.

Как работает

BGP-маршрутизаторы устанавливают TCP-соединения (порт 179) с соседями (peers/neighbors) и обмениваются информацией о сетях через UPDATE-сообщения. Каждый маршрут несёт атрибуты: AS_PATH (список AS, через которые прошёл маршрут), NEXT_HOP, MED, LOCAL_PREF и другие. BGP-роутер выбирает лучший маршрут на основе этих атрибутов по детерминированному алгоритму выбора.

Типы BGP-сессий:

  • eBGP (external BGP) — между разными AS. Используется провайдерами для обмена маршрутами с партнёрами, клиентами, на точках обмена трафиком (IX/IXP). AS_PATH увеличивается на каждом переходе.
  • iBGP (internal BGP) — внутри одной AS между маршрутизаторами. AS_PATH не изменяется, используется LOCAL_PREF для управления трафиком.

Глобальная таблица маршрутизации BGP (full routing table) содержала около 950 000 префиксов IPv4 и 200 000 IPv6 по состоянию на 2024 год. Для её хранения требуется маршрутизатор с 2+ ГБ RAM. Провайдеры малого и среднего размера часто принимают только default route (0.0.0.0/0) вместо полной таблицы.

История

BGP создан в 1989 году (BGP-1, RFC 1105) Кирком Локхидом, Якобом Рехтером и Лэни Ли. Протокол заменил EGP (RFC 904, 1984), который не поддерживал политику маршрутизации. BGP-4 (1994, RFC 1654; затем RFC 1771; актуальный — RFC 4271, 2006) ввёл поддержку CIDR и агрегацию маршрутов. Расширения BGP (RFC 4760) добавили поддержку IPv6 (MP-BGP).

BGP в хостинге

Хостинг-провайдеры используют BGP для:

  • Анонса своих IP-блоков нескольким вышестоящим провайдерам (multihoming) для отказоустойчивости.
  • Получения трафика клиентов через IX (точки обмена трафиком, например, MSK-IX, DE-CIX).
  • Управления входящим трафиком через AS_PATH prepending и BGP communities.
  • Защиты от DDoS: blackhole-routing — анонс атакуемого /32 с community 666 для «черной дыры» у upstream-провайдера.

Клиентский BGP (BGP colocation) позволяет арендатору стойки анонсировать собственный IP-блок (portable IP) через инфраструктуру дата-центра. Минимальный анонсируемый блок — /24 (256 адресов).

На что обращать внимание

BGP — вектор крупных инцидентов в истории интернета. Маршрутная утечка (route leak) 2010 года через China Telecom перенаправила ~15% мирового трафика. BGP hijacking позволяет AS захватить чужие IP-префиксы. RPKI (Resource Public Key Infrastructure) — криптографическая защита BGP-анонсов, внедряемая с 2012 года. По данным RIPE NCC, к 2024 году около 45% IPv4-адресного пространства защищено ROA (Route Origin Authorization).

BGP в контексте хостинга

Для хостинг-провайдеров BGP — основной инструмент для анонсирования своих IP-блоков в интернет. Провайдер получает ASN (Autonomous System Number) в RIPE NCC и анонсирует через BGP свои CIDR-блоки. Клиенты колокейшена могут получить собственный ASN и анонсировать через BGP-сессию с хостером. Anycast (использование одного IP-префикса с разных ПО) реализуется через BGP: провайдеры CDN (Cloudflare, Fastly) используют BGP Anycast для маршрутизации пользователей на ближайший PoP.

Безопасность BGP

BGP route hijacking — подмена маршрутов через анонс чужих IP-блоков. Знаменитые инциденты: Pakistan Telecom блокировал YouTube (2008), Rostelecom похитил трафик AWS (2020). RPKI/Route Origin Authorization — криптографическая защита BGP, внедряемая с 2012 года. Добавьте ROA для своих IP-блоков в базе RIPE.

Другие термины