Приветствую, коллеги! Меня зовут @ProstoKirReal. Мне бы хотелось с вами обсудить как работает интернет от кабелей на витой паре, соединяющие простые локальные сети до подводных коммуникационных кабелей соединяющие между собой континенты и основные операторские сети.
В этом цикле статей я не стану учить вас настраивать оборудование и проектировать сети. Я расскажу об основных (и не только) принципах построения сети, а также о функционировании сети и сетевых протоколов в стеке TCP/IP.
Я буду часто ссылаться к предыдущим статьям, где уже описывал сетевые протоколы. Это позволит мне сократить объемный текст.
Рекомендую, перед прочтением, ознакомится с предыдущими статьями:
❯ Зачем нужна эта статья?
Данная статья нужна нам для того, чтобы разобраться в базовых знаниях и разобрать:
-
что такое статическая и динамическая маршрутизация;
-
что такое маршрутизация, в том числе между VLAN-ами;
-
что такое Proxy ARP;
-
что такое Super VLAN;
-
примеры работы сети с маршрутизацией.
❯ Что такое маршрутизация?
Маршрутизация — это процесс выбора оптимального пути для передачи пакетов данных между узлами сети. Если VLAN и маски помогают сегментировать сеть, то маршрутизация позволяет этим сегментам обмениваться данными, обеспечивая связь между различными сетевыми сегментами и даже глобальными сетями.
Существует два основных типа маршрутизации:
-
статическая — администратор вручную задает маршруты в таблице маршрутизации, указывая, куда направлять трафик;
-
динамическая — маршруты добавляются автоматически с использованием специальных протоколов маршрутизации, которые позволяют сетевым устройствам адаптироваться к изменениям сети без участия администратора.
❯ Статическая маршрутизация
Статическая маршрутизация предполагает, что администратор вручную прописывает пути передачи данных. Она применяется в небольших сетях, где нет необходимости в сложной динамической маршрутизации, а маршруты редко изменяются.
Пример настройки статического маршрута:
ip route 192.168.2.0 255.255.255.0 192.168.1.1
Эта команда говорит маршрутизатору, что для передачи данных в подсеть 192.168.2.0/24 необходимо использовать следующий узел (next hop) 192.168.1.1.
Преимущества статической маршрутизации:
-
простота настройки и диагностики;
-
высокая надежность, так как маршруты не изменяются без вмешательства администратора;
-
полный контроль над маршрутами, что может быть полезно в сетях с жесткими требованиями безопасности.
Недостатки:
-
низкая масштабируемость: если сеть расширяется, администратор вынужден вручную прописывать новые маршруты;
-
в случае отказа одного из маршрутов его нужно менять вручную, что может привести к простою сети.
❯ Динамическая маршрутизация
При динамической маршрутизации маршрутизаторы автоматически обмениваются информацией о доступных путях. Это позволяет сети адаптироваться к изменениям топологии, например, если один из маршрутов становится недоступен, маршрутизаторы автоматически находят альтернативный путь.
Протоколы динамической маршрутизации можно разделить на:
-
протоколы дистанционно-векторной маршрутизации (например, RIP), которые работают на основе количества переходов (hops);
-
протоколы состояния канала (например, OSPF), которые строят карту сети и вычисляют наилучший маршрут;
-
гибридные протоколы (например, EIGRP), сочетающие преимущества двух подходов.
Преимущества динамической маршрутизации:
-
автоматическое обновление маршрутов при изменении топологии сети;
-
оптимизация передачи данных благодаря автоматическому выбору наилучшего пути;
-
поддержка сложных сетевых структур.
Недостатки:
-
большая нагрузка на оборудование, так как требуется анализ и обработка маршрутов.
-
сложность настройки и диагностики.
Рассмотрим на примерах, как работает маршрутизация.
❯ Пример работы простой сети с помощью маршрутизатора
Для наглядности разберем работу маршрутизации в сети с несколькими устройствами и двумя коммутаторами.
Устройства в сети:
-
компьютер №1: IP-адрес 192.168.0.1, шлюз по умолчанию 192.168.0.254;
-
компьютер №2: IP-адрес 192.168.1.1, шлюз по умолчанию 192.168.1.254;
-
коммутаторы №1 и №2: подключают между собой компьютеры и маршрутизатор;
-
маршрутизатор №1: не имеет записей маршрутизации, только назначены IP-адреса на двух интерфейсах (для directly connected сетей).

