Статьи редакцииДругие статьи

Почему NAT — трансляция сетевых адресов — по-прежнему важна в 2025 году

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

Содержание

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

При общем внешнем адресе нужно учитывать отдельные сеансы обмена данными за ним — так же, как службе внутренней почты нужно знать, к какому рабочему столу должно вернуться каждое отправление.

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

Этот повседневный пример объясняет, почему NAT по-прежнему важна. Она позволяет устройствам в сети совместно использовать публичные адреса. Понимать, какой дополнительной работы это требует, не менее важно, чем понимать, что это экономит.

Один внешний адрес, несколько сеансов обмена данными

NAT означает трансляцию сетевых адресов. Базовая NAT заменяет один адрес другим. Распространённая в домашних маршрутизаторах схема «многие к одному» также преобразует порты транспортного протокола; её часто называют PAT или NAPT. Порт помогает отличать один сеанс обмена данными от другого.

Представьте здание, где сотрудники за несколькими столами отправляют посылки через одну стойку приёма. На стойке нужно вести учёт того, какому столу предназначен каждый ответ. Аналогичным образом маршрутизатор записывает соответствие между внутренними адресом и портом и адресом и портом, используемыми снаружи. В спецификации традиционной NAT описаны эти две формы трансляции.

NAT не увеличивает количество IPv4-адресов. Она позволяет использовать их для большего числа соединений — в пределах возможностей транслятора и требований задействованных приложений.

Где это полезно?

Домохозяйство может подключить несколько устройств, не выделяя каждому публичный адрес. Компания может предоставить внутренним системам исходящий доступ через общий шлюз. Интернет-провайдер может разместить транслятор в собственной сети, распределяя использование публичных адресов между абонентами; такая схема называется NAT операторского класса, или carrier-grade NAT.

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

Какова цена совместного использования?

Транслятор должен хранить состояние соединений и располагать достаточным числом доступных портов. Ему нужно справляться с пиковыми нагрузками, истечением времени ожидания и отказами оборудования. Некоторым приложениям нужны особые настройки, чтобы принимать входящий трафик или работать через несколько уровней трансляции.

В масштабе провайдера одного публичного адреса может быть недостаточно, чтобы определить абонента, участвовавшего в соединении. Значение могут иметь также сведения о порте и времени. Требования IETF к NAT операторского класса охватывают ограничения ресурсов, поведение и ведение журналов. Всё это — обязанности по эксплуатации, а не основания считать NAT безусловно хорошим или плохим решением.

Делает ли NAT сеть безопасной?

Трансляция адресов и контроль доступа выполняют разные задачи. В некоторых распространённых конфигурациях NAT для незапрошенного входящего трафика нет соответствующей записи трансляции, но это не равнозначно полноценной политике безопасности. Маршрутизатор, который также служит межсетевым экраном, может применять правила, определяющие, какой трафик разрешён.

В рекомендациях IETF по защите сетей это различие обозначено прямо: сама по себе трансляция не обеспечивает безопасность. Совместное использование публичного адреса также не делает пользователя анонимным. Учётные записи, приложения и другие данные по-прежнему позволяют связывать действия с пользователем.

NAT — это то же самое, что переход на IPv6?

Нет. Обычная IPv4 NAT преобразует IPv4-адреса. Двойной стек означает одновременную работу IPv4 и IPv6; он не выполняет автоматическую трансляцию между ними. У таких механизмов, как NAT64, другая задача — преобразование между версиями протокола. Различая эти термины, легче избежать покупки решения не той проблемы.

Если вы только разбираетесь в теме, начните с реальной потребности: доступ к сайтам, приём соединений, объединение сетей или поддержка конкретного приложения. Затем сравните варианты с точки зрения эксплуатации.

Почему выбор должен оставаться за сетевым оператором

В заметке № 45 Лу Хэн оспаривает идею, что исчерпание пула адресов, доступных для распределения у организации, распределяющей IP-адреса, предопределяет инженерные решения всех операторов. NAT наглядно показывает, почему одного подсчёта адресов недостаточно для описания всей сети. Совместное использование меняет то, сколько соединений может обслуживать публичный адрес, но при этом имеет собственную цену.

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