Преобразование сетевых адресов (NAT). NAT на пальцах: что это

Возможно, вам потребуется назначить постоянный, статический IP-адрес на PlayStation 4, чтобы установить соединение NAT Type 2. Установка постоянного IP адреса гарантирует, что ваша консоль всегда будет иметь тот же внутренний IP, даже после перезагрузки приставки. Некоторые маршрутизаторы дают возможность вручную назначить IP-адрес, так что сперва вам необходимо проверить, возможен ли такой вариант в вашем роутере. Если нет, тогда можно провести настройку статического IP через меню консоли PS4.

Данное руководство разбито на две части. Прочитайте все от начала и до конца.

Как вручную настроить статический IP-адрес на PlayStation 4 через роутер

Отыщите в своем роутере путь для ручной настройки IP-адреса. Не все маршрутизаторы поддерживают эту функцию. Процесс настройки будет отличаться в зависимости от модели роутера, которой вы пользуетесь. Если ваш модем позволяет провести ручную настройку IP-адреса, тогда просто назначьте постоянный IP для PlayStation 4. В этом случае никаких изменений в настройках самой приставки делать не придется. Роутер самостоятельно будет назначать внутренний IP для PS4, функции которого идентичны статическому.

В случае, если ваш роутер не поддерживает ручной настройки IP, вам придется проделать настройки через консоль PS4. Для этого следуйте инструкции ниже:

  1. Можно попробовать навсегда привязать PS4 к IP-адресу, который вы используете сейчас. Чтобы найти этот IP, включите PS4 и сделайте следующее:

Запишите этот IP и MAC адрес PS4 на листок. Кроме того, вам необходимо будет запомнить IP-адрес вашего роутера, который указан в качестве шлюза по умолчанию (Default Gateway). Как это сделать, описано в следующем пункте нашего руководства.

  1. Через компьютер зайдите в настройки роутера (делается это через браузер, путем ввода IP роутера, например, 192.168.1.1. или 192.168.1.0. / 192.168.0.1). Вам необходимо будет навсегда присвоить PS4 IP-адрес, который вы записали раньше, при выполнении первого пункта.

Ниже скриншот с примером модема, который позволяет вручную назначить IP.

В этом роутере от Asus есть строки для ввода IP-адреса, после чего в выпадающему меню выбирается MAC-адрес. Используйте цифры адресов, которые вы записали при выполнении первого пункта этого руководства. В нашем примере, после записи цифр, необходимо нажать кнопку «Добавить» (Add).

В некоторых маршрутизаторах нельзя назначить IP-адреса, которые входят в диапазон DHCP роутера (диапазон адресов, который автоматически назначается роутером различным устройствам в вашей сети). Если это ваш случай, то нужно будет выбрать IP адрес вне диапазона DHCP роутера. Как сделать это, смотрите пункты 2-4 следующего раздела этого руководства («Как настроить статический IP -адрес в PS 4 »).

  1. После того, как вы привязали PS4 к определенному IP-адресу, протестируйте подключение консоли, чтобы убедиться в нормальной работоспособности. Чтобы провести тест соединения, сделайте следующее:

В случае успешного прохождения проверки соединения, вы увидите надпись «Проверка Интернет-соединения прошла успешно» (Internet Connection Successful).

  • UDP: 3478-3479

Более подробная информация о том, как это сделать, есть

  1. После того, как вы назначали постоянный IP адрес для PS4 и перенаправили порты в роутере, проверьте Интернет-соединение. Как это сделать, смотрите в п.3 этого руководства.

Поздравляем, ваше соединение должно быть установлено на NAT Type 2.

Если у вас не получилось установить подключение NAT Type 2, проверьте, все ли верно вы сделали. Повторно просмотрите данные, которые вы ввели в строку IP-адреса и MAC-адреса.

Если трудности с настройкой подключением NAT Type 2 остались, проверьте, правильно ли установлено соединение. У вас может быть не один роутер в локальной сети. Чтобы определить количество роутеров в сети, вы можете воспользоваться бесплатной программой Router Detector . Очень важно, что в сети был только один модем, в ином случае настроить сеть без лишней головной боли достаточно тяжело.

Как настроить статический IP-адрес в PS4

Если у вас роутер, в котором нельзя вручную назначить внутренние IP-адреса, для настройки постоянного IP в PS4 выполните следующие действия:

  1. Узнайте, какой IP-адрес, маску подсети, шлюз и DNS использует PS4 в настоящее время. Чтобы сделать это, следуйте инструкции ниже:

Запишите IP-адрес, маску подсети, шлюз, главный DNS и дополнительный (Primary DNS и secondary DNS). Вам нужно будет ввести все эти цифры в консоль чуть позже.

  1. Далее, войдите в настройки маршрутизатора через ПК.

Чтобы войти в настройки роутера, напишите его IP-адрес в строке браузера. Найти IP можно в списке адресов, которые вы записали при выполнении пункта 1. IP роутера – это адрес шлюза по умолчанию (Default Gateway).

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

Вам необходимо через настройки посмотреть диапазон адресов DHCP, которые использует модем для автоматического назначения IP устройствам в сети.

Ниже есть скриншот, как должна выглядеть строка с этим диапазоном. Использовано меню роутера Linksys. Диапазон DHCP обведен красным.

  1. Вам нужно будет выбрать число между 2 и 254, которое находится за пределами диапазона DHCP, чтобы назначить IP вашей приставке.

