Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

Сьогодні ми приступимо до вивчення роутерів. Якщо ви пройшли мій відеокурс із першого по 17-й урок, то вже вивчили основи свитчів. Зараз ми переходимо до наступного пристрою – роутера. Як ви знаєте з попереднього уроку, одна з тем курсу CCNA так і називається - Cisco Switching & Routing.

У цій серії ми не вивчатимемо роутери Cisco, а розглянемо концепцію маршрутизації в цілому. Ми матимемо три теми. Перша – це огляд того, що ви вже знаєте про роутерів та розмову про те, як це можна застосувати спільно зі знаннями, отриманими вами у процесі вивчення свитків. Ми повинні зрозуміти, у чому спільна робота свитчів та роутерів.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

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

Ми розглядали, як дані переміщаються через мережу і як проводиться триетапне рукостискання TCP. Перше повідомлення, що надсилається по мережі, є SYN-пакет. Давайте розглянемо, як відбувається триетапний потиск рук, коли комп'ютер з IP-адресою 10.1.1.10 хоче зв'язатися з сервером 30.1.1.10, тобто намагається встановити FTP-з'єднання.
Щоб розпочати з'єднання, комп'ютер створює порт джерела з випадковим номером 25113. Якщо ви забули, як це відбувається, раджу переглянути попередні відеоуроки, в яких розглядалося це питання.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

Далі він поміщає у кадр номер порту призначення, оскільки знає, що повинен з'єднатися з портом 21, потім додає інформацію третього рівня OSI, тобто власну IP-адресу і IP-адресу пункту призначення. Дані, обведені пунктиром, не змінюються, поки досягнуто кінцевої точки. Досягши сервера, вони також не змінюються, але сервер додає до кадру інформацію другого рівня, тобто MAC-адресу. Це з тим, що свитчі сприймають лише інформацію другого рівня OSI. У цьому сценарії роутер є єдиним мережевим пристроєм, який розглядає інформацію 3-го рівня, природно, комп'ютер теж працює з цією інформацією. Отже, свитч працює лише з інформацією 2-го рівня, а роутер – 3-го.

Світч знає вихідну MAC-адресу XXXX:XXXX:1111 і хоче дізнатися MAC-адресу сервера, до якого звертається комп'ютер. Він порівнює вихідну IP-адресу з адресою призначення, розуміє, що ці пристрої розташовані в різних підмережах і вирішує використовувати шлюз для виходу в іншу підмережу.

Мені часто ставлять питання, хто вирішує, якою має бути IP-адреса шлюзу. По-перше, це вирішує мережевий адміністратор, який створює мережу та надає IP-адресу кожному пристрою. Як адміністратор, ви можете призначити роутеру будь-яку адресу, що знаходиться в діапазоні дозволених адрес вашої підмережі Зазвичай це перша або остання допустима адреса, але немає жодних суворих правил щодо його призначення. У нашому випадку адміністратор призначив адресу шлюзу, або роутера, 10.1.1.1 та надав його порту F0/0.

Коли ви налаштовуєте мережу на комп'ютері зі статичною IP-адресою 10.1.1.10, ви призначаєте маску підмережі 255.255.255.0 та стандартний шлюз 10.1.1.1. Якщо ви не використовуєте статичну адресу, комп'ютер використовує DHCP, який призначає динамічну адресу. Незалежно від того, яку IP-адресу використовує комп'ютер, статичний або динамічний, для виходу в іншу мережу має бути адреса шлюзу.

Таким чином, комп'ютер 10.1.1.10 знає, що має надіслати кадр роутеру 10.1.1.1. Ця передача відбувається всередині локальної мережі, де IP-адреса не має ніякого значення, тут важлива тільки MAC-адреса. Припустимо, що раніше комп'ютер ніколи не зв'язувався з роутером і не знає його MAC-адресу, тому він повинен спочатку надіслати ARP-запит, яким запитує всі пристрої підмережі: «Гей, хто має адресу 10.1.1.1? Будь ласка, повідомте мені свою MAC-адресу!». Оскільки ARP - це широкомовне повідомлення, воно надходить на всі порти всіх пристроїв, включаючи роутер.

Комп'ютер 10.1.1.12, отримавши ARP, вважає: «ні, моя адреса не 10.1.1.1», і відкидає запит, аналогічно надходить комп'ютер 10.1.1.13. Роутер, отримавши запит, розуміє, що запитують саме його, і відсилає MAC-адресу порту F0/0 – а всі порти мають різну MAC-адресу – комп'ютеру 10.1.1.10. Тепер, знаючи адресу шлюзу XXXX:AAAA, який у разі є адресою призначення, комп'ютер додає їх у кінець кадру, адресованого серверу. Разом з цим він встановлює заголовок кадру FCS/CRC, що є механізмом перевірки помилок передачі.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

