Що таке BGP (протокол прикордонного шлюзу)?

BGP або Border Gateway Protocol — це один із кількох стандартизованих протоколів, які використовуються для маршрутизації мережевого трафіку в Інтернеті. BGP — це зовнішній протокол шлюзу, який відповідає за обмін інформацією про маршрутизацію та доступність. Рішення щодо маршрутизації ґрунтуються на шляхах, політиках і правилах, які адміністратор мережі встановлює для цієї мережі.

Існує ще одна версія BGP – iBGP або Interior Border Gateway Protocol. Ця версія використовується лише для маршрутизації в автономних системах. Під час використання в Інтернеті BGP означає протокол шлюзу зовнішнього кордону. У такому випадку іноді він буде згадуватися як BGP.

Історія та дія

Протокол був вперше стандартизований у 1989 році та використовується з 1994 року. Протокол залишився відносно незмінним у багатьох версіях. Поточна версія BGP – це версія 4, стандартизована в 2006 році. Ця версія підтримує адресацію CIDR, агрегацію маршрутів і багатопротокольні розширення. Багатопротокольні розширення дозволяють BGP рекламувати маршрути IPv4 і IPv6 одночасно, а не вимагати окремих протоколів.

BGP покладається на однорангові вузли – інші маршрутизатори BGP – налаштовані вручну для створення сеансу. Зокрема, сеанс TCP на порту 179. BGP є унікальним у використанні TCP як транспортного протоколу – інші типи з’єднань покладаються на UDP або, в деяких випадках, на необроблений IP. Щоб підтримувати з’єднання BGP, учасник мережевого з’єднання надсилає повідомлення підтримки активності. Іншими словами, він надсилає пусте повідомлення, яке повідомляє іншим учасникам залишатися на зв’язку через регулярні проміжки часу – за замовчуванням, 30 секунд. Адміністратор мережі може налаштувати цей інтервал.

eBGP проти iBGP

Різниця між цими двома типами BGP в основному полягає в розташуванні маршрутизатора, яке впливає на те, як маршрути передаються від однорангового вузла. Маршрутизатори iBGP працюють в одній автономній системі. Маршрутизатори eBGP розташовані на межі автономної системи. Якщо система має кілька однорангових вузлів, то однорангові вузли eBGP перебувають на межі або за межами мережі, спілкуючись із маршрутизаторами eBGP суміжних автономних систем. Однорангові вузли iBGP у цьому випадку будуть внутрішніми, які спілкуються лише один з одним, а не зовнішніми елементами.

Примітка. «Автономна система» або AS — це мережа або набір мереж, які контролюються одним об’єктом або для нього. Корпоративна мережа, наприклад, може мати численні сегменти мережі, які є частиною однієї AS.

Коли одноранговий вузол eBGP знаходить нові маршрути, вони навчаються для всіх інших однорангових вузлів у мережі. Навпаки, якщо одноранговий вузол iBGP знаходить новий маршрут, він буде навчений лише для однорангових вузлів eBGP, а не для інших однорангових вузлів iBGP. Іншими словами, незважаючи ні на що, однорангові вузли eBGP будуть навчатися будь-якому новому відкритому та встановленому маршруту, тоді як однорангові вузли iBGP будуть представлені лише деяким. Ці правила означають, що нові маршрути до зовнішніх адрес повідомляються всім внутрішнім пристроям. І навпаки, нові маршрути до внутрішньої адреси оголошуються лише за межами AS. Це засновано на припущенні, що внутрішній протокол маршрутизації вже забезпечить доступ до внутрішніх пристроїв.

Штати

Мережі BGP і однорангові вузли можуть мати кілька різних станів. Кожен стан щось означає, і більшість із них є частиною нормального процесу роботи підключення BGP. Перший стан — Idle — у цьому стані BGP ініціалізується, відмовляється від спроб з’єднання та встановлює TCP-з’єднання з одноранговим вузлом.

Другий етап — Connect (Підключити) — маршрутизатор повинен чекати завершення TCP-з’єднання. У разі успіху Connect перетворюється на OpenSent. Якщо ні, він повторює спробу підключення або повертається до початку, щоб розпочати заново.