В приведенном выше примере, маршрутизатор Linksys использует диапазон от 100 до 149, чтобы назначать IP-адреса для устройств во внутренней сети. В этом случае можно выбрать, например, число 31, тогда полный IP адрес для PS4 будет выглядеть так: 192.168.0.31. Вот еще несколько примеров, чтобы вы лучше разобрались:

  • Если диапазон DHCP 200-254, вы можете выбрать цифры от 2 до 50
  • Если роутер использует диапазон 50-200, тогда от 2 до 49
  1. Чтобы проверить, может ли выбранный вами IP быть использован, сделайте следующее:
  • Через меню «Пуск» откройте «Выполнить»
  • Введите команду «cmd» без кавычек и нажмите Enter
  • После этого должно появиться черное окошко
  • Далее, в строке ввода введите: «Ping (пробел) IP». Например: Ping 192.168.1.54
  • Нажмите Enter.

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

  1. Далее вам понадобится PS4, чтобы установить IP-адрес, который вы выбрали.

Теперь сделайте следующее:


Если вы в точности выполнили все вышеописанные действия, то статический IP будет настроен правильно. Если возникают какие-либо проблемы, проверьте правильность ввода информации, в частности, проверьте цифры, которые вы ввели в строку IP-адреса, шлюза, DNS. Чтобы перепроверить это, откройте главное меню PS4, выберите Настройки => Сеть => Просмотреть статус сети.

  1. Открытие портов (opening ports) или Port Forwarding в вашем роутере означает перенаправление всего трафика на определенный внутренний IP-адрес. Чтобы получить соединение NAT Type 2, вам нужно направить следующие порты на IP-адрес приставки PS4:
  • TCP: 80, 443, 1935, 3478-3480
  • UDP: 3478-3479

Более подробная информация о том, как перенаправить порты, есть

  1. После того, как вы назначили статический IP-адрес для PlayStation 4 и правильно перенаправили порты вашего роутера, можете сделать проверку Интернет-соединения. Как это сделать, читайте немного выше.

Поздравляем с установкой соединения NAT Type 2! При возникновении любых проблем, в первую очередь советуем проверять правильность ввода цифр при указании адреса шлюза, IP, DNS и маски подсети.

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

  • 01.02.2010

Сегодня мы рассмотрим вопрос организации общего доступа к интернет и автоматической настройки сети на платформе Windows. Несмотря на то, что это более дорогое решение, его применение будет оправдано когда необходима тесная интеграция с сетевой инфраструктурой развернутой на базе Windows Server.

В качестве рабочей платформы мы использовали Windows Server 2008 R2, как наиболее актуальную на сегодняшний день платформу, однако все сказанное с небольшими поправками применимо и к предыдущим версиям Windows Server 2003 / 2008.

Первоначально необходимо настроить сетевые интерфейсы. В нашем случае интерфейс смотрящий в сеть провайдера получает настройки по DHCP, мы переименовали его в EXT. Внутренний интерфейс (LAN) имеет статический IP адрес 10.0.0.1 и маску 255.255.255.0.

Настройка NAT

Простейшим способом организовать общий доступ к интернет будет включение соответствующей опции в настройках сетевого подключения. Однако при всей простоте такой способ чрезвычайно негибок и приемлем только если никаких других задач маршрутизации перед сервером ставиться не будет. Лучше пойти более сложным, на первый взгляд, путем, зато получить в свои руки весьма мощный и гибкий инструмент, позволяющий решать гораздо более сложные сетевые задачи.
Начнем, как полагается, с добавления новой роли сервера: Служб политики сети и доступа .

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

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

Здесь нужно указать интерфейс которым наш сервер подключен к интернету, при необходимости его можно создать (например при использовании PPPoE или VPN соединения).

Остальные настройки оставляем по умолчанию и после нажатия на кнопку готово произойдет запуск службы Маршрутизации и удаленного доступа, наш сервер готов обслуживать клиентов из внутренней сети. Проверить работоспособность можно указав клиентской машине IP адрес из диапазона внутренней сети и указав в качестве шлюза и DNS сервера адрес нашего сервера.

Настройка DHCP

Для автоматической настройки сетевых параметров на клиентских машинах, ну не бегать же от места к месту вручную прописывая IP адреса, следует добавить роль DHCP сервера.

Для этого выбираем Добавить роль в Диспетчере сервера и отмечаем необходимую нам опцию.

Теперь нам предстоит ответить на ряд несложных вопросов. В частности выбрать для каких внутренних сетей следует использовать DHCP, при необходимости можно настроить различные параметры для разных сетей. Потом последовательно указать параметры DNS и WINS серверов. Последний, при его отсутствии, можно не указывать. Если в вашей сети отсутствуют старые рабочие станции под управлением ОС отличных от Windows NT 5 и выше (2000 / XP / Vista / Seven), то необходимости в WINS сервере нет.

К добавлению DHCP-области нужно отнестись с повышенной внимательностью, ошибка здесь может привести к неработоспособности всей сети. Ничего сложного здесь нет, просто внимательно вводим все необходимые параметры сети, следя, чтобы выделяемый диапазон IP не перекрывал уже выделенный для других устройств и не забываем правильно указывать маску и шлюз.

