logo
Part_3

Використання протоколу icmp для маршрутизації

В процесі раутінгу використовується також протокол ICMP. Наприклад, коли раутер отримує IP-данограму, яку він не може доручити, то у відповідь до джерела він генерує ICMP-повідомлення про помилку “комп’ютер недосяжний”. Це може спричинене як тимчасовою відсутністю зв’язку раутера з необхідним напрямком, так і відсутністю необхідного маршруту в таблиці раутінгу (у випадку, коли відсутній запис маршруту за замовчуванням).

Ще один випадок використання ICMP - це генерування раутером ICMP-повідомлення про переспрямування вибраного маршруту. Таке повідомлення генерується тоді, коли IP-данограма, надіслана до цього раутера, повинна була бути вислана до іншого раутера.

ICMP-повідомлення про переспрямування можна з’являється у мережі лише тоді, коли станція має вибір з двох або більше раутерів і внаслідок неповноти таблиці раутінгу висилає IP-данограму до невірного раутера (часто до раутера за замовчуванням). Розглянемо 3.36, де показано робочу станцію A та два раутери R1 і R2, під’єднані до мережі Net 0.

Р ис. 3.36. Приклад ICMP-повідомлення про переспрямування.

Саме при такій конфігурації можна побачити ICMP-повідомлення про переспрямування. Додатковою умовою є те, що станція A має встановлений маршрут за замовчуванням до раутера R1, та в її таблиці раутінгу відсутній запис, який скеровував би до раутера R2 данограми, адресовані до мережі Net 1. Відсутність такого запису може бути виправдана бажанням максимально спростити конфігурацію робочих станцій, в якій, наприклад, вказується тільки раутер за замовчуванням. Тоді процес визначення маршруту відбувається у такій послідовності:

  1. Робоча станція A, не знайшовши в таблиці раутінгу запису для маршруту до станції, яка міститься у мережі Net 1, користується маршрутом за замовчуванням і пересилає IP-данограму до раутера R1.

  2. Раутер R1, маючи повнішу таблицю маршрутизації, ніж станція A, знає, що маршрут до мережі Net 1 пролягає через R2, і тому пересилає йому цю данограму.

  3. Оскільки R1 відіслав IP-данограму через той самий мережевий інтерфейс 200.1.2.1/24, від якого він її прийняв, то робиться висновок, що пакет непотрібно було надсилати до R1, а до раутера R2, який розташований у тій самій підмережі, що й R1. Тому R1 генерує ICMP-повідомлення про переспрямування, де вказує, куди повинна бути вислана IP-данограма.

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

Наведемо декілька правил що стосуються ICMP-переспрямувань:

Перш ніж раутер згенерує ICMP- переспрямування, він здійснює такі перевірки:

Крім того, робоча станція, яка прийняла ICMP-переспрямування, здійснює ряд перевірок, перш ніж модифікувати свою таблицю раутінгу:

Незважаючи на значну перевагу ICMP-переспрямувань для мереж порівняно з переспрямуваннями до окремих станцій, раутери не повинні використовувати перших без мережевих масок. Це частково пов’язане з розбиттям мереж на підмережі, оскільки адресу підмережі без маски важко відрізнити від адреси конкретного комп’ютера.

Ще одним методом модифікації таблиць раутінгу станцій є ICMP-повідомлення, призначені для виявлення раутерів. Наприклад, станція, яка тільки що увімкнулася та має лише маршрут за замовчуванням, починає генерувати ICMP- повідомлення “запит раутера” до всіх або до групи станцій у мережі (повідомлення broadcast або multicast). Один або декілька раутерів відповідають своїми ICMP-повідомленнями “оголошення раутера”, в яких міститься інформація про вміст їх таблиць маршрутизації. Додатково раутери періодично генерують ці ICMP-повідомлення до всіх або до групи станцій. Це дозволяє станціям, які прослуховують середовище та чекають на інформацію про маршрути, постійно поновлювати свої таблиці маршрутизації, однак цей метод не знайшов широкого практичного застосування.

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4