8.1. Принципы маршрутизации и трансляция адресов (NAT)
8.1. Принципы маршрутизации и трансляция адресов (NAT)
Маршрутизатор анализирует IP-адрес назначения в пакете и принимает решение о пересылке на основе таблицы маршрутизации. Каждая запись содержит: сеть назначения, маску, следующий хоп (next hop), интерфейс выхода, метрику.
8.1.1. Типы маршрутов
| Тип | Описание | Административное расстояние (AD) |
|---|---|---|
| Напрямую подключённый (connected) | Сеть на непосредственно подключённом интерфейсе | 0 |
| Статический | Задан администратором вручную | 1 |
| OSPF | Динамический протокол состояния каналов | 110 |
| RIP | Дистанционно-векторный протокол | 120 |
| BGP | Междоменная маршрутизация в Интернете | 20 (eBGP) / 200 (iBGP) |
8.1.2. Протокол ICMP
ICMP (Internet Control Message Protocol) передаёт служебные сообщения сетевого уровня: Echo Request/Reply (ping), Destination Unreachable, Time Exceeded (используется traceroute), Redirect.
8.1.3. NAT и PAT
NAT (Network Address Translation) — преобразование частных IP-адресов в публичные при выходе в Интернет.
- Static NAT — один внутренний адрес ↔ один внешний.
- Dynamic NAT — пул внешних адресов.
- PAT (NAT overload) — множество внутренних адресов через один внешний IP с разными портами.
8.1.4. Пример таблицы маршрутизации
| Сеть | Маска | Шлюз | Интерфейс |
|---|---|---|---|
| 0.0.0.0 | 0.0.0.0 | 192.168.1.1 | eth0 (маршрут по умолчанию) |
| 192.168.1.0 | 255.255.255.0 | 0.0.0.0 | eth0 (connected) |
| 10.0.0.0 | 255.0.0.0 | 192.168.1.254 | eth0 (через внутренний маршрутизатор) |
Контрольные вопросы
- Что такое маршрут по умолчанию (default route)?
- Чем PAT отличается от static NAT?
- Какой протокол использует утилита ping?
- Как traceroute определяет промежуточные маршрутизаторы?
8.1.5. Алгоритм longest prefix match
Маршрутизатор выбирает запись с самой длинной совпадающей маской. Пример: пакет на 192.168.5.10 при маршрутах 192.168.0.0/16 и 192.168.5.0/24 — выберется /24. Маршрут 0.0.0.0/0 — default, используется, если нет более специфичного.
8.1.6. OSPF и RIP (краткое сравнение)
| Параметр | RIP (v2) | OSPF |
|---|---|---|
| Тип | Дистанционно-векторный | Состояние каналов (link-state) |
| Метрика | Число хопов (max 15) | Стоимость (cost) на основе пропускной способности |
| Масштаб | Малые сети | Крупные корпоративные сети |
| Сходимость | Медленнее | Быстрее (Dijkstra SPF) |
8.1.7. BGP — роль в Интернете
BGP (Border Gateway Protocol) — протокол маршрутизации между автономными системами (AS). Провайдеры обмениваются префиксами; политики маршрутизации (AS path, local preference) определяют путь трафика. Для корпоративного администратора BGP важен при подключении к двум провайдерам (multihoming).
8.1.8. NAT: проблемы и ограничения
- Нарушение сквозной связи end-to-end — сложности с P2P, некоторыми VPN и IPsec без NAT-T.
- Журналирование сессий PAT необходимо для расследований.
- NAT hairpin — доступ к внутреннему серверу по внешнему IP из той же LAN требует специальной настройки.
- Исчерпание портов при большом числе сессий с одного внешнего IP.
8.1.9. ICMP: типичные сообщения
| Тип / код | Значение |
|---|---|
| 0 — Echo Reply | Ответ на ping |
| 3 — Destination Unreachable | Сеть/хост/порт недоступен |
| 11 — Time Exceeded | TTL=0 (traceroute) |
| 5 — Redirect | Предложение другого шлюза (редко сегодня) |
8.1.10. Практический кейс: «есть Интернет, нет внутреннего сервера»
Проверить: маршрут до подсети сервера, ACL на маршрутизаторе/МЭ, NAT static/port forwarding, DNS внутреннего имени, работает ли сервис локально по IP. Разделение внешней и внутренней DNS (split-horizon) — частая причина «снаружи открывается, изнутри нет».
Дополнительные вопросы для самопроверки
- Почему RIP ограничен 15 хопами?
- Что выберет маршрутизатор при совпадении /16 и /24?
- Зачем нужен NAT-T при IPsec через NAT?