Отдельно следует обратить внимание на такой параметр как срок аренды адреса. По истечении половины срока аренды клиент посылает серверу запрос на продление аренды. Если сервер недоступен, то запрос будет повторен через половину оставшегося срока. В проводных сетях, где компьютеры не перемещаются в пределах сети, можно выставлять достаточно большой срок аренды, при наличии большого количества мобильных пользователей (например публичная Wi-Fi точка в кафе) срок аренды можно ограничить несколькими часами, иначе не будет происходить своевременное освобождение арендованных адресов и в пуле может не оказаться свободных адресов.

Следующим шагом отказываемся от поддержки IPv6 и после установки роли DHCP сервер готов к работе без каких либо дополнительных настроек. Можно проверять работу клиентских машин.

Выданные IP адреса можно посмотреть в Арендованных адресах , относящихся к интересующей нас области. Здесь же можно настроить резервирование за определенным клиентом конкретного адреса (привязав по имени или MAC-адресу), при необходимости можно добавить или изменить параметры области. Фильтры позволяют создать разрешающие или запрещающие правила основываясь на MAC-адресах клиентов. Более полное рассмотрение всех возможностей DHCP-сервера Windows Server 2008 R2 выходит за рамки данной статьи и скорее всего мы посвятим им отдельный материал.

  • Теги:

Please enable JavaScript to view the comments powered by Disqus.

Трекбэк

В нашем прошлом материале мы рассмотрели настройку NAT для платформы Windows Server. Как показал читательский отклик, определенные трудности возникают при использовании коммутируемых подключений к Интернету: VPN или PPPoE. Сегодня мы рассмотрим порядо...

NAT или трансляция сетевых адресов является способом переназначения одного адресного пространства в другой путем изменения информации сетевых адресов в Internet Protocol или IP. Заголовки пакетов меняются в то время, когда они находятся в пути через устройства маршрутизации. Данный метод использовался первоначально для более простого перенаправления трафика в сетях IP без необходимости нумерации каждого хоста. Он стал важным и популярным инструментом для распределения и сохранения глобального адресного пространства в условиях острого недостатка адресов IPv4.

Что такое NAT?

Использование трансляции сетевых адресов заключается в отображении каждого адреса из одного адресного пространства к адресу, который находится в другом адресном пространстве. Это может понадобиться в том случае, если изменился провайдер услуг, а у пользователя нет возможности публично объявить новый маршрут к сети. Технология NAT в условиях глобального истощения адресного пространства с конца 90-х годов используется все чаще. Обычно данная технология используется в сочетании с IP-шифрованием. IP-шифрование представляет собой метод перехода нескольких IP адресов в одно пространство. Данный механизм реализован в устройстве маршрутизации, использующем таблицы перевода с сохранением состояния для отображения в один IP адрес скрытых адресов. Также он перенаправляет на выходе все исходящие пакеты IP. Таким образом, данные пакеты отображаются выходящими из устройства маршрутизации. Ответы в обратном канале связи отображаются в исходном IP адресе при помощи правил, которые хранятся в таблицах перевода. В свою очередь таблицы перевода очищаются по истечении короткого времени, если трафик не обновит свое состояние. Вот в чем заключается основной механизм NAT. Что же это означает? Данная технология позволяет организовывать связь через маршрутизатор только в том случае, когда соединение происходит в зашифрованной сети, так как это создает таблицы перевода. Внутри такой сети веб-браузер может просматривать сайт за ее пределами, однако будучи установленным вне ее, он не может открыть ресурс, который в ней размещен. Большинство устройств NAT сегодня позволяют сетевому администратору конфигурировать записи таблицы перевода для постоянного применения. Данная функция особенно часто упоминается как перенаправление портов или статическая NAT. Она дает возможность трафику, исходящему во «внешнюю» сеть, достичь назначенных хостов в зашифрованной сети. Из-за того, что метод, используемый с целью сохранения адресного пространства IPv4 пользуется популярностью, термин NAT практически стал синонимом метода шифрования. Так как трансляция сетевых адресов меняет информацию об адресе IP-пакетов, это может иметь серьезные последствия для качества подключения. Так что она требует пристального внимания ко всем деталям реализации. Способы использования NAT друг от друга отличаются в своем конкретном поведении в различных ситуациях, которые касаются влияния на сетевой трафик.

Базовая NAT

Простейший тип NAT позволяет обеспечить трансляцию IP-адресов «один-к-одному». Основным типом данной трансляции является RFC-2663. В данном случае меняются только IP-адреса, а также контрольная сумма заголовков IP. Можно использовать основные типы трансляции для соединения двух сетейIP, имеющих несовместимую адресацию.

Большая часть разновидностей NAT способна сопоставить несколько частных хостов к одному IP-адресу, который публично обозначен. Локальная сеть в типичной конфигурации использует один из назначенных «частных» IP-адресов подсети. В этой сети маршрутизатор имеет частный адрес в пространстве. Также маршрутизатор подключается к интернету при помощи «публичного адреса», который присваивается провайдером интернета. Поскольку трафик проходит из локальной сети Интернет, то адрес источника в каждом пакете переводится из частного в публичный на лету. Также маршрутизатор отслеживает основные данные о каждом активном соединении. В частности, это касается такой информации, как адрес и порт назначения. Когда ответ возвращается к нему, он использует данные соединения, которые сохраняются во время выездного этапа. Это необходимо для того, чтобы определить частный адрес внутренней сети, к которому нужно направить ответ. Основным преимуществом такого функционала является то, что он является практическим решением проблемы исчерпания адресного пространства IPv4. С помощью одного IP-адреса к интернету могут быть подключены даже крупные сети. Все дейтаграммы пакетов в IP сетях имеют два IP адреса – это исходный адрес и адрес пункта назначения. Пакеты, проходящие из частной сети к сети общего пользования, будут иметь адрес источника пакетов, который изменяется во время перехода от публичной сети к частной. Также возможны и более сложные конфигурации.

