Введение в маршрутизацию и принципы работы IP-сетей

Курс охватывает фундаментальные принципы работы сетевого уровня модели OSI, устройство и функции маршрутизаторов. Вы изучите основы IP-адресации, структуру таблиц маршрутизации и различия между статическими и динамическими методами.

1. Основы сетевого уровня, роль маршрутизатора и логическая адресация

Основы сетевого уровня, роль маршрутизатора и логическая адресация

Добро пожаловать в курс «Введение в маршрутизацию и принципы работы IP-сетей». Мы начинаем погружение в мир компьютерных сетей с фундаментальных понятий, которые обеспечивают работу всего Интернета. Если вы когда-либо задумывались, как сообщение из вашего смартфона находит путь к серверу на другом континенте за доли секунды, то ответ кроется в работе сетевого уровня и маршрутизаторов.

В этой статье мы разберем, что такое сетевой уровень модели OSI, зачем нужны маршрутизаторы и почему физических адресов (MAC) недостаточно для глобальной связи.

Сетевой уровень модели OSI

Чтобы понять маршрутизацию, необходимо вспомнить модель OSI (Open Systems Interconnection). Это эталонная модель взаимодействия открытых систем, которая делит процесс сетевой коммуникации на 7 уровней. Нас интересует третий уровень — Сетевой (Network Layer).

!Модель OSI с акцентом на Сетевой уровень (L3), отвечающий за маршрутизацию и логическую адресацию.

Назначение сетевого уровня

Главная задача сетевого уровня — обеспечить доставку данных от отправителя к получателю через составную сеть, которая может состоять из множества промежуточных сегментов и различных технологий связи.

Если Канальный уровень (L2, Data Link Layer) отвечает за передачу данных между соседними устройствами в одном сегменте (например, от вашего ноутбука к домашнему Wi-Fi роутеру), то Сетевой уровень (L3) отвечает за сквозную передачу (end-to-end) через весь мир.

Ключевые характеристики L3:

* Пакетная коммутация: Данные разбиваются на небольшие порции — пакеты. Каждый пакет путешествует по сети независимо и может (теоретически) проходить разными путями. * Логическая адресация: Использование адресов, которые не привязаны к «железу» намертво, а зависят от топологии сети (IP-адреса). * Маршрутизация: Процесс выбора оптимального пути для пакета.

Отличие от L2 и L4

Важно понимать границы ответственности:

* L2 (Канальный уровень): Работает с кадрами (frames) и MAC-адресами. Его «горизонт» ограничен одной локальной сетью. Он не знает, где находится глобальный сервер Google, он знает только MAC-адрес шлюза. * L3 (Сетевой уровень): Работает с пакетами (packets) и IP-адресами. Он знает адрес конечного получателя и пересылает пакет «ближе» к цели. * L4 (Транспортный уровень): Работает с сегментами/датаграммами и портами. Он не заботится о пути, его задача — обеспечить надежность доставки или правильное распределение данных между приложениями на конечном устройстве.

Сеть и подсеть: границы доменов

В терминологии маршрутизации слово «сеть» имеет специфическое значение. Это не просто набор соединенных кабелями компьютеров.

Локальные и составные сети

Локальная сеть (LAN) на уровне L2 — это единое широковещательное пространство. Если один компьютер отправляет широковещательный запрос (broadcast), его слышат все остальные устройства в этом сегменте. Это удобно для автоматического обнаружения устройств, но губительно для масштабируемости.

Представьте, если бы весь Интернет был одной большой локальной сетью. Один широковещательный запрос от любого пользователя в мире (например, «Кто здесь имеет IP 192.168.1.1?») пришлось бы обрабатывать миллиардам устройств. Сеть мгновенно «легла» бы от перегрузки.

Чтобы этого избежать, сети делят на подсети или сегменты.

Границы широковещательных доменов

Здесь на сцену выходит маршрутизатор. В отличие от коммутатора (свитча), который пропускает широковещательный трафик дальше, маршрутизатор ограничивает широковещательный домен.

> Маршрутизатор — это «бетонная стена» для широковещательных пакетов. Он не пропускает их из одного интерфейса в другой.