Важное замечание:
-
при передаче пакетов внутри одной локальной сети MAC-адреса отправителя и получателя (src и dst) не изменяются;
-
при маршрутизации пакетов между различными сетями MAC-адреса отправителя и получателя всегда меняются;
-
при маршрутизации пакетов между несколькими локальными сетями IP-адреса (src и dst) не меняются, если не используется NAT.
Шаг 1: ARP-запрос/ответ
Когда компьютер №1 отправляет команду «ping» на компьютер №2, он сначала генерирует ARP-запрос для получения MAC-адреса получателя. Так как получатель находится в другой подсети, компьютер №1 будет искать MAC-адрес своего шлюза по умолчанию.
Процесс передачи ARP-запроса:
-
на стороне компьютера №1: ARP-запрос отправляется в сторону коммутатора №1;
-
на стороне коммутатора №1: ARP-запрос передается к маршрутизатору №1;
-
на стороне маршрутизатора №1: ARP-ответ отправляется обратно к компьютеру №1.

Шаг 2: ICMP-запрос
Теперь, когда компьютер №1 получил MAC-адрес шлюза, он формирует ICMP-запрос и отправляет его на компьютер №2.
Процесс передачи ICMP-запроса:
-
на стороне компьютера №1: ICMP-запрос передается в сторону коммутатора №1;
-
на стороне коммутатора №1: ICMP-запрос передается к маршрутизатору №1;
-
на стороне маршрутизатора №1: маршрутизатор не имеет записи о компьютере №2 в своей MAC-таблице, поэтому запрос отклоняется. Вместо этого маршрутизатор генерирует ARP-запрос для получения MAC-адреса компьютера №2.

Шаг 3: ARP-запрос/ответ
Процесс передачи ARP-запроса:
-
на стороне маршрутизатора №1: ARP-запрос отправляется к коммутатору №1;
-
на стороне коммутатора №1: ARP-запрос передается к компьютеру №2;
-
на стороне компьютера №2: ARP-ответ отправляется к маршрутизатору №1.

Шаг 4: ICMP-запрос
Теперь, когда маршрутизатор №1 знает MAC-адрес компьютера №2, он может продолжить передачу пакетов между компьютерами.
Так как первый ICMP-запрос был отклонен маршрутизатором, компьютер №1 создает новый запрос и отправляет его в сеть.
Процесс передачи ICMP-запроса:
-
на стороне компьютера №1: ICMP-запрос передается в сторону коммутатора №1;
-
на стороне коммутатора №1: ICMP-запрос передается к маршрутизатору №1;
-
на стороне маршрутизатора №1: в ICMP-запросе изменяются MAC-адреса отправителя и получателя на соответствующие и запрос передается к коммутатору №2;
-
на стороне коммутатора №2: ICMP-запрос передается к компьютеру №2.

Шаг 5: ICMP-ответ
Процесс передачи ICMP-ответа:
-
на стороне компьютера №2: ICMP-ответ отправляется к коммутатору №2;
-
на стороне коммутатора №2: ICMP-ответ передается к маршрутизатору №1;
-
на стороне маршрутизатора №1: в ICMP-ответе меняются MAC-адреса отправителя и получателя на соответствующие, и ответ направляется к коммутатору №1;
-
На стороне коммутатора №1: ICMP-ответ передается к компьютеру №1.