Особенности настройки NAT

Настройка NAT может иметь определенные особенности. Чтобы избежать трудностей, связанных с переводом возвращенных пакетов, могут потребоваться их дальнейшие модификации. Большая часть интернет-трафика будет идти через протоколы UDP иTCP. Их номера изменяются таким образом, что адреса IP и номера порта при обратной отправке данных начинает сопоставляться. Протоколы, которые не основаны на UDP или TCP, требуют других методов перевода. Как правило, ICMP или протокол управления сообщения в сети интернет, соотносит передаваемую информацию с имеющимся соединением. Это значит, что они должны отображаться с использованием того же адреса IP и номера, который был установлен изначально. Что же необходимо учитывать? Настройка NAT в роутере не предоставляет ему возможности соединения «из конца в конец». По этой причине такие маршрутизаторы не могут участвовать в некоторых интернет-протоколах. Услуги, требующие инициации соединений TCP от внешней сети или пользователей без протоколов, могут быть просто недоступны. Если NAT маршрутизатор не делает особых усилий для поддержки таких протоколов, то входящие пакеты могут так и не достичь места назначения. Некоторые протоколы могут быть размещены в одной трансляции между участвующими хостами иногда при помощи шлюза прикладного уровня. Однако соединение не будет установлено, когда обе системы при помощи NAT отделены от сети Интернет. Также использование NAT усложняет туннельные протоколы, типа IPsec, так как она меняет значения в заголовках, которые взаимодействуют с проверками целостности запросов.

NAT: существующая проблема

Основным принципом интернета является соединение «из конца в конец». Оно существует с момента его разработки. Текущее состояние сети только доказывает, что NAT является нарушением данного принципа. В профессиональной среде имеется серьезная озабоченность, связанная с повсеместным использованием в IPv6 трансляции сетевых адресов. Таким образом, сегодня поднимается вопрос о том, как можно устранить эту проблему. Из-за того, что таблицы, сохраняющие состояние трансляции в маршрутизаторах NAT по своей природе не вечны, устройства внутренней сети утрачивают соединение IP в течение очень короткого временного периода. Нельзя забывать об этом обстоятельстве говоря о том, что собой представляет NAT в роутере. Это значительно сокращает время работы компактных устройств, которые работают на аккумуляторах и батарейках.

Масштабируемость

При использовании NAT также отслеживаются только те порты, которые могут быть быстро истощены внутренними приложениями, которые используют несколько одновременных соединений. Это могут быть HTTP запросы для страниц с большим количеством встроенных объектов. Смягчить данную проблему можно путем отслеживания IP адреса в назначениях в дополнение к порту. Один локальный порт таким образом может быть разделен большим количеством удаленных хостов.

NAT: некоторые сложности

Так как все внутренние адреса оказываются замаскированными под один общедоступный, для внешних хостов невозможно инициировать подключение к определенному внутреннему узлу без настройки специальной конфигурации на брандмауэре. Данная конфигурация должна перенаправлять подключения к определенному порту. Приложения для IP-телефонии, видеоконференций и подобные сервисы для своего нормального функционирования должны использовать методы обхода NAT. Порт перевода Raptи обратный адрес позволяет хосту, у которого IP адрес меняется время от времени, оставаться доступным в качестве сервера при помощи фиксированного IP адреса домашней сети. Это в принципе должно позволить настройке серверов сохранять соединение. Несмотря на то, что такое решение проблемы является не идеальным, это может стать еще одним полезным инструментом в арсенале сетевого администратора при решении задач, связанных с настройкой на роутере NAT.

PAT или Port Address Translation

Port Address Translation является реализацией Cisco Rapt, которая отображает несколько частных IP адресов в виде одного публичного. Таким образом, несколько адресов могут быть отображены как адрес, потому что каждый из них отслеживается при помощи номера порта. PAT использует уникальные номера портов источника на внутреннем глобальном IP, чтобы различать направление передачи данных. Данными номерами являются целые 16-разрядные числа. Общее число внутренних адресов, которые могут быть переведены на один внешний адрес, теоретически может достигать 65536. В реальности же количество портов, на которые может быть назначен единый адрес IP, составляет примерно 4000. PAT, как правило, пытается сохранить исходный порт «оригинала». В том случае, если он уже используется Port Address Translation назначает первый доступный номер порта, начиная с начала соответствующей группы. Когда доступных портов не остается и есть более одного внешнего IP адреса, PAT переходит к следующему для выделения исходного порта. Данный процесс будет продолжаться до тех пор, пока доступные данные не закончатся. Служба Cisco отображает адрес и порт. Она сочетает в себе адрес порта перевода и данные туннелирования пакетов IPv4 по внутренней сети IPv6. По сути это альтернативный вариант Carrier Grade NAT и DS-Lite, который поддерживает IP трансляции портов и адресов. Это позволяет избежать проблем, связанных с установкой и поддержанием соединения. Также это позволяет обеспечить механизм перехода для развертывания IPv6.