Таким образом, Интернет — это составная сеть (internetwork), совокупность множества маленьких сетей, соединенных маршрутизаторами.

Маршрутизатор: Устройство L3

Маршрутизатор (Router) — это специализированный компьютер, работающий на сетевом уровне модели OSI. Его главная функция — пересылка пакетов между различными сетями на основе информации сетевого уровня (IP-адресов).

[VISUALIZATION: Иллюстрация маршрутизатора в центре, к которому подключены три разные локальные сети (облака разного цвета). Показан путь пакета: он входит в один интерфейс, маршрутизатор

2. Принципы IP-адресации: IPv4, маски подсетей и CIDR

Принципы IP-адресации: IPv4, маски подсетей и CIDR

В предыдущей статье мы выяснили, что маршрутизатор — это устройство третьего уровня (L3), которое соединяет различные сети и пересылает пакеты между ними. Но как именно маршрутизатор понимает, куда отправить пакет? Как устройство определяет, находится ли получатель в соседней комнате или на другом конце света?

Ответ кроется в системе логической адресации. Сегодня мы детально разберем протокол IP (Internet Protocol), структуру адреса IPv4, магию масок подсетей и современную нотацию CIDR.

Протокол IP: Основа Интернета

IP (Internet Protocol) — это основной протокол сетевого уровня. Его главная задача — адресация хостов и фрагментация пакетов при необходимости. Однако важно понимать философию его работы.

Best-Effort Delivery

Протокол IP работает по принципу «доставка с максимальными усилиями» (best-effort). Это означает, что протокол не гарантирует:

* Что пакет дойдет до получателя. * Что пакеты придут в том же порядке, в котором были отправлены. * Что пакеты не будут повреждены.

IP похож на обычную почтовую службу: вы бросаете письмо в ящик, и почта старается его доставить. Но если письмо потеряется или грузовик сломается, почта (протокол IP) не будет автоматически отправлять его заново. За надежность, повторную отправку и упорядочивание отвечают протоколы вышестоящего Транспортного уровня (например, TCP), а не сам IP.

IP-адрес — идентификатор интерфейса

Важное уточнение: IP-адрес присваивается не компьютеру целиком, а сетевому интерфейсу.

Если у вашего ноутбука есть порт Ethernet и Wi-Fi адаптер, и оба подключены к сети, у ноутбука будет два разных IP-адреса. У маршрутизатора, который соединяет три разные сети, будет минимум три IP-адреса — по одному на каждом активном интерфейсе.

Анатомия IPv4-адреса

На данный момент самой распространенной версией протокола остается IPv4 (Internet Protocol version 4). Адрес IPv4 представляет собой 32-битное число.

Для удобства восприятия эти 32 бита делят на 4 группы по 8 бит (октеты) и записывают в десятичном виде, разделяя точками. Это называется dotted-decimal notation (десятично-точечная нотация).

Рассмотрим структуру на примере адреса 192.168.10.5.

В двоичном виде (как его видит компьютер) этот адрес выглядит так:

Где каждая группа из 8 бит соответствует числу в десятичной записи: * * * *

Минимальное значение октета — 0 (все биты 0), максимальное — 255 (все биты 1). Всего адресное пространство IPv4 составляет адресов, что равно примерно 4,3 миллиарда комбинаций.

Структура адреса: Сеть и Хост

Главная концепция маршрутизации заключается в том, что IP-адрес состоит из двух логических частей:

  • Network ID (Идентификатор сети): Показывает, к какой именно подсети или сегменту принадлежит адрес. Это аналог названия улицы и города.
  • Host ID (Идентификатор хоста): Уникальный номер конкретного устройства в этой сети. Это аналог номера дома или квартиры.
  • Маршрутизаторы используют Network ID для пересылки пакетов между сетями, а Host ID нужен только для доставки конечному получателю внутри локальной сети.

    Но где проходит граница между этими частями? В адресе 192.168.10.5 сетью является 192? Или 192.168? Или 192.168.10? Сам по себе IP-адрес не содержит информации о том, где заканчивается номер сети и начинается номер хоста. Для этого нам нужна маска подсети.

    !Визуализация разделения IP-адреса на сетевую и хостовую части с помощью маски.

    Маска подсети (Subnet Mask)

    Маска подсети — это 32-битное число, которое работает как фильтр. Она указывает устройству, какая часть IP-адреса относится к сети, а какая — к хосту.

    Правило простое: * Если бит в маске равен 1, то соответствующий бит в IP-адресе относится к адресу сети. * Если бит в маске равен 0, то соответствующий бит в IP-адресе относится к адресу хоста.

    Маска всегда представляет собой последовательность единиц, идущих подряд слева направо, за которыми следует последовательность нулей. Нельзя чередовать 1 и 0 (например, 255.0.255.0 — это недопустимая маска).

    Пример работы маски

    Возьмем классическую маску 255.255.255.0. В двоичном виде это:

    Применим её к нашему адресу 192.168.10.5. Чтобы получить адрес сети, компьютер выполняет побитовую операцию логическое И (AND) между IP-адресом и маской.

    Где: * * * *

    Результат в десятичном виде: 192.168.10.0. Это и есть адрес сети (Network Address). Он является идентификатором всей группы устройств.

    CIDR и Префиксная нотация

    Раньше использовалась классовая адресация (Классы A, B, C), где маска была жестко привязана к диапазону адресов. Это было неэффективно и приводило к исчерпанию адресов. На смену пришла технология CIDR (Classless Inter-Domain Routing) — бесклассовая междоменная маршрутизация.

    CIDR ввел удобную префиксную нотацию (slash notation). Вместо того чтобы писать длинную маску 255.255.255.0, мы пишем длину префикса — количество единичных бит в маске.

    Примеры соответствия:

    | Маска (Decimal) | Маска (Binary) | CIDR (Префикс) | | :--- | :--- | :--- | | 255.0.0.0 | 11111111.00000000... | /8 | | 255.255.0.0 | 11111111.11111111... | /16 | | 255.255.255.0 | 11111111.11111111.11111111.00000000 | /24 | | 255.255.255.192 | 11111111.11111111.11111111.11000000 | /26 |

    Запись 192.168.10.5/24 означает: IP-адрес 192.168.10.5 с маской 255.255.255.0 (первые 24 бита — это сеть).

    Логика отправки пакета: Локальная или Удаленная?

    Понимание масок критически важно для процесса маршрутизации. Когда хост (например, ваш ПК) хочет отправить пакет на другой IP-адрес, он выполняет следующую проверку:

  • Берет свой IP и свою маску, вычисляет свою сеть.
  • Берет IP получателя и свою маску, вычисляет сеть получателя.
  • Сравнивает эти две сети.
  • Сценарий 1: Сети совпадают

    Если вычисленные адреса сетей идентичны, значит, получатель находится в той же локальной сети (Local Network). * Маршрутизатор не нужен. * Отправитель ищет MAC-адрес получателя через протокол ARP и отправляет кадр напрямую (L2).

    Сценарий 2: Сети отличаются

    Если адреса сетей разные, значит, получатель находится в удаленной сети (Remote Network). * Напрямую отправить данные нельзя. * Отправитель упаковывает пакет в кадр, адресованный шлюзу по умолчанию (Default Gateway) — ближайшему интерфейсу маршрутизатора. * Дальше забота о доставке ложится на маршрутизатор.

    Особые адреса в подсети

    В любой подсети IPv4 два адреса зарезервированы и не могут быть присвоены хостам:

  • Адрес сети (Network Address): Самый первый адрес в диапазоне (все биты хостовой части равны 0). Используется для маршрутизации, чтобы указывать на сеть целиком. Пример: 192.168.10.0/24.
  • Широковещательный адрес (Broadcast Address): Самый последний адрес в диапазоне (все биты хостовой части равны 1). Пакет, отправленный на этот адрес, получат все устройства в данной подсети. Пример: 192.168.10.255/24.
  • Заключение

    Мы разобрали фундамент IP-адресации. IP-адрес в связке с маской подсети позволяет четко разделить глобальное пространство на управляемые сегменты. Это разделение дает возможность устройствам принимать ключевое решение: отправить пакет соседу напрямую или передать его маршрутизатору для путешествия в другую сеть.

    В следующей статье мы углубимся в то, как именно маршрутизатор принимает решения, изучая структуру таблицы маршрутизации и метрики.