Після цього кадр комп'ютера 10.1.1.10 відправляється по проводах до роутера 10.1.1.1. Після отримання кадру роутер видаляє FCS/CRC, використовуючи для перевірки той самий алгоритм, як і комп'ютер. Дані є не що інше, як набір з нулів і одиниць. Якщо дані пошкоджені, тобто 1 стає 0 або 0 стає одиницею, або є витік даних, який часто виникає при використанні хаба, пристрій повинен переслати кадр ще раз.

Якщо перевірка FCS/CRC пройшла успішно, роутер дивиться на MAC-адреси джерела та призначення та видаляє їх, оскільки це інформація 2-го рівня і переходить до тіла кадру, в якому міститься інформація 3-го рівня. З неї він дізнається, що інформація, яку містить кадр, призначена для пристрою з IP-адресою 30.1.1.10.

Роутер якимось чином знає, де знаходиться цей пристрій. Ми не обговорювали це питання, коли розглядали роботу свитків, тож розглянемо його зараз. Роутер має 4 порти, тому я додав до нього ще кілька з'єднань. Отже, звідки роутер знає, що дані для пристрою з IP-адресою 30.1.1.10 потрібно надсилати через порт F0/1? Чому він не надсилає їх через порт F0/3 чи F0/2?

Справа в тому, що роутер працює з таблицею маршрутизації. Кожен роутер має таку таблицю, що дозволяє прийняти рішення, якою порт передавати конкретний кадр.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

У цьому випадку порт F0/0 налаштований на IP-адресу 10.1.1.1 і це означає, що він підключений до мережі 10.1.1.10/24. Аналогічно порт F0/1 налаштований на адресу 20.1.1.1, тобто приєднано до мережі 20.1.1.0/24. Роутер знає обидві мережі, тому що вони безпосередньо приєднані до його портів. Таким чином, інформація про те, що трафік для мережі 10.1.10/24 повинен проходити через порт F0/0, а для мережі 20.1.1.0/24 через порт F0/1, відома за замовчуванням. Звідки ж роутер знає, через які порти працюватиме з іншими мережами?

Ми бачимо, що мережа 40.1.1.0/24 приєднана до порту F0/2, мережа 50.1.1.0/24 – до порту F0/3, а мережа 30.1.1.0/24 пов'язує другий роутер із сервером. Другий роутер також має таблицю маршрутизації, в якій сказано, що мережа 30. приєднана до його порту, позначимо його 0/1, а з першим роутером він з'єднаний через порт 0/0. Цей роутер знає, що його порт 0/0 з'єднаний із мережею 20., а порт 0/1 з'єднаний із мережею 30., і більше нічого не знає.

Аналогічно перший роутер знає про мережі 40 і 50, приєднані до портів 0/2 і 0/3, але нічого не знає про мережі 30. Протокол маршрутизації надає роутерам ту інформацію, якої вони не володіють за замовчуванням. Механізм, яким ці роутери взаємодіють друг з одним, є основою маршрутизації, у своїй існує динамічна і статична маршрутизація.

Статична маршрутизація полягає в тому, що першому роутеру надається інформація: якщо потрібно зв'язатися з мережею 30.1.1.0/24, то потрібно використовувати порт F0/1. Однак коли другому роутеру надходить трафік із сервера, який призначений для комп'ютера 10.1.1.10, він не знає, що з ним робити, тому що в його таблиці маршрутизації є лише відомості про мережу 30. та 20. Тому даному роутеру теж потрібно прописати статичну маршрутизацію : якщо він отримує трафік для мережі 10, то повинен відправити його через порт 0/0.

Проблема статичної маршрутизації полягає в тому, що я маю вручну налаштувати перший роутер на роботу з мережею 30, а другий роутер – на роботу з мережею 10. Це просто, якщо у мене всього 2 роутери, але коли у мене 10 маршрутизаторів, налаштування статичної маршрутизації забирає купу часу. У цьому випадку є сенс використовувати динамічну маршрутизацію.
Отже, отримавши кадр від комп'ютера, перший роутер дивиться у свою таблицю маршрутизації і вирішує надіслати його через порт F0/1. При цьому він додає до кадру MAC-адресу джерела XXXX.BBBB та MAC-адресу призначення XXXX.СССС.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