❯ Пример работы простой сети с помощью маршрутизации на палочке
В предыдущем примере мы рассмотрели схему сети, в которой маршрутизация происходит между интерфейсами на маршрутизаторе. Однако, когда количество интерфейсов на маршрутизаторе ограничено, можно использовать один физический интерфейс и создать несколько логических интерфейсов. Эти логические интерфейсы называются саб-интерфейсами.
Саб-интерфейс (от англ. subinterface) — это дополнительный интерфейс внутри основного физического интерфейса, используемый для разделения трафика, что позволяет эффективно использовать один физический интерфейс для нескольких виртуальных интерфейсов.
Такая схема маршрутизации называется маршрутизация на палочке (Router-on-a-Stick). Давайте разберем работу маршрутизации с использованием саб-интерфейсов.
Устройства в сети:
-
компьютер №1: IP-адрес 192.168.0.1, шлюз по умолчанию 192.168.0.254;
-
компьютер №2: IP-адрес 192.168.1.1, шлюз по умолчанию 192.168.1.254;
-
коммутатор №1: подключает между собой компьютеры и маршрутизатор;
-
каршрутизатор №1: не имеет записей маршрутизации, назначены только IP-адреса на двух саб-интерфейсах (для directly connected сетей).

Важное замечание
При настройке нескольких саб-интерфейсов на одном физическом интерфейсе используется один MAC-адрес для нескольких IP-адресов. В приведенных выше примерах мы рассматривали процесс ARP-обмена между устройствами в сети и их шлюзами по умолчанию. В дальнейших примерах мы будем условно считать, что ARP-обмен между всеми узлами сети уже завершен, чтобы сэкономить время.
Шаг 1: ARP-запрос/ответ
Когда компьютер №1 отправляет команду «ping» на компьютер №2, он сначала формирует ARP-запрос для определения MAC-адреса получателя. Поскольку получатель находится в другой подсети и компьютер №1 уже знает MAC-адрес своего шлюза по умолчанию, то он сразу формирует ICMP-запрос.
Шаг 2: ICMP-запрос
Процесс передачи ICMP-запроса:
-
на стороне компьютера №1: ICMP-запрос отправляется в сторону коммутатора №1;
-
на стороне коммутатора №1: ICMP-запрос передается к маршрутизатору №1;
-
на стороне маршрутизатора №1: в ICMP-запросе меняются MAC-адреса отправителя (src) и получателя (dst) на соответствующие, и запрос направляется обратно к коммутатору №1;
-
На стороне коммутатора №1: ICMP-запрос передается к компьютеру №2.

Шаг 3: ICMP-ответ
Процесс передачи ICMP-ответа:
-
на стороне компьютера №2: ICMP-ответ отправляется к коммутатору №1;
-
на стороне коммутатора №1: ICMP-ответ передается к маршрутизатору №1;
-
на стороне маршрутизатора №1: в ICMP-ответе меняются MAC-адреса отправителя (src) и получателя (dst) на соответствующие, и ответ направляется обратно к коммутатору №1;
-
на стороне коммутатора №1: ICMP-ответ передается к компьютеру №1.

❯ Пример работы простой сети с помощью «межвлановой» маршрутизации
В предыдущем примере мы рассмотрели схему, где маршрутизация осуществляется на роутере. Обычно маршрутизатор занимается передачей пакетов между локальной сетью и интернетом. Однако в локальных сетях часто используется «межвлановая» маршрутизация на L3-коммутаторах.
Почему используют L3-коммутаторы для маршрутизации в локальных сетях?
Преимущества использования L3-коммутатора для маршрутизации:
-
высокая производительность благодаря быстрому переключению трафика на уровне 2 (канала передачи);
-
поддержка большого количества портов для подключения множества устройств;
-
возможность разделения трафика между различными подсетями;
-
гибкость в настройке маршрутизации и безопасности.
Для наглядности разберем работу «межвлановой» маршрутизации.
Устройства в сети:
-
компьютер №1: IP-адрес 192.168.0.1, шлюз по умолчанию 192.168.0.254, VLAN ID №2;
-
компьютер №2: IP-адрес 192.168.1.1, шлюз по умолчанию 192.168.1.254, VLAN ID №3;
-
коммутатор №1: подключает между собой компьютеры и коммутатор №2 (L3);
-
коммутатор №2 (L3): не имеет записей маршрутизации, назначены IP-адреса на двух саб-интерфейсах (для directly connected сетей) и соответствующие VLAN ID;
-
между портами коммутаторов настроены trunk-порты для передачи тегированного трафика между собой.