OpenSent означає, що відправник BGP очікує на «відкрите» повідомлення від свого партнера. Потім повідомлення перевіряється на дійсність – коли воно виявляється дійсним, маршрутизатор повертає повідомлення Keepalive, а потім змінює статус на OpenConfirm. У цьому стані пристрій очікує на повідомлення KeepAlive від іншої сторони – коли воно надходить вчасно, наступний стан – встановлено. В іншому випадку він повертається в режим очікування та починає все спочатку. Іншими словами, після того, як одноранговий вузол надіслав своє повідомлення KeepAlive, він очікує те саме від інших однорангових вузлів – і коли це друге повідомлення досягає своєї мети, відбувається остаточний стан – Established.

На стадії встановлення однорангові вузли можуть вільно надсилати повідомлення оновлення для обміну інформацією про можливі маршрути між одноранговими вузлами. Якщо один із встановлених таймерів закінчується в будь-якій точці процесу або з’являється повідомлення про помилку, постраждалий вузол автоматично переходить у стан очікування та починає спочатку. Те ж саме відбувається у випадках невідповідності версій BGP і подібних проблем.

Висновок

BGP або Border Gateway Protocol — це зовнішній протокол шлюзу, призначений для оголошення інформації про маршрутизацію між автономними системами в Інтернеті. Він рекламує маршрути від внутрішніх пристроїв до зовнішніх пристроїв і дізнається про маршрути до зовнішніх адрес, щоб інформувати рішення щодо маршрутизації. BGP, як відомо, складний в управлінні та має історію зловживань під час атак BGP. Проте BGP є важливою частиною маршрутизації Інтернет-трафіку через IPv4 та IPv6.


Як клонувати жорсткий диск

Як клонувати жорсткий диск

У сучасну цифрову епоху, коли дані є цінним активом, клонування жорсткого диска в Windows може бути вирішальним процесом для багатьох. Цей вичерпний посібник

Як виправити помилку завантаження драйвера WUDFRd у Windows 10?

Як виправити помилку завантаження драйвера WUDFRd у Windows 10?

Ви стикаєтеся з повідомленням про помилку під час завантаження комп’ютера, у якому йдеться про те, що драйвер WUDFRd не вдалося завантажити на ваш комп’ютер?

Як виправити код помилки NVIDIA GeForce Experience 0x0003

Як виправити код помилки NVIDIA GeForce Experience 0x0003

Ви відчуваєте код помилки NVIDIA GeForce 0x0003 на робочому столі? Якщо так, прочитайте блог, щоб дізнатися, як швидко та легко виправити цю помилку.

Що таке SMPS?

Що таке SMPS?

Перш ніж вибрати SMPS для свого комп’ютера, дізнайтеся, що таке SMPS і значення різних показників ефективності.

Чому мій Chromebook не вмикається

Чому мій Chromebook не вмикається

Отримайте відповіді на запитання «Чому мій Chromebook не вмикається?» У цьому корисному посібнику для користувачів Chromebook.

Як повідомити Google про фішинг

Як повідомити Google про фішинг

Дізнайтеся, як повідомити про шахрая в Google, щоб запобігти йому обманювати інших за допомогою цього посібника.

Roomba зупиняється, залипає та розвертається – виправлення

Roomba зупиняється, залипає та розвертається – виправлення

Вирішіть проблему, коли ваш робот-пилосос Roomba зупиняється, залипає та продовжує обертатися.

Як змінити налаштування графіки на Steam Deck

Як змінити налаштування графіки на Steam Deck

Steam Deck пропонує надійний і універсальний ігровий досвід прямо у вас під рукою. Однак, щоб оптимізувати вашу гру та забезпечити найкраще

Що таке безпека на основі ізоляції?

Що таке безпека на основі ізоляції?

Я збирався заглибитися в тему, яка стає все більш важливою у світі кібербезпеки: безпека на основі ізоляції. Такий підхід до

Як використовувати Auto Clicker для Chromebook

Як використовувати Auto Clicker для Chromebook

Сьогодні я збирався заглибитися в інструмент, який може автоматизувати повторювані завдання на вашому Chromebook: Auto Clicker. Цей інструмент може заощадити ваш час і