Раутінг в IP-мережах
Раутінг (маршрутування) – основні поняття
В системах пакетної комутації термін раутінг (маршрутування - routing) стосується до процесу вибору шляху (маршруту), вздовж якого передають пакети, та організації процесу пересилання пакетів вздовж визначеного шляху. Термін раутер (раутер- router) стосується до комп’ютера, який здійснює пошук такого шляху. Станції в мережі ідентифікуються іменами, адресами та маршрутами. Ім’я визначає, чим є об’єкт, адреса - де він розташований, маршрут - як його осягнути.
Раутінг (маршрутування):
Процес визначення і призначення маршруту (шляху) або методу, який повинен бути використаний для встановлення сполучення або пересилання повідомлень.
Маршрут:
В операціях комунікаційних систем – це географічний шлях, який є наслідком виклику або повідомлення, і прокладений через кола (канали), використані для встановлення послідовності сполучень.
Визначає шлях, який перебувають виклики або повідомлення в комунікаційній мережі.
Примітка: В мережах, які використовують протокол TCP/IP, кожна IP-данограма маршрутується окремо. Маршрут слідування данограми може містити багато раутерів і багато фізичних мереж.
Раутер:
У комунікації даних – це функціональний пристрій, який вживається для взаємосполучення двох або більше мереж.
Примітка 1. Раутери діють на Мережевому рівні еталонної моделі OSI.
Примітка 2. Раутери читають Мережеві адреси всіх пакетів, які танспортуються через мережу, і висилають тільки ті пакети, які адресовані до інших мереж.
Примітка 3. В офіційних документах (RFC), які описують TCP/IP, раутер називають шлюзом (gateway).
Раутінг необхідний , виходячи з таких міркувань:
Сполучення різнорідних мереж. Оскільки IP діє на Мережевому рівні еталонної моделі OSI, то при сполученні різнорідних (як за топологією, так і за IP-адресами) IP-мереж необхідний раутінг замість операцій мостів (останні здійснюються на Канальному рівні).
Стратегія проектування. Раутінг необхідний як частина стратегії проектування, оскільки мережа повиння будуватися за модульним принципом. При цьому існує збірка мереж, які необхідно об’єднати разом, і раутінг є тим засобом, який може забезпечити таке об’єднання.
Безпека. Виходячи з потреб організації, необхідно встановити певні правила безпеки для мережі. Ці правила є нічим іншим, як запобіганням доступу певних користувачів до певних даних. Контроль за доступом звичайно здійснюється на Мережевому рівні і називається фільтрацією. Раутер здійснює функцію фільтрації за допомогою впровадження певних правил, сформованих мережевим адміністратором.
Сполучення з віддаленими об’єктами. Технології WAN, які використовуються для сполучення з віддаленими об’єктами (наприклад, з філіями організації), у більшості випадків впроваджуються через раутери. Раутер діє через придатний інтерфейс WAN, залежно від типу мережі, вибраної для транспортування інформації на Канальному та Фізичному рівнях (X.25, Frame Relay, ISDN тощо), та через інтерфейс LAN (yаприклад, Ethernet), так що віддалений об’єкт може бути сполучений з центром.
Таким чином, об’єднання мереж (internet) складається із фізичних мереж, з’єднаних між собою через раутери. Кожен раутер з’єднаний безпосередньо з двома або більше мережами. Відзначимо, що вузол-станція звичайно під’єднаний до однієї фізичної мережі. Однак можливі вузли-станції, під’єднані до декількох мереж (multi-homed host). Стандарт TCP/IP проводить чітку різницю між функціями вузла-станції (host) і функціями раутера. Основна різниця між раутером і станцією (навіть коли вона приєднана до декількох мереж одночасно - multihomed), з точки зору маршрутизації є те, що станція ніколи не пересилає пакети між своїми мережевими інтерфейсами, тоді як для раутера це (IP forwarding) основна його функція. Мережа, яка пробує одночасно сумістити функції вузла і раутера в одному комп’ютері, виявляє, що цей комп’ютер здійснює несподівані взаємодії з іншими вузлами в мережі. Тому слід відділяти функції вузла-станції та раутера і прийняти, що вузол-станція не здійснює функції раутера з пересилання пакетів від однієї мережі до іншої.
Раутінг забезпечує можливість переміщення інформації через об’єднання мереж від джерела до призначення. Доки повідомлення пересилається в межах однієї фізичної мережі або підмережі, то будь-які проблеми раутінгу вирішуються за допомогою технологій, властивих даному типу мережі. Наприклад, стандарт Ethetnet визначає спосіб, у який довільна станція-джерело може комунікуватися із станцією-призначенням всередині цієї ж мережі. IP-раутінг впроваджується передовсім тоді, коли повідомлення необхідно пересилати від станції джерела, розташованої в одній мережі, до призначення, розміщеного в іншій мережі, можливо, з іншою мережевою технологією на Фізичному та Канальному рівнях. Тоді повідомлення пересилається через шлюз (раутер), який об’єднує ці дві мережі, коли вони суміжні, або через ряд проміжних вузлів-раутерів, якщо мережі несуміжні. Тільки коли повідомлення поступає до раутера, який міститься у тій самій мережі, що й призначення, то застосовується власна мережева технологія для доручення цього повідомлення до станції-призначення.
Раутінг в об’єднанні мереж, як правило, спричиняє потребу застосування протоколів Рівня 3 (Мережевого рівня) еталонної моделі OSI. Мережевий рівень використання як мережевих адрес, так і фізичних, точніше, MAC-адрес індивідуальних станцій (вузлів). Адреса станції Мережевого рівня та MAC-адреса мережевого адаптера є принципово різними типами адрес, тому перед передаванням вони повинні бути “розв’язані”, тобто між ними повинна бути встановлена взаємно однозначна відповідність.
Раутінг часто протиставляється бріджінгу (операціям мостів), який виконує подібні завдання. Основна різниця між ними полягає в тому, що бріджінг діє на Рівні 2 (Канальний рівень), тоді як раутінг працює на Рівні 3 (Мережевий рівень) еталонної моделі OSI. Ця відмінність забезпечує раутінг і бріджінг різною інформацією для використання при переміщенні інформації від джерела до призначення. В результаті бріджінг і раутінг виконують свої завдання різним чином і у дійсності існують окремі відмінні види раутінгу і бріджінгу.
Отже, ми зосереджуємося на міжмережевій маршрутизації або IP-раутінгу (internet routing, IP routing). Це називають ще IP-пересиланням (IP-forwarding) або IP-комутацією (IP-switching), а необхідну інформацію називають раутінговою інформацією IP (IP routing information).
Раутінг включає два основні види дій (компоненти раутінгу):
встановлення шляху (маршруту) пересилання пакетів, оптимального згідно з вибраним критерієм (метрикою);
транспорт пакетів через об’єднання мереж. Це ж саме також називають комутацією (switching) на Рівні 3.
Комутація відносно проста, з іншого боку, визначення маршруту може бути дуже складне.
Встановлення маршруту
Можливі різні способи для знаходження маршрутів між мережами. Одним із вживаних способів категоризування цих способів є тип інформації, якою необхідно обмінюватися між раутерами для знаходження маршруту. Приймається, що кожен об’єкт (станція або раутер), які є беруть участь у роботі протоколу раутінгу, зберігають інформацію про всі призначення всередині системи. Загалом інформація про всі об’єкти, під’єднані до одної мережі, підсумована в окремому вході (рядку) таблиці - бази даних раутінгу, яка описує маршрути до всіх призначень у цій мережі. Це підсумування можливе тому, що в IP-мережах раутінг прозорий для станцій. Кожен вхід у цій базі даних раутінгу містить адресу наступного стрибка, тобто раутера, до якого повинні висилатися данограми, призначені для об’єкта. Вважається, що конкретне призначення може бути осягнене оптимальним чином через висилання пакету до раутера, який репрезентує “наступний стрибок” на шляху до призначення. Коли раутер приймає вхідний пакет, то він перевіряє адресу призначення і пробує осягнути цю адресу через наступний стрибок. Основна відмінність між раутером і типовою станцією з точки зору раутінгу полягає в тому, що станція звичайно має мало інформації щодо структури мережі, до якої вона під’єднана. Більшість станцій мають тільки два маршрути у своїй таблиці раутінгу: маршрут до локальної мережі і маршрут за замовчуванням (default route) до найближчого раутера. Станція висилає всі нелокальні данограми до локального раутера для подальшого їх доручення. Раутери також можуть маршрутувати данограми на підставі часткової інформації, однак, тільки за певних передумов.
Вхід таблиці раутінгу може включати “метрику”, яка визначає повну відстань до об’єкта. Метрика – це стандарт вимірювання, наприклад, довжина шляху, яка вживається в алгоритмах раутінгу для визначення оптимального шляху до призначення. Довжина шляху або відстань у цьому контексті є загальним поняттям, яке охоплює часову затримку при пересиланні повідомлень, грошову вартість пеерсилання повідомлень, якість зв’язку і багато іншого. Загалом вид інформації про маршрути залежить від застосованого алгоритму раутінгу. Формально, якщо можливе безпосереднє сполучення між об’єктами i та j (тобто без пересилання через інший раутер між ними), то із стрибком між i та j можна пов’язати вартість (метрику) d(i,j), яка повинна задовільняти таким постулатам:
d(i,i) = 0;
d(i,j) > 0 для ij;
d(i,j) d(i,k) + d(k,j)
Хоч раутінг в основному базується на інформації про мережі, однак водночас необхідне зберігати маршрути до індивідуальних станцій. При розгляді алгоритму в абстрактних термінах зручно говорити про вхід таблиці раутінгу для мережі як скорочення для входів таблиці для всіх об’єктів, під’єднаних до цієї мережі. Це має сенс тому, що ми розглядаємо мережу як таку, що не має видимої внутрішньої структури із IP-рівня (при розгляді її з позиції мережевої частини IP-адреси). Тоді всім об’єктам у даній мережі можна приписати ту саму відстань.
Вище було вказано, що кожен об’єкт зберігає таблицю раутінгу з одним входом для кожного можливого призначення в системі. Наприклад, реальне впровадження може вимагати збереження такої інформації для кожного призначення:
адреса: у IP-впровадженнях цього алгоритму це може бути IP-адреса станції або мережі;
шлюз: перший шлюз (раутер) вздовж маршруту до призначення;
інтерфейс: фізична мережа, яка повинна бути використана для досягнення першого шлюзу (раутера);
метрика: число, яке позначає відстань до призначення;
таймер: інтервал часу від моменту, коли даний вхід був змодифікований.
Крім того, може бути включені різні прапорці та інша додаткова інформація.
База даних (таблиця) раутінгу ініціюється описом об’єктів, які безпосередньо під’єднані до системи. Раутери обслуговують свої таблиці раутінгу, пересилаючи різні повідомлення між суміжними (сусідніми) раутерами. Повідомлення модифікації маршруту є одним з таких повідомлень. Модифікація маршруту загалом містить всю таблицю раутінгу або її частину. Аналізуючи модифікації маршрутів від усіх суміжних раутерів, даний раутер може побудувати детальну картину мережевої топології.
Для визначення оптимального маршруту раутери порівнюють метрики. Різноманітні вживані метрики буде розглянено пізніше. У звичайному випадку, коли всі об’єкти даної мережі вважаються однаковими, метрика d(i,j) однакова для всіх призначень у даній мережі, щоб отримати метрику для всього маршруту, слід додати вартості окремих стрибків, які утворюють маршрут.
Нехай D(i,j) представляє метрику найкращого маршруту від об’єкта i до об’єкта j, а d(i,j) – вартість одного стрибка, тобто безпосереднього переходу від об’єкта i до об’єкта j. d(i,j) безмежна, якщо об’єкти i та j не є суміжними. Оскільки вартості адитивні, то найкраща метрика визначається виразом
EMBED Equation.3
і найкращий маршрут розпочинається пересиланням пакету від об’єкта i до такого суміжного об’єкта k , для якого EMBED Equation.3 має мінімальне значення. Зауважимо, що при обчисленнях можна обмежитися тільки до значень k, які відповідають об’єктам, суміжним із об’єктом i, оскільки для інших k значення d(i,k) безмежне і впроваджений доданок ніколи не приведе до мінімуму.
Обчислення метрики може бути здійснене на підставі простого алгоритму, який базується на викладеному вище. Об'єкт i звертається до своїх сусідів k, щоб вони вислали свої значення відстаней до призначення j . Коли об'єкт i отримує значення від об’єкта k, то він додає d(i,k) до кожного числа. Це значення вартості переходу через мережу між i та k. Тоді об'єкт i порівнює значення від усіх своїх сусідів і вибирає найменше. Цей алгоритм збігається до коректних значень D(i,j) за скінченний час при відсутності змін у топології (наприклад, відмова раутера означає зміну топології мережі). Не здійснюється жодних припущень щодо початкових значень D(i,j) , за винятком того, що вони не від’ємні, а також щодо того, коли здійснюється висилання повідомлень про відстані. Тому алгоритм може обслуговувати зміни. Коли система змінюється, то алгоритм раутінгу розпочинає зміни до нової рівноваги, використовуючи старий стан як вихідний пункт.
Підсумуємо, що здійснює станція або шлюз G. Для кожного призначення у системі G може зберігати поточне значення метрики до цього призначення, тобто повну вартість його досягнення, а також ідентифікацію сусідніх шлюзів, на даних від яких базується ця метрика. Якщо призначення є мережею, безпосередньо сполученою із G, то G просто використовує вхід, який показує вартість використання мережі і факт, що непотрібно жодного шлюза для досягнення призначення. Можна просто показати, що як тільки обчислення збігаються до коректного значення метрики, то сусід, записаний за допомогою такої техніки, фактично є першим шлюзом на шляху до призначення. Загалом поєднання адреси призначення, метрики і шлюза (раутера) звичайно називають маршрутом до даного призначення із даною метрикою з використанням даного шлюза.
Для будь-якого об’єкта, який є учасником роботи протоколу раутінгу, виконується наступна процедура:
Зберігається таблиця із входом для кожного можливого призначення у системі. Вхід містить відстань D до призначення і перший шлюз G на маршруті. Концептуально можливий вхід для самого об’єкта з метрикою 0.
Періодично висилаються модифікації раутінгу до кожного сусіда. Модифікація – це система повідомлень, які містять інформацію із таблиці раутінгу – вхід для кожного призначення із відстанню до цього призначення.
Коли модифікація раутінгу прибуває від сусіда G , слід додати вартість, пов’язану із мережею, спільною із G. Це може бути мережа, через яку поступають модифікації. Далі слід обчислити результуючу метрику D і порівняти її із значенням у поточному вході таблиці раутінгу. Якщо нове значення D для призначення N менше від наявного значення D, то прийняти новий маршрут, тобто змінити вхід таблиці раутінгу для N із метрикою D і шлюзом G . Якщо раутер, від якого прийшла модифікація, від повідає раутеру для чинного маршруту, тобто якщо G = G, то слід використати нову метрику, навіть коли вона більша від чинної.
Вище описано алгоритм, якого дотримуються станції та раутери для пересилання данограм, і показано, що для цього застосовуються таблиці раутінгу. Кожен вхід таблиці раутінгу визначає мережеву частину адреси призначення і вказує адресу наступного вузла вздовж шляху, використаного для досягнення цієї мережі. Однак вище не дана відповідь на питання: як раутер отримує значення, які повинні бути поміщені в таблицях. Відповідь залежить від складності архітектури мережі та її розміру. Загалом встановлення маршрутів включає їх ініціювання та модифікацію. Кожен раутер при старті повинен встановити початкову систему маршрутів і повинен їх модифікувати при виникненні змін, наприклад, при відмові мережевого інтерфейсу. Спосіб ініціювання маршрутів залежить від операційної системи. Можливі, наприклад, зберігання таблиці раутінгу на жорсткому диску і поміщення її в оперативну пам’ять при старті, початок роботи з порожньої таблиці та заповнення її шляхом виконання певних наперед визначених команд, виведення початкової системи маршрутів з множини адрес локальної мережі, до якої під’єднаний вузол, і запитування додаткових маршрутів у сусідніх вузлів. Після побудови початкової таблиці раутінгу раутер мусить пристосовуватися до змін маршрутів.
У малих мережах з повільними змінами мережевий адміністратор може встановлювати і модифікувати маршрути вручну. У великому середовищі з частими змінами це необхідно здійснювати автоматично. Відповідно до цього алгоритми рацтінгу поділяють на статичні та динамічні.
Статичні алгоритми раутінгу найбільш жорсткі з усіх. Відображення таблиць раутінгу здійснює мережевий адміністратор перед початком раутінгу і тільки він може змінювати їх. Алгоритми, які використовують статичний раутінг, прості для проектування і добре працюють в середовищах, де мережевий трафік відносно прогнозований і будова мережі відносно проста. Оскільки системи із статичним раутінгом не можуть реагувати на зміни в мережі, вони в загальному вважаються непридатними у сьогоднішніх великих, постійно змінни мережах. Переважна більшість алгоритмів раутінгу, які застосовуються у 90-х роках, є динамічними.
Динамічні алгоритми раутінгу достосовуються до змінних обставин у мережі в реальному часі. Це здійснюється через аналіз вхідних повідомлень про модифікацію раутінгу. Якщо повідомлення відзначає, що з’явилися зміни в мережі, то програмне забезпечення раутера перераховує маршрути і висилає нові модифікаційні повідомлення. Ці повідомлення поширюються крізь мережу, спонукаючи раутери виконувати свої алгоритми раутінгу і відповідно змінювати таблиці раутінгу.
Алгоритми динамічного раутінгу можуть використовувати статичні маршрути. Наприклад, раутер останнього звертання (раутер, до якого висилаються всі незмаршрутизовані пакети) може бути призначеним. Цей раутер діє як склад для всіх незмаршрутизованих пакетів, забезпечуючи, що всі повідомлення будуть нарешті обслужені певним чином.
Комутація.
Алгоритми комутації відносно прості та в основному такі самі у більшості протоколів раутінгу. У більшості випадків станція визначає, що вона повинна вислати пакет до іншої станції або раутера. Отримавши певним чином адресу раутера, станція-джерело висилає пакет, адресований до конкретної MAC-адреси, однак з адресою Мережевого рівня станції-призначення.
Перевіривши Мережеву адресу призначення, раутер визначає, чи він знає, як переслати пакет за адресою наступного стрибка. Якщо раутер не знає, як переслати пакет, він звичайно відкидає його, в іншому випадку раутер змінює MAC-адресу призначення на адресу наступного стрибка і висилає пакет.
Наступний стрибок може бути або не бути остаточною адресою станції призначення. Якщо ні, то наступний стрибок звичайно є іншим раутером, який здійснює аналогічний процес прийняття рішення. Коли пакет переміщається через мережу, то його MAC-адреса змінюється, але Мережева адреса залишається постійною. Цей процес зображений на рис. 3.32.
EMBED Visio.Drawing.5
Рис. 3.32. Процес комутації на Рівні 3.
Вище описано комутацію між прикінцевими системами джерела та призначення. ISO опрацювала ієрархічну термінологію, придатну для описання цього процесу. Використовуючи цю термінологію, мережеві пристрої, нездатні до висилання пакетів між підмережами, називають прикінцевими системами (End System – ES), тоді як пристрої, що мають цю здатність – проміжними системами (Intermediate System - IS). IS надалі ділять на такі, що маршрутизують всередині домену (interdomain IS), і такі, що здійснюють міждоменний раутінг (interdomain IS). Домен раутінгу загалом складається з частини об’єднання мереж, адміністрованої окремою організацією з окремими правилами адміністрування. Домени раутінгу також називають автономними системами. З певними протоколами домени раутінгу можуть також бути поділені на області раутінгу, але протоколи міждоменного раутінгу можуть вживатися для комутації як всередині області так і між областями.
Маршрутовані протоколи і протоколи раутінгу
Поширена плутанина між поняттями маршрутованих протоколів та протоколів раутінгу (маршрутизації). Маршрутованими протоколами є протоколи, які дозволяють маршрутувати свої пакети через об’єднання мереж. Прикладами таких протоколів є Internet Protocol (IP), DECnet, AppleTalk, NetWare, OSI, Banyan VINES і Xerox Network System (XNS). Протоколи раутінгу (маршрутизації) – це протоколи, які впроваджують алгоритми маршутування. Приклади таких протоколів – це Interior Gateway Routing Protocol (IGRP), Enhanced Interior Gateway Routing Protocol (EIGRP), Open Shortest Path First (OSPF), Exterior Gateway Protocol (EGP), Border Gateway Protocol (BGP), OSI Routing, Advanced Peer-to-Peer Networking, Intermediate System to Intermediate System (IS-IS) та Routing Information Protocol (RIP).
Прямий і непрямий раутінг.
Концептуально IP-маршрутування є простим, особливо для робочої станції. Якщо призначення безпосередньо під’єднане до робочої станції (наприклад, через PPP-зв’язок), або міститься в одному і тому ж сегменті мережі (наприклад Ethernet), то IP-данограма безпосередньо пересилається до місця призначення, інакше станція пересилає IP-данограму до раутера і покладається на те, що він доручить данограму за призначенням. Відповідно до цього розрізняють прямий і непрямий раутінг.
Прямий раутінг і використання ARP
Прямиий (локальний) раутінг або пряме доручення – це пересилання IP-данограми від одного вузла безпосередньо до іншого в рамках однієї фізичної мережі з використанням однієї фізичної передавальної системи (наприклад, тільки Ethernet). Пряме доручення, як правило, не використовує раутерів. Передавач упаковує IP-данограму в фізичні рамки, позначає IP-адресу призначення фізичною адресою і висилає ці рамки безпосередньо за призначенням. Передавач може встановити, що можна використати пряме доручення за співпадінням мережевих префіксів IP-адрес: власної та адресата, тобто коли мережеві частини адрес ідентичні. Пряме доручення здійснюється у такій послідовності:
Станція-джерело порівнює мережеву частину адреси призначення з мережевою частиною адреси власної мережі.
Якщо ці мережеві частини адрес тотожні, то станція здійснює пошук у власній таблиці протоколу ARP або здійснює ARP-запит для знаходження фізичної адреси станції-призначення.
Коли інформація отримана, станція відображає фізичну адресу на IP-адресу і висилає цю інформацію на Канальний рівень для подальшого інкапсулювання в рамку Ethernet і пересилання.
Наприклад, розглянемо малу IP-мережу, яка містить один Ethernet-сегмент і три вузли (рис.3.33). Нехай мережева IP-адреса цього Ethernet-сегмента дорівнює 200.1.2. Номери станцій A, B і C відповідно дорівнюють 1, 2, 3. Це адреси класу C і тому всього у мережевому сегменті можна мати до 254 вузлів. Кожен із цих вузлів має відповідну Ethernet-адресу довжиною 6 байтів (48 бітів). На цьому і наступних рисунках мережева частина IP-адреси виділена товстим шрифтом.
EMBED Visio.Drawing.5
Рис. 3.33. Приклад прямого раутінгу в односегментній мережі.
Приймемо, що станція A висилає пакет до станції C і що вона знає IP-адресу станції C. Щоб вислати такий пакет через Ethernet, станція A повинна знати Ethernet-адресу станції C. Для цього станція A вживає протокол ARP, який має внутрішню таблицю IP-адрес і відповідних їм Ethernet-адрес. При відсутності потрібного входу в таблиці протокол ARP висилає широкомовну Ethernet-рамку через сегмент до всіх вузлів у сегменті (3.34, а).
EMBED Visio.Drawing.5
Рис. 3.34. Розв’язання адрес за допомогою ARP.
Якщо один із вузлів має потрібну IP-адресу (в даному випадку це вузол C), то він повідомляє свою Ethernet-адресу станції A у рамці-відповіді (рис.3.34, б). Тоді станція A модифікує свою таблицю ARP і використовує Ethernet-адресу для скерування пакету, інкапсульованого в рамку Ethernet, безпосередньо до станції C.
Непрямий раутінг
Непрямий (віддалений) раутінг або непряме доручення стосується до ситуації, коли станція-джерело і станція-призначення мають різні мережеві адреси. У цьому випадку використовується раутер. Непряме доручення значно складніше від прямого, бо в загальному випадку вузол-передавач мусить ідентифікувати раутер, до якого слід переслати IP-данограму, а цей раутер повинен вислати данограму в напрямку до мережі-призначення.
Нехай станція-джерело висилає повідомлення за фізичною адресою раутера, визначивши на Мережевому рівні мережеву адресу віддаленої мережі. Завдання раутера полягає, по-перше, в утриманні таблиці раутінгу і, по-друге, у висиланні пакету до наступного придатного раутера. Цей процес продовжується до досягнення мережі-призначення. Якщо мережева адреса станції повинна бути пов’язана з її фізичною адресою, то раутер здійснює кроки, вказані вище в п.п. 1) та 2).
Щоб коректно передавати IP-данограми, станція і раутер керуються інформацією щодо призначення (мережі, підмережі, станції) і способу її досягнення. Ця інформація утримується в таблиці раутінгу у кожній станції або в раутері. Станції звичайно зберігають тільки мінімум інформації, залишаючи раутерам основний обсяг інформації про раутінг. Зокрема, раутери зберігають фізичні адреси раутерів, під’єднаних до локального сегменту мережі. Зауважимо, що для економії місця в пам’яті та більшої ефективності при маршрутизації раутери звичайно використовують адреси мереж, а не безпосередньо адреси станцій в мережах.
Станція передає до раутера всі пакети, призначені для мереж поза даним локальним сегментом. Таблиця раутінгу містить входи до всіх мереж, безпосередньо сполучених з даною мережею. Ця таблиця може містити маршрути до окремих станцій і маршрути за замовчуванням. Кожний вхід таблиці раутінгу має щонайменше два поля:
одне поле містить адресу мережі або станції призначення Рівня 3;
інше поле містить IP-адресу наступного раутера або шлюза, до якого повинна бути вислана данограма з даною адресою призначення, якщо призначенням не є суміжна мережа.
Наступний раутер або шлюз повинен бути розташований у суміжній мережі., тобто у мережі, безпосередньо сполученій з даною. Якщо станція-джерело встановить, що станція-призначення данограми не міститься у суміжній мережі, то здійснюються такі кроки:
Програмне раутінгове забезпечення станції перевіряє свою таблицю раутінгу, щоб побачити, чи ця таблиця містить вхід для станції-призначення. Якщо такий вхід знайдено, то данограма висилається до станції-призначення.
Якщо вхід для станції-призначення не знайдено, то здійснюється перевірка таблиці раутінгу на наявність у ній входу для мережі-призначення данограми. Якщо такий вхід знайдено, то данограма висилається до відповідного раутера або шлюза.
Якщо вхід для мережі-призначення не знайдено, то таблиця раутінгу перевіряється на наявність входу для раутера або шлюза за замовчуванням. Якщо такий вхід знайдено, то данограма висилається до відповідного раутера або шлюза.
Якщо відсутні раутер або шлюз за замовчуванням, то генерується повідомлення про помилку.
Коли данограма прийнята раутером або шлюзом, описаний процес (п.п. 1-4) повторюється.
Для прикладу розглянемо дві окремі сегменти мережі Ethernet – Net 0 і Net 1, сполучені через раутер R (рис.3.35), кожен сегмент із своєю мережевою адресою класу C.
EMBED Visio.Drawing.5
Рис. 3.35. Приклад непрямого раутінгу між двома мережевими сегментами. Позначено: Ether(x) - Ethernet-адреса станції x; IP(x) - IP-адреса станції x.
Приймемо такий розподіл адрес:
Така адресація необхідна для того, щоб раутер знав, котрий його мережевий інтерфейс слід використати для досягнення певного вузла і яка мережева адреса приписана кожному інтерфейсу раутера. Раутінг можна здійснити на підставі такої таблиці:
Якщо станція A висилає пакет до станції E, то вона повинна спочатку вислати його до раутера G, який пересилає пакет до станції E, як це показано стрілками на рис.3.35. Це здійснюється таким чином, що рамка Ethernet, яку станція A висилає до раутера G, має Ethernet-адресу призначення відповідного інтерфейсу раутера, але інкапсульований пакет містить IP-адресу призначення для станції E. Раутер приймає рамку, виділяє IP-адресу призначення, інкапсулює пакет в рамку з Ethernet-адресою станції E та висилає його у сегмент 200.1.3. При потребі раутер G виявляє Ethernet-адресу станції E, використовуючи протокол ARP. Зауважимо, що станція A не може безпосередньо визначити Ethernet-адресу станції E, бо остання розташована в іншій мережі, що встановлюється через порівняння мережевих адрес обидвох сегментів.
Слід завжди пам’ятати що IP адреса призначення, в даному випадку адреса станції E, ніколи не змінюється в пакеті (крім випадків використання примусового маршруту). Адреса призначення рамки на Канальному рівні завжди змінюється для того, щоб IP-данограму можна було переслати до відповідних раутерів.
З останнього прикладу видно, чому раутер G повинен мати дві IP-адреси – по одній для кожного інтерфейсу. Саме завдяки цьому станції в сегменті 200.1.2, зокрема, станція A, знають, що відповідний інтерфейс раутера належить до даного сегменту і можуть знати Ethernet-адресу цього інтерфейсу. Раутер, у свою чергу, знає мережеві адреси кожного свого інтерфейсу і тому може спрямовувати IP-пакети до потрібних мереж.
Таблиці IP-раутінгу та їх використання
Коли станція отримує данограму через мережевий інтерфейс, то спочатку перевіряється, чи IP-адреса призначення не є однією з її адрес IP-рівня (unicast, multicast чи broadcast). Якщо так, то данограма передається до відповідного модуля, TCP чи UDP, відповідно до значення поля protocol у заголовку IP-данограми. Якщо ж IP-данограма не призначена для IP-рівня даної станції, то виконуються такі дії:
якщо комп’ютер є робочою станцією (IP forwarding заборонено), то IP данограма ігнорується;
якщо комп’ютер є раутером (IP forwarding дозволено), то IP данограма пересилається далі, за маршрутом, визначеним записами в таблиці раутінгу.
Раутінг на IP-рівні в більшості випадків передбачає використання таблиць раутінгу (routing table), які вживаються для вибору правильного маршруту пересилання IP-данограм.
Типовий запис в таблиці раутінгу має такий вигляд:
IP-адреса призначення (destination). Це може бути як повна адреса станції, так і адреса мережі (це відзначається відповідним прапорцем для даного запису). Різниця між IP адресою мережі та станції в тому, що для адреси станції поле HostID ніколи не може дорівнювати 0, тоді як для адреси мережі воно повинно бути рівне 0.
Мережева маска (netmask) – визначає довжину префікса IP-адреси (NetID).
IP адреса порта раутера (gateway) або безпосередньо приєднаної мережі (визначається прапорцем), куди будуть передаватися пакети, у випадку коли раутер скористається даним записом в таблиці маршрутизації.
Прапорці (flags). Один з них визначає чи адреса призначення (destination) є адресою комп’ютера, чи адресою мережі. Інший, чи то, куда пакети будуть передаватися (gateway), є раутером, чи безпосередньо приєднаним мережевим інтерфейсом.
Мережевий інтерфейс (interface або netif), через який буде передаватися IP-данограма, якщо даний запис буде використано для маршрутизації.
Таймер (expire), який, якщо він встановлений, вказує на те, скільки секунд даний запис може вважатися за дійсний.
Послідовність дій системи при IP-маршрутизації визначає такі кроки:
Пошук в таблиці маршрутизації (в полі destination) запису, що співнадає з повною IP-адресою призначення (NetID та HostID); у даному випадку застосовується маска 255.255.255.255. Якщо такий запис знайдено, то подальший пошук припиняється, а IP-данограма передається або до порта раутера (gateway), або до безпосередньо під’єднаного мережевого інтерфейсу (Netif), залежно від того як встановлено прапорець. Якщо запис не знайдений, то робиться наступний крок пошуку;
В таблиці маршрутизації шукається запис, в якому забезпечується співпадіння NetID. Процедура пошуку повинна підтримувати можливість перевірки мережевої маски (netmask). Якщо такий запис знайдено, то IP-данограма пересилається або до відповідного порта раутера, або до мережевого інтерфейсу. Якщо пошук закінчився невдало, то передять до наступного кроку пошуку.
Пошук спеціального запису під назвою “default” або IP-адреси 0.0.0.0. При виявленні такого запису IP-данограма висилається до вказаного раутера (gateway), якщо ж такий запис відсутній, то переходять до наступного кроку.
Оскільки ні один з попередніх кроків не привів до успіху, то IP данограма вважається такою, що не може бути доручена. Тоді ужитковий процес, який згенерував цю данограму, дістає повідомлення про помилку “комп’ютер недосяжний” (host unreachable) або “мережа недосяжна” (network unreachable).
Машрути за замовчуванням
У більшості випадків немає потреби записувати конкретні адреси інтерфейсів раутера вручну. У попередньому прикладі достатньо встановити раутер R як шлюз (раутер) за замовчуванням (default gateway) для всіх вузлів в обидвох мережах. Шлюз за замовчуванням – це IP-адреса раутера, до якої висилаються всі пакети, які не можуть бути доручені через прямий раутінг. Детальніше це пояснено нижче.
Маршрути за замовчуванням (default routes), разом з ICMP-повідомленнями типу “переспрямування” (ICMP redirect), є потужними засобами IP-раутінгу. Можливість задавати маршрути до мереж, і не задавати маршрути окремо для кожного з комп’ютерів у цих мережах, дозволяє значно зменшити розміри таблиць раутінгу, а також час пошуку в них. Впровадження маршрутів за замовчуванням дозволяє також спростити початкову (ініціалізаційну) таблицю раутінгу для звичайних робочих станцій, де вказується лише один запис - маршрут за замовчуванням. Далі протягом роботи станції таблиця може поповнюватися новими значеннями, тим самим збільшуючи знання станції про маршрути в мережі.
Використання маршрутів за замовчуванням базується на методі раутінгу з наступним стрибком (next-hop routing). Комп’ютер, який генерує IP данограму, передає її раутеру (default router), який не обов’язково безпосередньо під’єднаний до мережі, де знаходиться призначення, але (припускаємо) міститься ближче до неї, ніж будь-який інший раутер.
Для попереднього прикладу можна використати маршрут за замовчуванням. Наприклад, таблиці маршрутизації робочих станцій A, B, D і E мають запис про маршрут за замовчуванням, скерований на раутер R. При цьому станції А та В можуть не знати про існування мережі Net 1. Також для станцій D і E мережа Net 0 може бути невідома. Вигляд таблиць раутінгу для станцій та раутера, показаних на рис.3.35, такий:
Використання протоколу ICMP для маршрутизації
В процесі раутінгу використовується також протокол ICMP. Наприклад, коли раутер отримує IP-данограму, яку він не може доручити, то у відповідь до джерела він генерує ICMP-повідомлення про помилку “комп’ютер недосяжний”. Це може спричинене як тимчасовою відсутністю зв’язку раутера з необхідним напрямком, так і відсутністю необхідного маршруту в таблиці раутінгу (у випадку, коли відсутній запис маршруту за замовчуванням).
Ще один випадок використання ICMP - це генерування раутером ICMP-повідомлення про переспрямування вибраного маршруту. Таке повідомлення генерується тоді, коли IP-данограма, надіслана до цього раутера, повинна була бути вислана до іншого раутера.
ICMP-повідомлення про переспрямування можна з’являється у мережі лише тоді, коли станція має вибір з двох або більше раутерів і внаслідок неповноти таблиці раутінгу висилає IP-данограму до невірного раутера (часто до раутера за замовчуванням). Розглянемо 3.36, де показано робочу станцію A та два раутери R1 і R2, під’єднані до мережі Net 0.
EMBED Visio.Drawing.5
Рис. 3.36. Приклад ICMP-повідомлення про переспрямування.
Саме при такій конфігурації можна побачити ICMP-повідомлення про переспрямування. Додатковою умовою є те, що станція A має встановлений маршрут за замовчуванням до раутера R1, та в її таблиці раутінгу відсутній запис, який скеровував би до раутера R2 данограми, адресовані до мережі Net 1. Відсутність такого запису може бути виправдана бажанням максимально спростити конфігурацію робочих станцій, в якій, наприклад, вказується тільки раутер за замовчуванням. Тоді процес визначення маршруту відбувається у такій послідовності:
Робоча станція A, не знайшовши в таблиці раутінгу запису для маршруту до станції, яка міститься у мережі Net 1, користується маршрутом за замовчуванням і пересилає IP-данограму до раутера R1.
Раутер R1, маючи повнішу таблицю маршрутизації, ніж станція A, знає, що маршрут до мережі Net 1 пролягає через R2, і тому пересилає йому цю данограму.
Оскільки R1 відіслав IP-данограму через той самий мережевий інтерфейс 200.1.2.1/24, від якого він її прийняв, то робиться висновок, що пакет непотрібно було надсилати до R1, а до раутера R2, який розташований у тій самій підмережі, що й R1. Тому R1 генерує ICMP-повідомлення про переспрямування, де вказує, куди повинна бути вислана IP-данограма.
За допомогою таких ICMP-переспрямувань комп’ютер, який їх отримує, модифікує свою таблицю маршрутизації, що в подальшому призведе до правильного вибору таких маршрутів. На основі отриманих ICMP-переспрямувань станція може створювати в таблиці маршрутизації записи про маршрути як до поодиноких призначень (комп’ютери), так і до мереж (раутер генерує переспрямування для мережі, коли йому відома її структура). Це дозволяє станціям поступово, звертаючись до різних призначень, побудувати повнішу таблицю маршрутизації.
Наведемо декілька правил що стосуються ICMP-переспрямувань:
ICMP-переспрямування генеруються тільки раутерами і ніколи не генеруються станціями;
ці переспрямування призначені виключно для станцій, а не для раутерів;
не дозволяється модифікація таблиці раутінгу станції одночасно як ICMP-переспрямуваннями, так і протоколами раутінгу.
Перш ніж раутер згенерує ICMP- переспрямування, він здійснює такі перевірки:
вихідний мережевий інтерфейс повинен дорівнювати вхідному, а також призначення для ICMP-переспрямування має безпосередньо міститися у тій самій мережі, що й раутер;
маршрут, який використовується для вихідної данограми, не повинен був бути створений або модифікований ICMP- переспрямуванням, а також бути ідентичним до маршруту за замовчуванням для даного раутера;
данограма, для якої генерується ICMP-переспрямування, не повинна використовувати додаткову послугу IP під назвою точний примусовий маршрут або раутінг від джерела (source routing);
раутер повинен бути сконфігурований так, щоб було дозволено генерацію ICMP- переспрямувань.
Крім того, робоча станція, яка прийняла ICMP-переспрямування, здійснює ряд перевірок, перш ніж модифікувати свою таблицю раутінгу:
новий (той, на який вказує ICMP-переспрямування) раутер повинен міститися у тій самій мережі (підмережі), що й робоча станція;
ICMP-переспрямування не може скеровувати маршрут до того раутера, який згенерував це переспрямування;
Маршрут, який модифікується, не повинен бути прямим маршрутом.
Незважаючи на значну перевагу ICMP-переспрямувань для мереж порівняно з переспрямуваннями до окремих станцій, раутери не повинні використовувати перших без мережевих масок. Це частково пов’язане з розбиттям мереж на підмережі, оскільки адресу підмережі без маски важко відрізнити від адреси конкретного комп’ютера.
Ще одним методом модифікації таблиць раутінгу станцій є ICMP-повідомлення, призначені для виявлення раутерів. Наприклад, станція, яка тільки що увімкнулася та має лише маршрут за замовчуванням, починає генерувати ICMP- повідомлення “запит раутера” до всіх або до групи станцій у мережі (повідомлення broadcast або multicast). Один або декілька раутерів відповідають своїми ICMP-повідомленнями “оголошення раутера”, в яких міститься інформація про вміст їх таблиць маршрутизації. Додатково раутери періодично генерують ці ICMP-повідомлення до всіх або до групи станцій. Це дозволяє станціям, які прослуховують середовище та чекають на інформацію про маршрути, постійно поновлювати свої таблиці маршрутизації, однак цей метод не знайшов широкого практичного застосування.
Статичний раутінг та організація підмереж
Під’єднання окремого вузла до раутера WAN
Приймемо, що вузол має IP-адресу 210.20.30.45, а раутер WAN – адресу 199.99.88.77 (рис.3.37).
EMBED Visio.Drawing.5
Рис. 3.37. Під’єднання станції до WAN.
Для вузла A можна використати мережеву маску 255.255.255.255, що означатиме відсутність інших вузлів у локальній мережі, і що шлюз встановлено на 199.99.88.77. Для вузла A також повинен бути встановлений маршрут за замовчуванням, що забезпечує маршрут для всіх пакетів, призначення яких не відповідає жодним визначеним входам таблиці раутінгу. Тоді таблиці раутінгу для вузла і раутера мають такий вигляд:
Раутінг для вузла G (раутера WAN) дуже залежить від контексту і вказаний вхід є тільки прикладом. Мережева маска із усіх “1” (255.255.255.255) у цьому випадку використовується тільки для того, щоб дозволити пакетам, призначеним до 210.20.30.45, бути скерованими до вузла A, хоч може бути ще 253 інші вузли, сполучені подібним чином у цій мережі класу C з мережевою адресою 199.99.88.0.
Коли конфігурація стеку протоколів TCP/IP запитує про шлюз за замовчуванням, задання 199.99.88.77 може спричинити, що вхід за замовчуванням 0.0.0.0 може бути доданий автоматично. Він повинен бути доданий вручну, якщо із певних міркувань стек не запитує про це. Особливі методи конфігурування стеку протоколів детальніше пояснено в наступному прикладі.
Стандартна керована конфігурація раутера
Розглянемо стандартну конфігурацію для керованого раутера у розташуванні замовника. Вважаємо, що всі станції замовника, які використовують послуги Internet, безпосередньо під'єднані до тієї ж фізичної LAN, що й керований раутер (рис. 3.38).
EMBED Visio.Drawing.5
Рис. 3.38. Під’єднання локальної мережі до Internet.
Стандартна конфігурація характеризується так:
окрема IP-підмережа на LAN-порті раутера замовника;
всі IP-адреси, виділені замовнику, відносяться до цієї підмережі;
LAN-порт раутера замовника має найменшу (не широкомовну) адресу в підмережі;
на LAN-порті відсутній динамічний раутінг;
раутер замовника не має статичних маршрутів.
Наприклад, нехай замовник отримав діапазон IP-адрес від 192.168.1.32 до 192.168.1.63 від провайдера, тоді стандартна конфігурація виглядає так:
Примітка: якщо вимоги замовника не забезпечені цією стандартною конфігурацією, то він повинен зробити спеціальний запит до провайдера на зміну конфігурації керованого раутера. В ідеальному випадку це повинно бути зроблене перед встановленням керованого раутера, щоб не затримувати встановлення послуг. Часто неможливо внести зміни в конфігурацію керованого раутера після його встановлення.
Під’єднання локальної мережі до раутера WAN
Використаємо топологію мережі, зображену на рис. 3.39, де одна локальна мережа (LAN) під’єднана до Internet. Цей приклад також ілюструє використання різних мережевих масок для уворення двох підмереж класу C.
EMBED Visio.Drawing.5
Рис. 3.39. Під’єднання локальної мережі до WAN.
Відзначимо, що віддалений раутер WAN може мати IP-адресу поза локальною мережею класу C і в цьому випадку локальний WAN-інтерфейс звичайно може мати IP-адресу від тієї ж мережі, що й віддалений WAN-раутер. У цьому випадку, як показано нижче, поділ на підмережі не є необхідний, доки до WAN-раутера не під’єднується понад один локальний сегмент.
Вузол A – це одна із багатьох станцій у Ethernet-сегменті Net 0. Вузол (раутер) Z – це шлюз від цього сегменту Ethernet до раутера Internet-провайдера G. Інші станції в локальній мережі позначені літерами від B до Y, але не будуть розглядатися у цьому прикладі, бо їх настроювання подібне до станції A.
У даному випадку потрібні тільки дві підмережі, тому необхідно виділити лише один біт від адресного простору станцій. Тоді мережева маска має вигляд 255.255.255.128 (або FFFFFF80 у шістнадцятковій формі), тобто останній байт має двійковий вигляд 10000000. Для мережі виділена мережева адреса 210.20.30 (або D214E), тому вона може використати такі адреси підмереж:
Сім останніх бітів можуть бути використані для номерів станцій, що дає по 126 адрес вузлів у кожній підмережі (всі “0” та всі “1” зарезервовані):
IP-адреси та мережеві маски для кожного інтерфейсу такі:
Таблиці раутінгу для кожного вузла можуть бути заповнені наступним чином (адреса призначення 0.0.0.0 вказує маршрут за умовчанням, якщо не вказані інші особливі маршрути):
Ієрархічний розподіл адрес класу C
Для більш ефективного використання адрес класу C в Internet-спільноті ці адреси ієрархічно діляться для підмереж від сервіс-провайдера до організації. Останні розподіляють підмножини IP-адрес сервіс-провайдера; їх називають безкласовими адресами.
EMBED Visio.Drawing.5
Рис. 3.40. Під’єднання локальних мереж до раутера WAN.
Розглянемо приклад мережі малої організації, яка складається із двох Ethernet-сегментів, під’єднаних до надавача послуг Internet, з використанням раутера WAN, який емулює додатковий мережевий сегмент (рис. 3.40).
Надавач послуг виділив різні адреси класу C для своїх користувачів. Дана конкретна організація отримала мережеву адресу 210.20.30, а адреса інтерфейсу раутера з боку провайдера дорівнює 210.20.30.254. На рисунку останній байт IP-адрес додатково показаний у двійковому вигляді, щоб виразніше показати мережеву підадресацію.
Якщо б організація мала один комп’ютер, наприклад, C, і наявний для використання цілий клас C адрес, тоді IP-адреса для станції C могла б бути довільною в діапазоні від 210.20.30.1 до 210.20.30.253, а шлюз за умовчанням мав би адресу 210.20.30.254 з мережевою маскою 255.255.255.0. Однак коли наявні дві мережі та сполучення “пункт-пункт” до WAN, яке теж трактується як мережа, то адреса класу C мусить бути поділена на підмережі. Це здійснюють, використовуючи один або більше бітів, котрі звичайно належать адресам станцій, як мережеву частину адреси, таким чином розширюючи її розмір. У даному випадку мережева адреса 210.20.30 може бути розширена до чотирьох мереж, а мережева маска змінена на 255.255.255.192, що відображає додаткове використання двох бітів для мережевої частини в IP-адресі. Строго кажучи, коректними є тільки підмережі з двома або більше додатковими бітами у масці, а будь-яка підмережа із всіма нулями або всіма одиницями у підмережевій частині адреси некоректна. Однак у багатьох реалізаціях протоколів TCP/IP дозволяють відхилення від цих обмежень, що веде до помітної ощадності при використанні адрес.
Оскільки мережева маска має значення 255.255.255.192 (або в шістнадцятковій формі FFFFFFC0), а мережева адреса організації – 210.20.30 (тобто D2141E), то можна використовувати такі чотири мережеві адреси:
Це дозволяє використати шість останніх бітів для номерів вузлів, що дає 62 адреси станцій на мережу (всі “0” та всі “1” зарезервовані). Тому коректні такі адреси для станцій:
У цьому прикладі мережа № 2 зарезервована для майбутнього використання.
IP-адреси та мережеві маски для кожного інтерфейсу такі:
Таблиці раутінгу будуються для кожного вузла таким чином. У полі “Адреса мережі” вказують адреси всіх мереж, до яких сконфігуровані маршрути від даного вузла. При цьому адреса 0.0.0.0 вказує призначення за замовчуванням, тобто якщо для певного пакету жодні інші конкретні маршрути не сконфігуровані, то призначення за замовчуванням є тим, до якого можна висилати цей пакет, вважаючи, що воно здатне переслати його до потрібної станції або до інших раутерів вздовж визначеного шляху. Поле “Мережева маска” вказує маску, яку слід вживати для відповідної адреси мережі (для адреси за замовчуванням вона завжди дорівнює 0.0.0.0). “Шлюз” вказує, куди (за якою адресою призначення) слід безпосередньо скерувати пакет, а “Інтерфейс” – через який інтерфейс даного вузла слід його вислати. Вигляд таблиць раутінгу для станцій у даному прикладі показано нижче.
Значення метрики або лічильника стрибків опційне, однак може бути рівним 0 для всіх шлюзів, ідентичних станціям, і більшим від 0, якщо призначення досягається черех один або більше шлюзів. Метрика для маршрутів за замовчуванням невизначена, але може бути встановлена рівною щонайменше 1.
Проілюструємо використання цих таблиць раутінгу таким прикладом. Якщо станція D висилає пакет запиту ICMP Echo до Internet за адресою 140.51.120.30, то спочатку D застосовує маску 255.255.255.192 до адреси 140.51.120.30 для визначення адреси мережі. Тоді вона встановлює, що адреса мережі 210.20.30.64 не узгоджена з потрібною і вибирає маршрут за замовчуванням , який вказує на шлюз 210.20.30.70, і використовує Ethernet-адресу вузла C (DE) для пересилання пакету до раутера. Коли раутер C приймає цей пакет, то він виявляє, що пакет адресований до 140.51.120.30, перевіряє всі маршрути у своїй таблиці і, встановивши відсутність маршруту до 140.51.120.30, вибирає маршрут (призначення) за умовчанням. При цьому він використовує інтерфейс до WAN, тобто адресу свого інтерфейсу 210.20.30.200 для пересилання пакету до раутера G за адресою 210.20.30.254. Далі пакет може поширюватися від цього раутера до інших, доки не досягне такого, що буде мати у своїй таблиці IP-адресу 140.51.120.30. Коли вузол-призначення відповість, то пакет повернеться до інтерфейсу 210.20.30.200 (раутер C) з адресою призначення 210.20.30.81, тобто з призначенням до станції D. Раутер C за допомогою відповідної мережевої маски встановлює, що адреса 210.20.30.81 відноситься до мережі 210.20.30.64 і, використовуючи свій інтерфейс 210.20.30.70, вишле пакет до станції D.
Об’єднання мереж через WAN-зв’язок “пункт-пункт”
Цей приклад показує, як об’єднати дві локальні мережі через WAN-зв’язок типу “пункт-пункт” (3.41).
EMBED Visio.Drawing.5
Рис. 3.41. Об’єднання двох LAN через зв’язок “пункт-пункт”.
Вважається, що мережа закрита, тобто не під’єднана до Internet. Це дає значну свободу при використанні IP-адрес для такої мережі, однак таке розв’язання повинне бути сумісним із адресним простором, виділеним уповноваженою організацією (Internet Assigned Numbers Authority – IANA) для приватних мереж:
У цьому прикладі для кожної LAN відповідно використані мережеві адреси класу B 172.20 і 172.21, а для WAN-зв’язку – мережева адреса класу C 192.168.100:
IP-адреси та мережеві маски для кожного інтерфейсу такі:
Заповнення таблиць раутінгу для кожного вузла показано нижче. Зауважимо, що для раутерів Y та Z не вказані маршрути за замовчуванням, бо якщо раутер Y є маршрутом за замовчуванням для раутер