Отримавши цей кадр, другий роутер «обрізає» MAC-адреси, що належать до другого рівня OSI, і переходить до інформації 3-го рівня. Він бачить, що IP-адреса призначення 30.1.1.10 відноситься до тієї ж мережі, що порт 0/1 роутера, додає до кадру MAC-адреса джерела та MAC-адреса пристрою призначення та відправляє кадр серверу.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

Як я вже казав, далі аналогічний процес повторюється у зворотному напрямку, тобто здійснюється другий етап рукостискання, при якому сервер відправляє назад SYN ACK-повідомлення. Перед цим він відкидає всю зайву інформацію та залишає лише SYN-пакет.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

Отримавши цей пакет, другий роутер розглядає отриману інформацію, доповнює її та відправляє далі.

Отже, на попередніх уроках ми вивчили, як працює свитч, а тепер довідалися, як працюють роутери. Давайте відповімо на питання, що є маршрутизація в глобальному сенсі. Припустимо, що вам зустрівся такий дороговказ, встановлений на перехресті з круговим рухом. Ви бачите, що перше відгалуження веде до бази Королівських повітряних сил Фейрфакс, друге до аеропорту, третє на південь. Якщо ви оберете четвертий виїзд, то потрапите в глухий кут, а через п'ятий можете проїхати через центр міста до замку Брексбі.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

Загалом маршрутизація – це те, що змушує роутер приймати рішення, куди спрямовувати трафік. В даному випадку ви, як водій, повинні ухвалити рішення, яким виїздом з перехрестя потрібно скористатися. У мережах роутерам доводиться ухвалювати рішення, куди відсилати пакети чи фрейми. Ви повинні зрозуміти, що маршрутизація дозволяє створювати таблиці, на основі яких роутери ухвалюють ці рішення.

Як я сказав, існує статична та динамічна маршрутизація. Розглянемо статичну маршрутизацію, для чого я намалюю 3 пристрої, пов'язані один з одним, причому перший і третій пристрій пов'язані з мережами. Припустимо, що одна мережа 10.1.1.0 хоче зв'язатися з мережею 40.1.1.0, а між роутерами розташовані мережі 20.1.1.0 та 30.1.1.0.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

У цьому випадку порти роутерів повинні належати до різних підмереж. Роутер 1 за умовчанням знає тільки про мережі 10. і 20. і нічого не знає про інші мережі. Роутер 2 знає тільки про мережі 20. і 30., тому що вони до нього під'єднані, а роутер 3 знає тільки про мережі 30. і 40. Якщо мережа 10 хоче зв'язатися з мережею 40., я повинен розповісти роутеру 1 про мережу 30 і про те, що якщо він хоче передати кадр мережі 40., то повинен використовувати інтерфейс для мережі 20. і відправити кадр по цій же мережі 20.

Другому роутеру я повинен призначити 2 маршрути: якщо він хоче передати пакет із мережі 40. в мережу 10., то повинен використовувати порт мережі 20., а для передачі пакета з мережі 10. мережі 40. – порт мережі 30. Аналогічно я повинен забезпечити роутер 3 інформацією про мережі 10. та 20.

Якщо у вас невеликі мережі, то статичну маршрутизацію дуже легко налаштувати. Проте що більше розростається мережу, то більше вписується проблем зі статичною маршрутизацією. Уявимо, що ви створили нову сполуку, яка безпосередньо пов'язує перший і третій роутери. При цьому протокол динамічної маршрутизації автоматично оновить таблицю маршрутизації роутера 1, вказуючи: «якщо вам потрібно зв'язатися з роутером 3, використовуйте прямий маршрут»!

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

Існує два типи протоколів маршрутизації: протокол внутрішнього шлюзу IGP та протокол зовнішнього шлюзу EGP. Перший протокол працює з окремою автономною системою, відомою як домен маршрутизації. Уявіть, що у вас є невелика організація, в якій всього 5 роутерів. Якщо ми говоримо тільки про зв'язок між цими роутерами, то маємо на увазі IGP, якщо ви використовуєте свою мережу для зв'язку з інтернетом, як це роблять ISP-провайдери, то використовуєте EGP.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

IGP використовує 3 популярні протоколи: RIP, OSPF та EIGRP. Навчальна програма CCNA згадує лише про два останні протоколи, тому що RIP застарів. Це найпростіший з протоколів маршрутизації, який досі використовується в деяких випадках, проте не забезпечує необхідну безпеку мережі. Це одна з причин, через яку Сisco виключила RIP з навчального курсу. Однак я все одно розповім вам про нього, тому що його вивчення сприяє розумінню засад маршрутизації.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