Важное замечание
В приведенных ниже примерах (на картинках) VLAN ID в пакете указаны условно. Тегирование и снятие тега происходит на L2-коммутаторе.
Шаг 1: ICMP-запрос
Процесс передачи ICMP-запроса:
-
на стороне компьютера №1: ICMP-запрос передается к коммутатору L2;
-
на стороне коммутатора L2: ICMP-запрос тегируется с VLAN ID №2 и передается к L3 коммутатору;
-
на стороне L3 коммутатора №1: в ICMP-запросе меняются MAC-адреса отправителя (src) и получателя (dst) на соответствующие, VLAN ID меняется на №3. Запрос направляется обратно к коммутатору L2;
-
на стороне коммутатора L2: тег VLAN ID снимается, и запрос передается к компьютеру №2.

Шаг 2: ICMP-ответ
Процесс передачи ICMP-ответа:
-
на стороне компьютера №2: ICMP-ответ отправляется к коммутатору L2;
-
на стороне коммутатора L2: ICMP-ответ тегируется с VLAN ID №3 и передается к L3 коммутатору;
-
на стороне L3 коммутатора: в ICMP-ответе меняются MAC-адреса отправителя (src) и получателя (dst) на соответствующие, VLAN ID меняется на №2. Ответ направляется обратно к коммутатору L2;
-
на стороне коммутатора L2: тег VLAN ID снимается, и ответ передается к компьютеру №1.

❯ Зачем использовать маршрутизатор, если L3-коммутатор выполняет маршрутизацию?
Если маршрутизатор и L3-коммутатор могут выполнять маршрутизацию схожим образом, возникает вопрос: зачем переплачивать за маршрутизатор и использовать его в сети, если можно обойтись только L3-коммутаторами?
В простых локальных сетях часто используют исключительно L3-коммутаторы, а маршрутизаторы ставят только на границе с оператором. L3-коммутаторы обеспечивают более быструю и эффективную маршрутизацию внутри сети, чем маршрутизаторы. Однако маршрутизаторы предлагают более широкий функционал, включая поддержку различных протоколов, фильтрацию трафика, VPN и другие функции.
Сегодня разница между этими устройствами становится менее очевидной, поскольку многие L3-коммутаторы имеют функции маршрутизаторов на борту. Всё зависит от ваших конкретных требований при проектировании сети. Эта тема будет рассмотрена в следующей статье, посвященной построению сетей и ЦОД-ов.
❯ Proxy ARP: техническое объяснение и пример работы
❯ Что такое Proxy ARP?
Proxy ARP — это механизм, который позволяет устройству, не имеющему информации о маршрутизации (не указан шлюз по умолчанию), взаимодействовать с узлами в других сетях так, будто они находятся в одной сети. Это достигается за счёт того, что маршрутизатор с включённой функцией Proxy ARP отвечает на ARP-запросы от имени удалённого узла, «маскируя» наличие маршрутизации.
Как это работает
Рассмотрим типичную ситуацию, в которой Proxy ARP может пригодиться. Допустим, компьютер с IP-адресом 192.168.0.1/26 хочет обменяться данными с узлом 192.168.0.66/26. Оба адреса принадлежат сети 192.168.0.0/24, но находятся в разных подсетях:
-
192.168.0.1/26 — принадлежит диапазону 192.168.0.0 – 192.168.0.63;
-
192.168.0.66/26 — принадлежит диапазону 192.168.0.64 – 192.168.0.127.
Когда компьютер 192.168.0.1/26 попытается отправить данные узлу 192.168.0.66/26, он отправит ARP-запрос в сеть, ожидая ответа от 192.168.0.66. Однако ответ не поступит, так как узел 192.168.0.66 находится в другой подсети и не видит этот запрос напрямую.