Методы перевода

Известно несколько основных способов реализации перевода сетевого адреса и порта. В определенных прикладных протоколах требуется определить внешний адрес NAT, используемый на другом конце соединения. Также часто необходимо изучить и классифицировать тип передачи. Как правило, это делается потому, что желательно между двумя клиентами, находящимися за отдельными NAT, создать прямой канал связи. Для этой цели был разработан специальный протокол RFC 3489, который обеспечивает простой обход UPD через NATS. Он на сегодняшний день уже считается устаревшим, так как в наши дни такие методы считаются недостаточными для правильной оценки работы устройств. В 2008 году был разработан протокол RFC 5389, в котором были стандартизованы новые методы. Данная спецификация сегодня называется Session Traversal. Она представляет собой специальную утилиту, предназначенную для работы NAT.

Создание двусторонней связи

Каждый пакет UDP и TCP содержит IP адрес источника и его номер порта, а также координаты конечного порта. Номер порта имеет очень важное значение для получения таких общедоступных услуг, как функционал почтовых серверов. Так, например, порт 25 подключается к SMTP почтового сервера, а порт 80 подключается к программному обеспечению веб-сервера. Существенное значение имеет также и IP адрес общедоступного сервера. Данные параметры должны быть достоверно известны тем узлам, которые намерены установить соединение. Частные IP адреса имеют значение только в локальных сетях.

Трансляция сетевых адресов (NAT) является способом переназначения одного адресного пространства в другое путем изменения информации То есть заголовки пакетов изменяются в то время, когда они находятся в пути через устройство маршрутизации трафика. Этот метод первоначально использовался для простоты перенаправления трафика в IP-сетях без перенумерации каждого хоста. Он стал популярным и важным инструментом для сохранения и распределения глобального адресного пространства в условиях недостатка адресов IPv4.

NAT - это что такое?

Оригинальное использование трансляции сетевых адресов состоит в отображении каждого адреса из одного адресного пространства к соответствующему адресу в другом пространстве. Например, это необходимо, если провайдер интернет-услуг изменился, а пользователь не имеет возможности публично объявить новый маршрут к сети. В условиях обозримого глобального истощения IP-адресного пространства технология NAT все чаще используется с конца 1990-х годов в сочетании с IP-шифрованием (которое представляет собой метод перехода нескольких IP-адресов в одно пространство). Этот механизм реализован в устройстве маршрутизации, которое использует таблицы перевода с сохранением состояния для отображения «скрытых» адресов в один IP-адрес, и перенаправляет исходящие IP-пакеты на выходе. Таким образом, они отображаются выходящими из устройства маршрутизации. В обратном ответы отображаются в исходном IP-адресе с помощью правил, хранящихся в таблицах перевода. Правила таблицы перевода, в свою очередь, очищаются по истечении короткого периода, если новый трафик не обновляет свое состояние. Таков основной механизм NAT. Это что означает?

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

Из-за популярности этого метода, используемого с целью сохранения адресного пространства IPv4, термин NAT (это что такое фактически - указано выше) стал практически синонимом метода шифрования.

Поскольку трансляция сетевых адресов изменяет информацию об адресе IP-пакетов, это имеет серьезные последствия для качества подключения к интернету и требует пристального внимания к деталям его реализации.

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

Базовая NAT

Простейший тип Network Address Translation (NAT) обеспечивает трансляцию IP-адресов «один-к-одному». RFC 2663 является основным типом данной трансляции. В этом типе изменяются только IP-адреса и контрольная сумма IP-заголовков. Основные типы трансляции можно использовать для соединения двух IP-сетей, которые имеют несовместимую адресацию.

NAT - это что в подключении «один-ко-многим»?

Большинство разновидностей NAT способны сопоставить несколько частных хостов к одному публично обозначенному IP-адресу. В типичной конфигурации локальная сеть использует один из назначенных «частных» IP-адресов подсети (RFC 1918). Маршрутизатор в этой сети имеет частный адрес в этом пространстве.

Маршрутизатор также подключается к интернету с помощью «публичного» адреса, присвоенного провайдером. Так как трафик проходит из локальной сети источника в каждом пакете переводится на лету из частного адреса в публичный. Маршрутизатор отслеживает основные данные о каждом активном соединении (в частности, адрес и порт назначения). Когда ответ возвращается к нему, он использует данные соединения, которые сохраняются во время выездного этапа, чтобы определить частный адрес внутренней сети, к которому следует направить ответ.

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

Все дейтаграммы пакетов на IP-сетях имеют 2 IP-адреса - исходный и пункта назначения. Как правило, пакеты, проходящие из частной сети к сети общего пользования, будут иметь адрес источника пакетов, изменяющийся во время перехода от публичной сети обратно к частной. Более сложные конфигурации также возможны.

Особенности

Настройка NAT может иметь некоторые особенности. Во избежание трудностей в том, как перевести возвращенные пакеты, требуются их дальнейшие модификации. Подавляющее большинство интернет-трафика идет через протоколы TCP и UDP, и их номера портов изменяются таким образом, что сочетание IP-адреса и номера порта при обратном направлении данных начинает сопоставляться.