Класифікація протоколів EGP використовує два протоколи: BGP та власне протокол EGP. При вивченні курсу CCNA ми розглядатимемо лише BGP, OSPF та EIGRP. Розповідь про RIP можна вважати бонусною інформацією, яка буде відображена в одному з відеоуроків.
Існує ще 2 типи протоколів маршрутизації: дистанційно-векторні протоколи Distance Vector та протоколи маршрутизації стану каналу Link State.

Тренінг Cisco 200-125 CCNA v3.0 День 18. Основи маршрутизації

Перший прокол розглядає вектори відстані та напрямки. Наприклад, я можу встановити з'єднання безпосередньо між роутером R1 та R4, а можу здійснити з'єднання шляхом R1-R2-R3-R4. Якщо ми говоримо про протоколи маршрутизації, які використовують дистанційно-векторний метод, то в даному випадку з'єднання завжди здійснюватиметься найкоротшим шляхом. При цьому немає значення, що дане з'єднання матиме мінімальну швидкість. У нашому випадку це 128 кбіт/с, що набагато повільніше за з'єднання за маршрутом R1-R2-R3-R4, де швидкість становить 100 мбіт/с.

Розглянемо дистанційно-векторний протокол RIP. Я домалюю перед роутером R1 мережу 10, а за роутером R4 – мережа 40. Припустимо, що в цих мережах знаходиться багато комп'ютерів. Якщо я хочу здійснити зв'язок між мережею 10. R1 та мережею 40. R4, то призначу R1 статичну маршрутизацію типу: «якщо потрібно з'єднатися з мережею 40. використовуйте прямий зв'язок з роутером R4». При цьому на всіх 4-х роутерах я маю вручну налаштувати RIP. Тоді таблиця маршрутизації R1 автоматично повідомлятиме, що якщо мережа 10. хоче зв'язатися з мережею 40., потрібно використовувати пряме з'єднання R1-R4. Навіть якщо в обхід вийде швидше, протокол Distance Vector все одно вибере найкоротший шлях із найменшою відстанню передачі.

OSPF – це протокол маршрутизації стану каналу, який завжди дивиться стан ділянок мережі. В даному випадку він оцінює швидкість каналів, і якщо бачить, що швидкість передачі трафіку каналом R1-R4 дуже низька, то вибирає шлях з більшою швидкістю R1-R2-R3-R4, навіть якщо його довжина перевищує найкоротший шлях. Таким чином, якщо я настрою на всіх роутерах протокол OSPF, при спробі з'єднання мережі 40 з мережею 10, трафік буде відправлений за маршрутом R1-R2-R3-R4. Отже, RIP – це дистанційно-векторний протокол, а OSPF – протокол маршрутизації стану каналу.

Існує ще один протокол – EIGRP, пропрієтарний протокол маршрутизації Cisco. Якщо говорити про мережні пристрої інших виробників, наприклад, Juniper, то вони не підтримують EIGRP. Це відмінний протокол маршрутизації, який набагато ефективніший за RIP та OSPF, але його можна використовувати тільки в мережах, заснованих на пристроях виробництва Cisco. Пізніше я розповім докладніше, чим такий протокол. Поки що зауважу, що EIGRP поєднує риси дистанційно-векторних протоколів і протоколів маршрутизації стану каналу, являючи собою гібридний протокол.

На наступному відеоуроці ми підійдемо до розгляду роутерів Cisco, я трохи розповім вам про операційну систему Cisco IOS, яка призначена і для свитків, і для роутерів. Сподіваюся, на уроках 19 або 20-го дня ми приступимо до детального вивчення протоколів маршрутизації, і я на прикладі невеликих мереж покажу, як налаштовувати роутери Cisco.


Дякую, що залишаєтеся з нами. Вам подобаються наші статті? Бажаєте бачити більше цікавих матеріалів? Підтримайте нас, оформивши замовлення або порекомендувавши знайомим, 30% знижка для користувачів Хабра на унікальний аналог entry-level серверів, який був винайдений нами для Вас: Вся правда про VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps від $20 чи як правильно ділити сервер? (Доступні варіанти з RAID1 і RAID10, до 24 ядер і до 40GB DDR4).

Dell R730xd у 2 рази дешевше? Тільки в нас 2 х Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 ТБ від $199 у Нідерландах! Dell R420 – 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB – від $99! Читайте про те Як побудувати інфраструктуру корп. класу із застосуванням серверів Dell R730xd Е5-2650 v4 вартістю 9000 євро за копійки?

Джерело: habr.com

Додати коментар або відгук