Маршрутизаторы (L3) и межсетевое взаимодействие
Студент освоит основы маршрутизации, передачу пакетов между различными IP-подсетями и роль маршрутизаторов в инфраструктуре.
Зачем нужен L3? Ограничения канального уровня
В предыдущем уроке мы изучили L2-коммутаторы и выяснили, что они отлично справляются с передачей кадров по MAC-адресам внутри одной сети (VLAN). Однако построить глобальную сеть на одних коммутаторах невозможно. Почему? Во-первых, MAC-адреса плоские, они не имеют иерархии (как почтовые индексы). Если бы коммутаторы интернета работали по MAC, их таблицы должны были бы хранить миллиарды записей, что аппаратно недостижимо. Во-вторых, широковещательные домены: broadcast-запросы затопили бы весь мир. В-третьих, VLAN изолируют сети друг от друга аппаратно.
Здесь на помощь приходит Сетевой уровень (L3) модели OSI и его главное устройство — Маршрутизатор (Router) или L3-коммутатор. Маршрутизатор работает с логическими IP-адресами. IP-адрес (например, 192.168.10.50) состоит из двух частей: адреса сети и адреса хоста (границу определяет маска подсети). Маршрутизатор не пересылает широковещательные L2-запросы. Его главная задача — принять пакет из одной подсети (например, VLAN 10), проанализировать IP-адрес получателя, определить оптимальный путь по таблице маршрутизации и переложить пакет в другую подсеть (например, VLAN 20 или в интернет). Этот процесс называется маршрутизацией.
Таблица маршрутизации и Default Gateway
Мозг маршрутизатора — это таблица маршрутизации (Routing Table). В ней записаны правила: «чтобы попасть в сеть X, нужно отправить пакет через интерфейс Y или следующему маршрутизатору Z (Next Hop)». Маршруты бывают трех типов: 1) Directly Connected (напрямую подключенные сети) — создаются автоматически при назначении IP на интерфейс роутера; 2) Static (статические) — прописанные администратором вручную; 3) Dynamic (динамические) — полученные от других роутеров по протоколами OSPF или BGP.
Для конечного сервера (у которого тоже есть простая таблица маршрутизации) самым важным параметром является Шлюз по умолчанию (Default Gateway). Это IP-адрес интерфейса маршрутизатора в локальной сети сервера. Логика работы ОС сервера проста: если сервер хочет отправить данные на IP, который находится в его же подсети (сверяется по маске), он отправляет кадр напрямую через коммутатор. Если целевой IP находится в чужой подсети (например, 8.8.8.8 в интернете), сервер понимает, что не дотянется до него напрямую. Тогда он упаковывает IP-пакет в L2-кадр, где Destination MAC указывает на интерфейс шлюза по умолчанию, и отправляет его роутеру. Роутер распаковывает кадр, читает IP и передает эстафету дальше.
Путешествие пакета: Изменение MAC и постоянство IP
Scenario-Based Learning: Давайте проследим путь данных от Сервера А (IP: 10.0.0.10, MAC: AA) к Серверу Б (IP: 20.0.0.20, MAC: BB), находящимся в разных подсетях. Между ними стоит Маршрутизатор (интерфейс в сети А имеет IP 10.0.0.1, MAC: R1; интерфейс в сети Б имеет IP 20.0.0.1, MAC: R2).
1. Сервер А видит, что 20.0.0.20 — чужая сеть. Он формирует IP-пакет: [Source IP: 10.0.0.10, Dest IP: 20.0.0.20]. Этот пакет не меняется на всем пути!
2. Сервер А инкапсулирует пакет в L2-кадр. Чтобы донести его до роутера, он ставит [Source MAC: AA, Dest MAC: R1 (MAC шлюза)].
3. Коммутатор доставляет кадр на роутер.
4. Роутер принимает кадр, видит свой MAC R1, снимает L2-заголовок. Он читает Dest IP 20.0.0.20. Заглядывает в таблицу маршрутизации и видит, что сеть 20.0.0.0 подключена ко второму интерфейсу.
5. Роутер формирует новый L2-кадр для отправки в сеть Б: [Source MAC: R2, Dest MAC: BB]. Внутрь кладет оригинальный IP-пакет.
6. Коммутатор доставляет кадр Серверу Б.
Вывод: IP-адреса (L3) остаются неизменными от начала до конца (end-to-end), а MAC-адреса (L2) переписываются на каждом прыжке (hop-by-hop) маршрутизатора.
Аппаратные межсетевые экраны (Hardware Firewalls)
В корпоративной инфраструктуре маршрутизатор на границе сети (Edge Router) часто совмещен с функциями безопасности — аппаратным файрволом (например, Cisco Firepower, Fortinet, Palo Alto). В отличие от простого роутера, файрвол реализует политики безопасности, блокируя или разрешая трафик на основе строгих правил (ACL - Access Control Lists). Файрволы нового поколения (NGFW) выполняют глубокую инспекцию пакетов (DPI - Deep Packet Inspection). Они заглядывают не только в L3/L4 заголовки (IP и порты), но и в содержимое L7 (прикладной уровень), чтобы определить конкретное приложение (например, блокировать торренты, разрешать Skype, выявлять сигнатуры вирусов).
Еще одна критически важная функция пограничного L3-устройства — NAT (Network Address Translation). В мире не хватает публичных IPv4-адресов для каждого сервера. Поэтому внутри ЦОД используются серые (локальные) адреса (например, 192.168.x.x или 10.x.x.x), которые не маршрутизируются в интернете. Когда внутренний сервер обращается к внешнему миру, файрвол подменяет локальный Source IP сервера на свой единственный публичный IP-адрес, запоминая сессию в таблице трансляций. Ответный пакет из интернета приходит на публичный IP файрвола, который по таблице понимает, какому внутреннему серверу его перенаправить.
Как называется IP-адрес интерфейса маршрутизатора, который сервер использует для отправки пакетов в другие подсети и интернет? (напишите два слова на русском языке)
Что происходит с IP-адресами и MAC-адресами в заголовках пакета/кадра при прохождении через стандартный маршрутизатор (без NAT)?
Задание
Сценарий диагностики (Troubleshooting): Сервер базы данных (192.168.10.50) не может связаться с сервером приложений (192.168.20.50), находящимся в другой подсети. При этом сервер БД успешно пингует другие серверы в своей подсети (192.168.10.x). Определите алгоритм поиска неисправности.
- Поскольку локальный пинг работает (L1 и L2 в норме), проблема находится на уровне L3 (маршрутизация).
- Проверить настройки IP-адресации на сервере БД: убедиться, что корректно указан шлюз по умолчанию (Default Gateway), например, 192.168.10.1.
- Выполнить команду ping до шлюза по умолчанию. Если пинг не проходит, проблема в настройках порта коммутатора, смотрящего на роутер (не проброшен Trunk или VLAN).
- Если шлюз пингуется, проверить таблицу маршрутизации на самом роутере: знает ли он путь до сети 192.168.20.0/24.
- Проверить правила фильтрации на файрволе (ACL): возможно, трафик между подсетями баз данных и приложений заблокирован политиками безопасности.