Если в сети есть маршрутизатор с включённым Proxy ARP, он увидит ARP-запрос и ответит от имени 192.168.0.66, сообщив свой MAC-адрес. В результате компьютер 192.168.0.1/26 отправит данные на MAC-адрес маршрутизатора, который затем перенаправит их в нужную подсеть к 192.168.0.66/26. Для отправителя это будет выглядеть так, будто он взаимодействует напрямую с 192.168.0.66, хотя на самом деле трафик проходит через маршрутизатор.

❯ Рассмотрим практический пример
Устройства в сети:
-
компьютер №1: IP-адрес 192.168.0.1, шлюза по умолчанию НЕТ;
-
компьютер №2: IP-адрес 192.168.0.66, шлюза по умолчанию НЕТ;
-
коммутатор L3: имеет IP-адреса на саб-интерфейсах, но не является шлюзом по умолчанию. Включена функция Proxy ARP.
-
коммутаторы №1 и №2: подключают между собой компьютеры и коммутатор L3.
Шаг 1: ARP-запрос/Proxy-ответ
Когда компьютер №1 отправляет «ping» на компьютер №2, он сначала формирует ARP-запрос для определения MAC-адреса получателя. Так как компьютер №1 не знает, что получатель находится в другой подсети, он отправляет ARP-запрос напрямую на 192.168.0.66.
-
на стороне компьютера №1: ARP-запрос передается на коммутатор №1 и далее на коммутатор №2;
-
на стороне коммутатора №2: ARP-запрос передается к маршрутизатору;
-
на стороне маршрутизатора: маршрутизатор обрабатывает ARP-запрос и отвечает компьютеру №1, что у IP-адреса 192.168.0.66 его MAC-адрес.

Шаг 2: ICMP-запрос
Теперь компьютер №1 считает, что знает MAC-адрес компьютера №2, и отправляет ICMP-запрос.
-
на стороне компьютера №1: ICMP-запрос передается к коммутатору и далее на маршрутизатор;
-
на стороне маршрутизатора: маршрутизатор не имеет в своей MAC-таблице записи о компьютере №2, поэтому запрос отклоняется и маршрутизатор генерирует ARP-запрос для 192.168.0.66.

Шаг 3: ARP-запрос/ответ
-
на стороне маршрутизатора: ARP-запрос отправляется на коммутатор №2;
-
на стороне коммутатора №2: ARP-запрос передается к компьютеру №2;
-
на стороне компьютера №2: ARP-ответ отправляется на маршрутизатор №1.

Шаг 4: ICMP-запрос
Теперь маршрутизатор знает MAC-адрес компьютера №2 и может передавать пакеты между компьютерами.
-
на стороне компьютера №1: компьютер формирует новый ICMP-запрос и отправляет его к маршрутизатору;
-
на стороне маршрутизатора: маршрутизатор меняет MAC-адреса в ICMP-запросе и направляет его к компьютеру №2.

Шаг 5: ICMP-ответ
Здесь проявляется отличие от обычной маршрутизации. Компьютер №1 не знает MAC-адрес компьютера №2, поэтому он снова генерирует ARP-запрос.
-
на стороне компьютера №2: ARP-запрос отправляется в сеть;
-
на стороне маршрутизатора №1: ARP-запрос обрабатывается маршрутизатором, и он отвечает компьютеру №2, что у IP-адреса его MAC-адрес.
Теперь компьютер №2 думает, что знает MAC-адрес компьютера №1, и формирует ICMP-ответ.
-
на стороне компьютера №2: ICMP-ответ отправляется на маршрутизатор;
-
на стороне маршрутизатора №1: маршрутизатор меняет MAC-адреса в ICMP-ответе и направляет его к компьютеру №1.

