BGP та ASN: як мережі обмінюються маршрутами
Інтернет складається з багатьох автономних систем, кожна з яких керує власною політикою маршрутизації. BGP дає цим мережам змогу повідомляти одна одній, які IP-префікси вони можуть доставити.
Що таке автономна система
Автономна система — група IP-мереж і маршрутизаторів під спільною адміністративною політикою. Їй може бути призначено ASN. ASN не є номером сервера чи користувача: він позначає учасника міждоменної маршрутизації.
Реєстраційні відомості про ASN корисно зіставляти зі статтею про автономні системи та даними про IP. Один оператор може використовувати кілька ASN, а один сервіс — інфраструктуру кількох операторів.
Що BGP оголошує сусідам
BGP поширює досяжність IP-префіксів разом з атрибутами маршруту. AS_PATH показує послідовність автономних систем, через які пройшло оголошення, але це не географічна карта і не гарантований шлях кожного пакета.
Політика оператора, піринг і резервні канали впливають на вибір маршруту. Тому шлях може змінитися без зміни IP-адреси призначення.
Як використовувати дані під час діагностики
Зіставте ASN і префікс з інформацією 2ip про IP, потім порівняйте спостережуваний маршрут через traceroute. Не визначайте причину аварії лише за довжиною AS_PATH: BGP показує control plane, а traceroute — обмежене спостереження data plane.
Основи BGP визначено в RFC 4271.
Де шукати проблему за рівнями
Корисно починати з межі локальної мережі. Спершу перевірте адресу інтерфейсу, маршрут за замовчуванням і DNS, потім доступність шлюзу, після цього — зовнішню адресу та віддалений сервіс. Такий порядок не змішує несправність Wi‑Fi чи Ethernet із маршрутизацією провайдера. Якщо локальний шлюз стабільний, а затримка з’являється далі, порівняйте кілька призначень і повторіть вимірювання в інший час.
Не всі проміжні пристрої зобов’язані відповідати на діагностичні пакети. Фільтрація службового трафіку, rate limiting та асиметричний маршрут можуть змінити картину, хоча прикладне з’єднання продовжує працювати.
Адреси, маршрути та мережа, яку ми спостерігаємо
Локальна адреса пристрою, публічна адреса виходу та адреса віддаленого сервісу належать до різних ділянок шляху. NAT, CGNAT, VPN, проксі, CDN та Anycast додають інші точки, тому одну IP-адресу не можна автоматично вважати ідентифікатором користувача чи фізичного сервера. Під час аналізу зберігайте адресу призначення і час вимірювання: DNS та BGP можуть привести наступний тест до іншої інфраструктури.
Для IPv6 також враховуйте кілька адрес на одному інтерфейсі, зокрема тимчасові. Вибір вихідної адреси виконує мережевий стек, і це може вплинути на спостережуваний маршрут.
Як отримати відтворюваний результат
Один тест — лише знімок. Повторюйте вимірювання серіями, фіксуйте дротове чи бездротове підключення, VPN, DNS-резолвер і фонове навантаження. Для порівняння затримки використовуйте те саме призначення, а для швидкості — однакові умови й кілька запусків. Якщо проблема виникає лише під навантаженням, окремо перевіряйте черги та bufferbloat.
Зберігайте не тільки підсумкову цифру, а й контекст. Це допомагає відрізнити постійну помилку конфігурації від короткого перемикання маршруту, перевантаження радіоефіру чи зміни віддаленого майданчика.