Протоколы, не основанные на TCP и UDP, требуют других методов перевода. Протокол управления сообщениями в (ICMP), как правило, соотносит передаваемые данные с существующим соединением. Это означает, что они должны быть отображены с использованием того же IP-адреса и номера, установленного изначально.

Что нужно учитывать?

Настройка NAT в роутере не дает ему возможности соединения «из конца в конец». Поэтому такие маршрутизаторы не могут участвовать в некоторых интернет-протоколах. Услуги, которые требуют инициации TCP-соединений от внешней сети или пользователей без протоколов, могут быть недоступны. Если маршрутизатор NAT не делает особых усилий для поддержки таких протоколов, входящие пакеты не могут добраться до места назначения. Некоторые протоколы могут разместиться в одной трансляции между участвующими хостами («пассивный режим» FTP, например), иногда с помощью шлюза прикладного уровня, но соединение не будет установлено, когда обе системы отделены от сети Интернет с помощью NAT. Использование трансляции сетевых адресов также усложняет такие «туннельные» протоколы, как IPsec, поскольку она изменяет значения в заголовках, которые взаимодействуют с проверками целостности запросов.

Существующая проблема

Соединение «из конца в конец» является основным принципом интернета, существующим с момента его разработки. Текущее состояние сети показывает, что NAT является нарушением этого принципа. У специалистов существует серьезная озабоченность в связи с повсеместным использованием в IPv6-трансляции сетевых адресов, и поднимается проблема о том, как эффективно ее устранить.

Из-за недолговечной природы таблиц, сохраняющих состояние трансляции в маршрутизаторах NAT, устройства внутренней сети утрачивают IP-соединение, как правило, в течение очень короткого периода времени. Говоря о том, что такое NAT в роутере, нельзя забывать про это обстоятельство. Это серьезно сокращает время работы компактных устройств, работающих на батарейках и аккумуляторах.

Масштабируемость

Кроме того, при использовании NAT отслеживаются только порты, которые могут быть быстро истощены внутренними приложениями, использующими несколько одновременных соединений (например, HTTP-запросы для веб-страниц с большим количеством встроенных объектов). Эта проблема может быть смягчена путем отслеживания IP-адреса назначения в дополнение к порту (таким образом, один локальный порт разделяется большим количеством удаленных хостов).

Некоторые сложности

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

Обратный адрес и порт перевода (Rapt) позволяет хосту, реальный IP-адрес которого меняется время от времени, оставаться доступным в качестве сервера с помощью фиксированного IP-адреса домашней сети. В принципе, это должно позволить настройке серверов сохранять соединение. Несмотря на то что это не идеальное решение проблемы, это может стать еще одним полезным инструментом в арсенале сетевого администратора при решении задачи, как настроить NAT на роутере.

Port Address Translation (PAT)

Реализацией Cisco Rapt является Port Address Translation (PAT), который отображает несколько частных IP-адресов в виде одного публичного. Несколько адресов могут быть отображены как адрес, потому что каждый из них отслеживается с помощью номера порта. PAT использует уникальные номера портов источника на внутреннем глобальном IP, чтобы различать направление передачи данных. Такими номерами являются 16-разрядные целые числа. Общее количество внутренних адресов, которые могут быть переведены на один внешний, теоретически может достигать 65536. Реальное же количество портов, на которые может быть назначен единый IP-адрес, составляет около 4000. Как правило, PAT пытается сохранить исходный порт «оригинала». Если он уже используется, Port Address Translation назначает первый доступный номер порта, начиная с начала соответствующей группы - 0-511, 512-1023 или 1024-65535. Когда больше нет доступных портов и есть более чем один внешний IP-адрес, PAT переходит к следующему, чтобы попытаться выделить исходный порт. Этот процесс продолжается до тех пор, пока не закончатся доступные данные.

Отображение адреса и порта осуществляется службой Cisco, которая сочетает в себе адрес порта перевода с данными туннелирования пакетов IPv4 по внутренней сети IPv6. По сути дела, это неофициальная альтернатива CarrierGrade NAT и DS-Lite, которая поддерживает IP-трансляции адресов/портов (и, следовательно, поддерживается настройка NAT). Таким образом, это позволяет избежать проблем в установке и поддержании соединения, а также обеспечивает механизм перехода для развертывания IPv6.

Методы перевода

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

Для этой цели (как настроить NAT) в 2003 году был разработан специальный протокол RFC 3489, обеспечивающий простой обход UDP через NATS. На сегодняшний день он является устаревшим, поскольку такие методы в наши дни являются недостаточными для правильной оценки работы многих устройств. Новые методы были стандартизованы в протоколе RFC 5389, который был разработан в октябре 2008 года. Эта спецификация сегодня носит название SessionTraversal и представляет собой утилиту для работы NAT.

Создание двусторонней связи

Каждый пакет TCP и UDP содержит IP-адрес источника и номер его порта, а также координаты порта назначения.

Для получения таких общедоступных услуг, как функционал почтовых серверов, номер порта имеет важное значение. Например, подключается к программному обеспечению веб-сервера, а 25 - к SMTP почтового сервера. IP-адрес общедоступного сервера также имеет существенное значение, подобное почтовому адресу или номеру телефона. Оба этих параметра должны быть достоверно известны всем узлам, которые намерены установить соединение.