❯ Итог
Proxy ARP — полезный, но потенциально небезопасный механизм, поскольку позволяет устройствам взаимодействовать без явной маршрутизации. Хотя эта функция включена по умолчанию во многих устройствах, её часто отключают для повышения безопасности и предотвращения ошибок маршрутизации.
❯ Но зачем нам знать о Proxy ARP, если настроить обычную маршрутизацию проще и это безопаснее для нашей сети?
Ответ прост: знание о Proxy ARP необходимо, поскольку в некоторых случаях эта функция может быть крайне полезной, например, в сложных или старых сетевых инфраструктурах. Она помогает облегчить взаимодействие устройств в разных подсетях без явной настройки маршрутизации. Однако, важно учитывать, что этот механизм имеет свои риски и должен использоваться с осторожностью.
❯ Маршрутизация через супер VLAN
VLAN помогают сегментировать сеть, но если необходимо передавать данные между VLAN, используется маршрутизация:
-
маршрутизация между VLAN через маршрутизатор (Router-on-a-stick);
-
маршрутизация через Layer 3 коммутатор, который может выполнять функции маршрутизатора.
Также существует концепция супер VLAN (Super VLAN или Private VLAN), которая позволяет уменьшить количество маршрутов в сети. Вместо того чтобы маршрутизировать каждый VLAN отдельно, можно объединить несколько VLAN в одну группу с единым шлюзом.
❯ Что такое Super VLAN и почему нужен Proxy ARP?
❯ Определение Super VLAN
Super VLAN – это концепция, используемая в сетях для объединения нескольких логических VLAN в одну общую широковещательную домену (Layer 2). Это позволяет уменьшить количество широковещательных фреймов и более эффективно использовать IP-адресное пространство.
Super VLAN состоит из двух ключевых компонентов:
-
Primary VLAN (основная VLAN) — VLAN, в которой находятся шлюзы для конечных устройств;
-
Sub VLAN (вторичные VLAN) — логически разделённые VLAN, использующие общий шлюз из Primary VLAN.
Эта схема часто используется в крупных корпоративных сетях и для управления большим количеством пользователей в единой инфраструктуре.
❯ Как работает передача данных в Super VLAN?
В стандартных VLAN маршрутизация между разными VLAN выполняется маршрутизатором (L3-устройством). В Super VLAN же различные VLAN не имеют собственных шлюзов; они используют единый IP-шлюз из Primary VLAN.
Проблема возникает, если два устройства из разных Sub VLAN (например, VLAN 101 и VLAN 102) пытаются обменяться данными. Поскольку они принадлежат разным VLAN, в обычной ситуации они не смогут отправить ARP-запрос и узнать MAC-адрес друг друга.
❯ Зачем Super VLAN использует Proxy ARP?
Proxy ARP решает эту проблему, подменяя ARP-ответы и заставляя устройства «думать», что они находятся в одной сети.
Пример работы:
-
компьютер A (192.168.1.10 в VLAN 101) хочет отправить пакет на Компьютер B (192.168.1.20 в VLAN 102);
-
компьютер A отправляет ARP-запрос для получения MAC-адреса 192.168.1.20;
-
но поскольку VLAN 101 и VLAN 102 изолированы, ARP-запрос не достигнет Компьютера B;
-
маршрутизатор (или коммутатор с поддержкой Proxy ARP) отвечает на запрос от имени Компьютера B, подставляя свой MAC-адрес;
-
компьютер A отправляет пакет на MAC-адрес маршрутизатора, который перенаправляет его в VLAN 102.
Таким образом, устройства из разных VLAN внутри Super VLAN могут обмениваться данными без настройки отдельного шлюза по умолчанию. Если не требуется взаимодействие между компьютерами из разных VLAN, Proxy ARP нужно отключить.
❯ Применение Proxy ARP в Super VLAN
Proxy ARP позволяет:
-
скрыть границы VLAN – устройства не осознают, что находятся в разных VLAN, так как получают ARP-ответы, как если бы они находились в одной сети;
-
обеспечить связь между Sub VLAN без маршрутизации – без Proxy ARP трафик просто бы не передавался, так как стандартный ARP-запрос не преодолевает границы VLAN;
-
снизить потребность в настройке шлюза на клиентских устройствах – они просто обмениваются ARP, а маршрутизатор прозрачно подменяет MAC-адрес.
❯ Итог
Super VLAN — это объединение нескольких VLAN в одно широковещательное пространство. Proxy ARP используется для того, чтобы устройства из разных Sub VLAN могли взаимодействовать, не подозревая о разделении сети.
Важно
Super VLAN подходит для крупных сетей, где нужно объединить несколько VLAN, не расходуя IP-адреса на каждое конечное устройство. Однако настройка требует строгого контроля маршрутизации и безопасности, чтобы избежать утечек данных между VLAN.
❯ Пример работы маршрутизации между двумя маршрутизаторами
Рассмотрим два маршрутизатора — R1 и R2, которые соединяют две разные сети. Изначально маршруты не настроены, и пакеты не могут передаваться между сетями. После добавления маршрутов связь устанавливается.
Устройства в сети:
-
маршрутизатор R1:
-
интерфейс Ge1 (локальная сеть 1): 192.168.0.100/24;
-
интерфейс Ge2 (канал к R2): 192.168.1.100/24.
-
-
маршрутизатор R2:
-
интерфейс Ge1 (локальная сеть 2): 192.168.1.101/24;
-
интерфейс Ge2 (канал к R1): 192.168.2.100/24.
-
-
компьютер №1: 192.168.1.1/24 (подключён к R1);
-
компьютер №2: 192.168.2.1/24 (подключён к R2);
В таблицах маршрутов изначально нет записей для сетей 192.168.1.0/24 на R1 и 192.168.2.0/24 на R2.

