Система маршрутизации - это совокупность таблиц маршрутов, протоколов и интерфейсов, которые определяют, как сетевые пакеты идут от источника к получателю. Маршрутизатор принимает пакет, смотрит на IP-адрес назначения, находит подходящую запись в таблице маршрутов и отправляет пакет через конкретный интерфейс к следующему узлу. Без этой логики обмен данными между подсетями невозможен: кадр Ethernet живёт только внутри одного сегмента L2, а всё, что выходит за его пределы, требует решения уровня L3.
Аналогия для запоминания ролей: маршрутизатор - сортировочный центр, таблица маршрутов - карта дорог с пунктами пересылки, интерфейсы - ворота склада, через которые посылка уходит дальше. Пакет без подходящего маршрута не ждёт на складе: его отбрасывают, а источнику уходит ICMP-сообщение Destination Unreachable.
Что такое система маршрутизации и зачем она нужна
Система маршрутизации решает три группы задач: выбирает путь по метрике, удерживает работоспособность сети при отказе каналов и позволяет сети расти без ручной перенастройки каждого устройства. Первая задача отвечает на вопрос «куда отправить пакет сейчас», вторая - «что делать, если привычный путь исчез», третья - «как не утонуть в правках, когда подсетей стало втрое больше».
Отдельно стоит сказать про границы сегмента. Пока трафик остаётся внутри одной подсети, маршрутизация не участвует: коммутатор доставляет кадр по MAC-адресу. Как только адрес назначения выходит за пределы локального префикса, решение принимает маршрутизатор, а значит, нужна согласованная маршрутная информация на всех промежуточных узлах. Именно поэтому в крупных сетях расхождение таблиц между устройствами даёт самый неприятный класс сбоев: часть путей работает, часть молча уходит в никуда.
Ключевые задачи маршрутизации в современных сетях
- Выбор оптимального пути. Маршрутизатор сравнивает несколько кандидатов по маске, административному расстоянию и метрике. OSPF считает стоимость по пропускной способности интерфейсов, EIGRP использует составную метрику из bandwidth, delay, load и reliability, BGP опирается на атрибуты и политики, а не на длину пути в хопах.
- Отказоустойчивость. Динамическая маршрутизация держит резервные маршруты и автоматически переключает трафик, когда основной канал перестаёт отвечать. При обрыве линка протокол рассылает обновление, соседи пересчитывают таблицы, и трафик идёт по альтернативному пути. Статическая схема так не умеет: пока администратор не внесёт правку, резервный маршрут либо простаивает, либо уже выбран и уводит пакеты в недоступный next hop.
- Масштабируемость. Новый сегмент в сети с динамической маршрутизацией анонсируется один раз, дальше информация распространяется по домену маршрутизации самими протоколами. При статике каждый новый префикс приходится прописывать на всех устройствах, которые должны о нём знать.
Как именно устройство сопоставляет адрес назначения с записями и в каком порядке применяет правила выбора, подробно разобрано в руководстве Маршрутизация IP-пакетов в 2026: от таблиц до алгоритмов выбора пути.
Компоненты системы маршрутизации: таблицы, протоколы, интерфейсы
Три компонента работают как конвейер: протоколы наполняют таблицу, таблица указывает выходной интерфейс, интерфейс передаёт кадр дальше. Разберём каждый элемент по отдельности.
Таблица маршрутов: структура и назначение
Таблица маршрутов хранит записи о сетях и интерфейсах, через которые нужно отправлять пакеты, и служит основной рабочей структурой для решения о пересылке. Типичная запись содержит сеть назначения, длину префикса, адрес следующего узла (next hop), выходной интерфейс и метрику.
| Сеть назначения | Префикс | Next hop | Интерфейс | Метрика |
|---|---|---|---|---|
| 192.168.2.0 | /24 | 192.168.1.2 | eth0 | 10 |
| 192.168.2.0 | /24 | 10.0.0.1 | eth1 | 20 |
| 0.0.0.0 | /0 | 203.0.113.1 | wan0 | 100 |
Для сети 192.168.2.0/24 есть два маршрута, и маршрутизатор выберет первый: метрика 10 меньше 20. Запись 0.0.0.0/0 - маршрут по умолчанию, он срабатывает, когда более точного совпадения в таблице нет.
Статические и динамические записи живут в одной таблице. Когда префиксы совпадают, спор решает административное расстояние (administrative distance): в Cisco IOS подключённая сеть имеет 0, статический маршрут 1, внешний eBGP 20, OSPF 110, RIP 120, внутренний iBGP 200. Меньшее значение означает большее доверие к источнику маршрута.
Протоколы маршрутизации: OSPF, BGP и другие
Протоколы маршрутизации обеспечивают обмен информацией между маршрутизаторами, чтобы все устройства видели согласованную картину доступных путей. OSPF - внутренний протокол на основе состояния каналов: каждый маршрутизатор строит граф сети и считает кратчайшие пути алгоритмом Дейкстры, а все области стыкуются через backbone area 0. BGP - внешний протокол для обмена между автономными системами, он оперирует атрибутами (AS-path, local preference, MED), поэтому маршруты в интернете выбираются политиками не меньше, чем топологией. EIGRP сочетает признаки distance-vector и link-state, RIP остаётся в учебных и очень маленьких сетях из-за предела в 15 хопов.
Плата за автоматизацию известна: динамические протоколы расходуют CPU и память, генерируют служебный трафик и требуют аккуратной первичной настройки. Как выбирать между OSPF, BGP и EIGRP под конкретную инфраструктуру, разобрано в материале Динамическая маршрутизация в 2026: протоколы OSPF, BGP и EIGRP для отказоустойчивых сетей.
Интерфейсы маршрутизатора: физические и логические
Интерфейс - точка подключения к сети. Физические интерфейсы: медный Ethernet, оптические SFP+/SFP28, последовательные каналы операторов. Логические: VLAN-интерфейсы (SVI), сабинтерфейсы 802.1Q, туннели GRE, IPsec и VXLAN, а также loopback. Каждый интерфейс с IP-адресом участвует в маршрутизации и может быть указан в записи как выходной. Маршрут по умолчанию 0.0.0.0/0 обычно ссылается на интерфейс, подключённый к провайдеру.
Протоколы привязываются к интерфейсам: команда network в OSPF включает подсеть интерфейса в процесс и запускает рассылку hello-пакетов. Loopback удобен тем, что не падает при сбое физического порта, поэтому его часто используют как router-id и адрес для управления.
Принципы работы маршрутизации: от пакета до следующего узла
Путь пакета через маршрутизатор состоит из предсказуемых шагов.
- Кадр приходит на интерфейс, проверяется контрольная сумма, заголовок канального уровня снимается.
- Маршрутизатор читает IP-адрес назначения.
- Ищет в таблице маршрутов совпадение по правилу longest prefix match.
- Определяет следующий узел и выходной интерфейс. Для напрямую подключённой сети выполняет ARP (в IPv6 - NDP) и получает MAC-адрес получателя.
- Уменьшает TTL на единицу, собирает новый заголовок канального уровня и отправляет кадр.
Когда TTL доходит до нуля, пакет отбрасывается, а источнику уходит ICMP Time Exceeded. Если подходящего маршрута нет, отправляется ICMP Destination Unreachable. Каждый маршрутизатор принимает решение независимо, поэтому маршруты на промежуточных узлах должны быть согласованы в обе стороны: рабочий маршрут «туда» без обратного даёт одностороннюю связь, когда ping не проходит, а tcpdump на одном из узлов видит только запросы.
Пример с двумя подсетями: хост 192.168.1.10 отправляет пакет на 192.168.2.20, шлюз по умолчанию 192.168.1.1. Маршрутизатор находит запись 192.168.2.0/24 с next hop 192.168.2.1, передаёт пакет туда, и второй маршрутизатор доставляет его в локальный сегмент.
Как маршрутизатор выбирает маршрут: метрики и префиксы
Порядок выбора такой: сначала самый длинный префикс, затем меньшее административное расстояние, затем меньшая метрика. Маршруты 10.0.0.0/8 и 10.1.0.0/16 конкурируют за пакет к адресу 10.1.2.3, и побеждает /16 как более специфичный. Если несколько маршрутов совпадают и по префиксу, и по административному расстоянию, и по метрике, включается ECMP и трафик распределяется между ними.
Метрики бывают заданными вручную (статический маршрут с metric 10) и вычисленными протоколом. Пошаговая настройка OSPF, проверка таблицы и методика поиска причин, когда ping не проходит, собраны в руководстве Принципы IP-маршрутизации: таблицы, метрики, алгоритм Longest Prefix Match и настройка OSPF.
Статическая и динамическая маршрутизация: сравнение и выбор
| Критерий | Статическая | Динамическая |
|---|---|---|
| Способ настройки | маршруты вводятся вручную на каждом устройстве | протокол обменивается анонсами и строит таблицу сам |
| Реакция на сбой канала | нет, нужен ручной перевод трафика | автоматический пересчёт маршрутов |
| Масштаб | десятки маршрутов, небольшие сети | сотни и тысячи префиксов |
| Нагрузка на оборудование | минимальная | CPU, память, служебный трафик |
| Предсказуемость | высокая: маршрут меняет только администратор | зависит от протокола, таймеров и политик |
| Типичная ошибка | опечатка в маске или next hop ломает связь | несовпадение area, таймеров или MTU мешает соседству |
Когда выбирать статическую маршрутизацию
Статика оправдана там, где топология меняется редко, а маршрутов немного.
- Сеть из 2-10 маршрутизаторов с предсказуемой схемой адресации.
- Одна или две подсети за одним маршрутизатором, как в сценарии с офисом и серверной ниже.
- Маршрут по умолчанию к провайдеру на пограничном устройстве или на хостах внутри сети.
- Point-to-point VPN с фиксированными адресами, где путь не меняется.
- Требования безопасности: обмен маршрутной информацией с внешними устройствами нежелателен.
Ограничение известно заранее: третья подсеть потребует обновить маршруты на всех устройствах, участвующих в передаче. Статический маршрут не исчезает при обрыве линка, поэтому без механизма отслеживания доступности он продолжает забирать трафик и создаёт чёрную дыру.
Когда выбирать динамическую маршрутизацию
Динамика нужна, когда у сети появляются филиалы, резервные каналы и требования к времени восстановления. В сети с OSPF авария канала приводит к пересчёту дерева кратчайших путей и установке альтернативного маршрута за секунды, без участия администратора. Добавление нового сегмента не требует правок на каждом устройстве: достаточно включить подсеть в процесс маршрутизации.
Обратная сторона: протоколы нужно настраивать и мониторить, они расходуют ресурсы оборудования и чувствительны к ошибкам в параметрах. Подробное сравнение подходов по сходимости, нагрузке и сценариям применения (офис, дата-центр, VPN, филиалы) собрано в статье Статическая или динамическая маршрутизация: что выбрать для вашей сети.
Влияние архитектуры маршрутизации на отказоустойчивость и масштабируемость
Отказоустойчивость зависит не от количества каналов, а от того, знает ли о них система маршрутизации. Протоколы динамической маршрутизации поддерживают несколько путей к одной сети, выбирают лучший по метрике и переключаются на резервный после сбоя. Масштабируемость работает по той же логике: новый узел анонсирует свои префиксы, соседи обновляют таблицы, ручная перенастройка всей сети не нужна.
Статическая схема упирается в размер. Пока маршрутов десятки, ручное управление даёт предсказуемость. Когда счёт идёт на сотни записей и каналы меняют состояние, время восстановления определяется тем, как быстро администратор узнает об аварии.
Резервирование маршрутов и балансировка нагрузки
На практике применяют два приёма. Первый - плавающий статический маршрут: основной прописан с метрикой 1, резервный с метрикой 10 или большим административным расстоянием, поэтому до поры до времени он не используется. Важная деталь: резервный статический маршрут не исчезнет сам при обрыве канала, поэтому его привязывают к отслеживанию доступности (IP SLA в Cisco, object tracking), иначе трафик уйдёт в недоступный next hop.
Второй приём - ECMP: несколько маршрутов с одинаковой метрикой делят трафик между собой. Классическая схема с двумя аплинками к одному или разным провайдерам: OSPF или BGP устанавливает оба пути, а при отказе одного оставшийся берёт нагрузку целиком. На маршрутизаторах Cisco распределение по ECMP выполняет CEF, а число путей ограничено платформой, на практике это 4-16.
Практические примеры и типичные ошибки
Пример настройки статической маршрутизации в небольшом офисе
Дано: две подсети 192.168.1.0/24 (офис) и 192.168.2.0/24 (серверная), между ними маршрутизатор. Чтобы узлы видели друг друга, нужен маршрут в каждую сторону.
На первом маршрутизаторе (адрес в офисе 192.168.1.1, сосед 192.168.1.2):
ip route 192.168.2.0 255.255.255.0 192.168.1.2
На втором:
ip route 192.168.1.0 255.255.255.0 192.168.2.1
Проверка: show ip route, обе записи должны иметь пометку S (static). Дальше ping между хостами разных подсетей и traceroute для контроля пути. В Linux та же задача решается командой ip route add 192.168.2.0/24 via 192.168.1.2, а пересылку пакетов между интерфейсами включает параметр ядра. Полная схема для сервера маршрутизации с ip route, sysctl, nftables и диагностикой через tcpdump приведена в статье Сервер маршрутизации: принцип работы, отличие от маршрутизатора и применение в сети.
Пример настройки динамической маршрутизации с OSPF
Дано: три маршрутизатора, соединённые в кольцо, транзитные линки из 10.0.0.0/24. На каждом выполняется:
router ospf 1
network 10.0.0.0 0.0.0.255 area 0
passive-interface gi0/1
Проверка соседства: show ip ospf neighbor, состояние должно быть FULL. После этого show ip route покажет маршруты с пометкой O. Отключите один линк, и OSPF пересчитает дерево кратчайших путей и поставит альтернативный маршрут.
Условия стабильной работы: одинаковые hello- и dead-интервалы, одна и та же area, совпадающий MTU на линке. Из-за разного MTU соседство застревает в состояниях EXSTART или EXCHANGE, и маршруты не появляются, хотя интерфейсы подняты и адреса настроены верно.
Типичные ошибки, которые ломают связь чаще всего:
- неверная маска: вместо /24 указан /16, и устройство считает своей всю смежную адресацию;
- отсутствие обратного маршрута, из-за чего связь остаётся односторонней;
- два маршрута по умолчанию, указывающие друг на друга на паре маршрутизаторов, создают петлю;
- статический маршрут без отслеживания доступности остаётся в таблице после обрыва линка и уводит трафик в чёрную дыру;
- забытый passive-interface в OSPF: hello-пакеты уходят в пользовательские сегменты и раскрывают топологию;
- нарушение порядка применения правил: попытка перекрыть более специфичный маршрут статикой с меньшей метрикой, хотя приоритет у самого длинного префикса.
Перед любыми изменениями сохраните текущую таблицу маршрутов на всех затронутых устройствах, после правки проверьте доступность из обеих подсетей и только затем переносите конфигурацию в рабочую среду. Для диагностики хватает трёх инструментов: show ip route для таблицы, traceroute для пути и tcpdump или счётчики интерфейсов для проверки, доходят ли пакеты до точки входа. Если маршрут есть с одной стороны и отсутствует с другой, ищите проблему в обратном направлении, а не в метриках.