Частные IP-адреса имеют значение только в локальных сетях, где они используются, а также для хост-портов. Порты являются уникальными конечными точками связи на хосте, поэтому соединение через NAT поддерживается с помощью комбинированного картирования порта и IP-адреса.

РАТ (Port AddressTranslation) разрешает конфликты, которые могут возникнуть между двумя различными хостами, использующими один и тот же номер порта источника для установления уникальных подключений одновременно.

Это абсолютно разные технологии. Не путайте их.

Что такое NAT

NAT - собирательный термин, обозначает технологию трансляции сетевых адресов и/или протоколов. NAT устройства производят над проходящими пакетами преобразования с заменой адресов, портов, протоколов и пр.

Существуют более узкие понятие SNAT, DNAT, маскарадинг, PAT, NAT-PT и т.д.

зачем нужен NAT, как его используют

Для вывода в интернет внутренней сети

  • через пул внешних адресов
  • через один внешний адрес

Для подмены внешнего ip адреса другим (перенаправление трафика)

Для балансировки нагрузки между одинаковыми серверами с разными ip адресами.

Для объединения двух локальных сетей с пересекающейся внутренней адресацией.

как устроен NAT

s+d NAT (branch merging - evil!)

port-mapping, прокидывание портов

Преимущества и недостатки

Несовместим с некоторыми протоколами. Конкретная реализация NAT должна поддерживать инспекцию требуемого протокола.

NAT обладает свойством "экранировать" внутреннюю сеть от внешнего мира, но его нельзя использовать вместо межсетевого экрана.

Настройка на Cisco IOS

Маршрутизаторы и межсетевые экраны Cisco поддерживают различные типы NAT, в зависимости от набора опций ПО. Наиболее используемым является метод NAT с привязкой внутренних локальных адресов в различные порты одного внешнего адреса (PAT в терминологии Cisco).

Для настройки NAT на маршрутизаторе требуется: o Определить трафик, который необходимо транслировать (при помощи access-list’ов или route-map);

Ip access-list extended LOCAL permit ip 10.0.0.0 0.255.255.255 any

Route-map INT1 match ip address LOCAL match interface FastEthernet0/1.1

Аксесс-лист LOCAL выбирает весь трафик из 10 сети.

Роут-мап INT1 выбирает трафик аксесс-листа LOCAL, выходящий через сабинтерфейс Fa 0/1.1

o Определить на какие внешние адреса проводить трансляцию. Выбрать пул внешних адресов. Для PAT достаточно одного адреса.

Ip nat pool GLOBAL 212.192.64.74 212.192.64.74 netmask 255.255.255.0

Задание пула внешних адресов с именем GLOBAL. В пуле всего один адрес.

o Включить NAT для выбранных внутренних и внешних адресов.

Ip nat inside source route-map INT1 pool GLOBAL overload

Включение NAT для трансляции адресов источника на внутреннем интерфейсе. Будет транслироваться только трафик попадающий под условия роут-мапа INT1. Внешний адрес будет браться из пула GLOBAL.

Ip nat inside source static tcp 10.0.0.1 23 212.192.64.74 23 extend

Статическое «прокидывание порта» или «публикация сервиса». В трафике идущем внутрь на адрес 212.192.64.74 на порт tcp 23 будет заменен адресат на адрес 10.0.0.1 и порт 23.

o Назначить внутренние и внешние интерфейсы.

Interface FastEthernet0/0 ip nat inside interface FastEthernet0/1.1 ip nat outside

Интерфейс Fa 0/0 назначен внутренним для NAT.

Сабинтерфейс Fa 0/1.1 назначен внешним для NAT.

O Отладка и диагностика:

Sh ip nat translations - просмотр таблицы текущих трансляций; clear ip nat translations - удалить все текущие трансляции; debug ip nat – включение отладочных сообщений (undebug all – выключение отладки).

Примеры

Приведем несколько демонстрационных примеров для эмулятора cisco Packet Tracer.

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

Простая схема вывода сети в интернет через один внешний адрес

Схема объединения сетей с пересекающейся адресацией

Порядок работы NAT

Порядок применения правил NAT различается у различных производителей и на различном оборудовании. Приведем порядок применения политик NAT для маршрутизаторов на cisco IOS:

Inside-to-Outside

If IPSec then check input access list decryption - for CET (Cisco Encryption Technology) or IPSec check input access list check input rate limits input accounting redirect to web cache policy routing routing NAT inside to outside (local to global translation) crypto (check map and mark for encryption) check output access list inspect (Context-based Access Control (CBAC)) TCP intercept encryption Queueing

Outside-to-Inside

If IPSec then check input access list decryption - for CET or IPSec check input access list check input rate limits input accounting redirect to web cache NAT outside to inside (global to local translation) policy routing routing crypto (check map and mark for encryption) check output access list inspect CBAC TCP intercept encryption Queueing

Интернет-канал от одного провайдера через NAT

Простая схема реализации NAT с одним провайдером

Резервирование интернет-канала от двух провайдеров при помощи NAT, ip sla

Дано: мы получаем для нескольких компьютеров интернет от провайдера ISP1. Он выделили нам адрес 212.192.88.150. Выход в интернет организован с этого ip адреса через NAT.