❯ Пакет НЕ доходит до назначения (без маршрутов)
Предположим, Компьютер №1 пытается отправить ICMP-запрос (ping) на Компьютер №2:
-
компьютер №1 видит, что адрес 192.168.2.1 не в его подсети, и отправляет пакет на шлюз по умолчанию (R1, 192.168.1.100);
-
R1 получает пакет, но не знает, как доставить его в сеть 192.168.2.0/24, так как в таблице маршрутов нет записи для этой сети;
-
пакет отклоняется, и на R1 появляется сообщение об ошибке: Destination Host Unreachable.
То же самое произойдёт и на R2, если Компьютер №2 попытается отправить ответ.

❯ Добавляем статические маршруты
Теперь добавим маршруты для корректной передачи пакетов:
На R1 добавляем маршрут к сети 192.168.2.0/24 через R2 (192.168.1.101):
ip route add 192.168.2.0/24 via 192.168.1.101
На R2 добавляем маршрут к сети 192.168.1.0/24 через R1 (192.168.1.100):
ip route add 192.168.1.0/24 via 192.168.1.100
Теперь оба маршрутизатора знают, куда направлять пакеты.

❯ Как теперь передается пакет?
Теперь, когда Компьютер №1 отправляет пакет на Компьютер №2, процесс выглядит следующим образом:
-
компьютер №1 отправляет пакет на R1 (192.168.0.100), поскольку 192.168.2.1 не в его подсети;
-
R1 проверяет таблицу маршрутов и находит, что сеть 192.168.2.0/24 доступна через 192.168.1.101;
-
R1 отправляет пакет через интерфейс 192.168.1.100 на R2 (192.168.1.101);
-
R2 получает пакет, проверяет таблицу маршрутов и видит, что сеть 192.168.2.0/24 — это его локальная сеть;
-
R2 отправляет ARP-запрос для определения MAC-адреса Компьютера №2 (192.168.2.1);
-
компьютер №2 отвечает ARP-ответом, и R2 передаёт пакет.
Когда Компьютер №2 отправляет ответ:
-
компьютер №2 направляет пакет на шлюз R2 (192.168.2.100);
-
R2 проверяет таблицу маршрутов и отправляет пакет на R1 (192.168.1.100);
-
R1 перенаправляет пакет в сеть 192.168.0.0/24, и Компьютер №1 получает ответ.