Задача: подключить резервного провайдера - ISP2. Он выделит нам адрес 212.192.90.150. Организовать балансировку трафика: web-трафик пускать через ISP1, прочий трафик - через ISP2. В случае отказа одного из провайдеров - пускать весь трафик по живому каналу.

В чем сложность задачи? clear ip nat translations?

Схема

Конфиг

1 clear ip nat translations *

Найден, оттестирован такой кусок EEM. Не на всех версиях IOS генерируется событие.. Надо уточнить.

! event manager applet NAT-TRACK event syslog pattern "TRACKING-5-STATE" action 0.1 cli command "enable" action 0.2 wait 3 action 0.3 cli command "clear ip nat translation *" action 0.4 syslog msg "NAT translation cleared after track state change" !

2 При падении интерфейса на провайдера, велики шансы, что его шлюз будет пинговаться через второго

! username ИМЯ password 0 ПАРОЛЬ enable secret 0 ПАРОЛЬКОНФИГА! ! контроль входа на маршрутизатор line vty 0 4 login local ! ! ДХЦП ip dhcp pool LAN network ВнутрСеть Маска default-router Шлюз dns-server 10.11.12.13 ! DNS - фиктивный придумали - НЕ из нашей локальной сети! ! ! Монитор пинга на адрес шлюза провайдера-1 ! Ждать ответа 100 мс! Пинговать с частотой 1 секунда ip sla monitor 1 type echo protocol ipIcmpEcho ШлюзПров1 source-interface ИнтерфейсНаПров1 timeout 100 frequency 1 ! ! Монитор пинга на провайдера-2 ip sla monitor 2 type echo protocol ipIcmpEcho ШлюзПров2 source-interface ИнтерфейсНаПров2 timeout 50 frequency 1 ! ! Запуск пинговалок 1 и 2, сейчас и навсегда ip sla monitor schedule 1 life forever start-time now ip sla monitor schedule 2 life forever start-time now ! ! Трэки 10 и 20 - отслеживание состояния пинговалок! Реагирует на состояние Down или Up с задержкой 1 сек. track 10 rtr 1 reachability delay down 1 up 1 ! track 20 rtr 2 reachability delay down 1 up 1 ! ! ! Маршруты на все внешние сети на обоих провайдеров! Маршруты привязаны к трэкам! и будут активироваться только если трэк в состоянии Up ! т.е. если шлюз на соответствующего провайдера доступен ip route 0.0.0.0 0.0.0.0 ШлюзПров1 track 10 ip route 0.0.0.0 0.0.0.0 ШлюзПров2 track 20 ! ! ! int fa 0/0 no shut ! ! Саб-интерфейсы в сторону внешних провайдеров! помечаются как outside для NAT interface FastEthernet0/0.1 description ISP1 encaps dot1q НомерВланПров1 ip address ipНаПров1 Маска ip nat outside ! interface FastEthernet0/0.2 description ISP2 encapsulation dot1Q НомерВланПров2 ip address ipНаПров2 Маска ip nat outside ! ! Интерфейс на внутр сеть! помечается как inside для NAT ! Привязывается политика маршрутизации PBR interface FastEthernet0/1 ip address ipНаВнутрСеть маска ip nat inside ip policy route-map PBR no shut ! ! Аксесс-листы из внутр сети наружу! На веб-трафик и на все остальное ip access-list extended LOCAL permit ip внутрСеть any ! ip access-list extended WEB permit tcp внутрСеть any eq www permit tcp внутрСеть any eq 443 ! ip access-list extended ALL permit ip any any ! ! ! хитрый рут-мап PBR ! Если трафик из локалки на Веб! то назначить ему шлюзом первого провайдера! Иначе, прочему трафику из локалки! назначить шлюзом второго провайдера. ! При назначении шлюза проверяются Трэки route-map PBR permit 10 match ip address WEB set ip next-hop verify-availability ШлюзПров1 1 track 10 ! route-map PBR permit 20 match ip address ALL set ip next-hop verify-availability ШлюзПров2 1 track 20 ! ! ! хитрый рут-мап ISP1 ! срабатывает если трафик из локалки! пытается выйти через интерфейс Fa0/0.1 route-map ISP1 permit 10 match ip address LOCAL match interface FastEthernet0/0.1 ! ! хитрый рут-мап ISP2 ! срабатывает если трафик из локалки! пытается выйти через интерфейс Fa0/0.2 route-map ISP2 permit 10 match ip address LOCAL match interface FastEthernet0/0.2 ! ! ! Наконец, NAT ;-) ! ! Трафик из локалки в первого провайдера Натить через первый интерфейс ip nat inside source route-map ISP1 interface FastEthernet0/0.1 overload ! ! Трафик из локалки во второго провайдера Натить через второй интерфейс ip nat inside source route-map ISP2 interface FastEthernet0/0.2 overload ! ! Трафик на фиктивный ДНС переНатить на Гугл-ДНС ip nat outside source static 8.8.8.8 10.11.12.13 no-alias ! ! проброс внутреннего порта 3389 на внешний порт 1111 ip nat inside source static tcp внутрХост 3389 внешip 1111 extendable ip nat inside source static tcp внутрХост 3389 внешip 1111 extendable ! !

Разное

CGN (carrier grade nat) с особым пулом приватных адресов

NAT как ALG (application layer gateway), (plain text protocols e.g. SIP)