❯ Итог
-
Без настройки маршрутов пакеты не могут пройти и отбрасываются.
-
После добавления статических маршрутов, маршрутизаторы R1 и R2 знают, куда направлять пакеты.
-
Сеть работает корректно, и устройства могут обмениваться трафиком.
❯ Заключение
В этой статье мы подробно рассмотрели различные аспекты маршрутизации в компьютерных сетях, включая основные концепции маршрутизации, такие как статическая и динамическая маршрутизация, а также более сложные механизмы, такие как маршрутизация через супер VLAN и использование Proxy ARP для взаимодействия устройств в разных VLAN. Мы также проанализировали примеры работы сетей с использованием маршрутизаторов, а также рассмотрели специфические схемы маршрутизации, включая межвлановую маршрутизацию и Router-on-a-stick. Эти темы являются важной основой для понимания того, как данные передаются между различными сегментами сети и как можно настроить сеть для эффективного обмена информацией.
В следующей статье мы перейдём к более сложным темам и рассмотрим схемы построения различных типов сетей: локальных сетей (LAN), глобальных сетей (WAN) и центров обработки данных (ЦОД). Мы обсудим, как эти сети проектируются, какие технологии и топологии используются для их реализации, а также как правильно спроектировать инфраструктуру для обеспечения надежности и масштабируемости сетевых решений.
P.S. Почему пакеты передаются в сеть с меньшей маской
Маршрутизаторы и коммутаторы выбирают маршрут в сеть с меньшей маской (то есть с большим числом охватываемых хостов), если не найдено более точного совпадения в таблице маршрутизации.
Например, сеть с адресом 192.168.0.0/16 охватывает подсети 192.168.1.0/24 и 192.168.2.0/24. Если устройство получает пакет для адреса 192.168.1.50, оно сначала ищет маршрут с наиболее точным совпадением, а затем выбирает более общий маршрут, если точного нет.
Почему это важно?
-
Упрощение маршрутизации: Резервный маршрут с меньшей маской позволяет передавать трафик даже в случае отсутствия точных записей.
-
Оптимизация масштабируемости: Глобальные маршруты охватывают сразу несколько подсетей, уменьшая объем таблицы маршрутизации.
Почему маршруты с более узкой маской считаются более специфичными?
Маршрут с более узкой маской указывает на меньший диапазон IP-адресов. Это позволяет маршрутизатору точнее определить, куда нужно направить пакет. Например:
-
маршрут 192.168.1.0/24 определяет одну конкретную подсеть;
-
маршрут 192.168.0.0/16 охватывает множество подсетей, включая 192.168.1.0/24, 192.168.2.0/24 и так далее.
Когда маршрутизатор выбирает маршрут, он ориентируется на правило: чем уже маска, тем точнее маршрут.
Пример выбора маршрута:
Таблица маршрутизации:
-
192.168.1.0/24 → Подсеть IT;
-
192.168.0.0/16 → Общая сеть офиса.
Пакет для адреса 192.168.1.100:
-
маршрутизатор видит, что адрес соответствует обоим маршрутам;
-
однако маршрут 192.168.1.0/24 точнее, так как охватывает только эту подсеть.
Пакет для адреса 192.168.2.50:
-
маршрут 192.168.1.0/24 не подходит, так как адрес выходит за его пределы;
-
выбирается более широкий маршрут 192.168.0.0/16, охватывающий все адреса от 192.168.0.0 до 192.168.255.255.
Для тех кто прочитал до конца
Немного важной информации
Коллеги, добрый день! Я создал Telegram-канал от сетевика для сетевиков.
Если ты сетевой инженер, системный администратор, разработчик, студент или просто увлекаешься сетями — тебе сюда.
Что тебя ждет?
-
Разборы глобальных сбоев и неожиданных сетевых проблем.
-
Мини-статьи с полезными фишками и объяснением сложных тем простым языком.
-
Истории из жизни сетевиков — в том числе от подписчиков.
Ссылка на канал: https://t.me/ProstoKirReal
Автор: ProstoKirReal