Сценарий nat что такое
Что такое NAT в роутере: определение, примеры, как включить и настроить
Всем привет! Сегодня мы поговорим про то, что же такое NAT в роутере. Как вы, наверное, все знаете, большинство адресов в интернете использует IPv4 версию. Эти адреса имеют диапазон от 0.0.0.0 до 255.255.255.255. Если подсчитать, то у нас есть больше 4-х миллиардов айпишников. Вроде бы достаточно много, но на деле с ростом клиентов интернета свободных адресов почти уже не осталось. Приплюсуем сюда тот факт, что многие IP зарезервированы, а на планете активно развивается мобильный интернет, который забирает львиную долю IPv4.
Но как получается всем подключаться к интернету и не оставаться в стороне? – Для этих целей и используется NAT (Network Address Translation – трансляция сетевых адресов). А теперь о самой сетевой технологии более подробно в статье.
Что такое NAT и как работает и зачем он нужен
Если у вас есть дома роутер, то вы уже используете технологию NAT. Чтобы вам было понятнее для чего она нужна, давайте рассмотрим простой пример. Представим, что вам нужно в квартиру провести интернет. Вы звоните провайдеру, он приходит и прокидывает вам кабель. Помимо всего, чтобы работать в глобальной сети вам нужен внешний айпишник, его также предоставляет только провайдер.
Конечно вы можете воткнуть кабель в ноутбук или компьютер, тогда никакого NAT (в вашей квартире) не будет, так как ваш комп будет напрямую подключен к интернету сети. Но если помимо вас, интернетом хотят пользоваться и другие жильцы квартиры, то вам нужно установить Wi-Fi роутер. Не будете же вы каждому жителю проводить интернет-кабель и отдельно платить за каждого.
Кабель подключается к выделенному WAN порту. Далее к роутеру уже можно подключить телефоны, планшеты, ноутбуки, компьютеры, телевизоры и многое другое. Маршрутизатор выступает неким шлюзом между вашей домашней и глобальной интернет сетью.
Роутер каждому устройству дома выдает свой локальный IP. Например:
Шлюз, он же роутер, имеет сразу два адреса:
Все жители квартиры сразу могут иметь доступ к интернету с одного внешнего адреса за счет роутера. Как я уже и говорил, таких внешних айпишников в интернете очень мало – всего 4 294 967 296.
NAT – это технология, которая позволяет переводить вот такие вот локальные адреса во внешние и получать ответ из интернета. В итоге каждый житель квартиры, находясь внутри локальной сети, и используя за счет роутера внешний IP – может выходить в интернет.
Если говорить грубо, то NAT – это как дверь в квартире, каждый может её использовать, чтобы выйти в открытый мир. В итоге пользователей в интернете становится куда больше чем 4 миллиарда, но количество самих адресов остается всегда одним и тем же.
NAT позволяет скрывать внутренние айпишники от интернета, и их никто не сможет увидеть. Это мы рассмотрели случай, когда подключена небольшая семья. А представим, что нужно подключить офис из сотни или даже тысячи человек. Для организации просто не целесообразно подключать каждому пользователю свой интернет с внешним IP. Да и это не нужно. Достаточно использовать маршрутизатор, в котором уже по умолчанию будет работать NAT.
Схема достаточно простая, давайте рассмотрим пример.
Как видите, NAT постоянно переводит внутренний адрес во внешний и обратно. Если локальная сеть имеет только один выходной маршрутизатор, который может быть связан с внешней сетью, то такую сеть называют Stub сетью.
Термины NAT
В сфере NAT есть различная терминология, которую вы можете встретить в настройках маршрутизатора или на схемах подключения.
Есть 4 вида NAT адресов:
Пока ничего не понятно? Сейчас постараюсь рассказать на примере. Давайте рассмотрим пример NAT адресации. Смотрим на картинку ниже.
Типы NAT
Статический (Static) NAT
Статический NAT – это когда у каждого локального внутреннего адреса, есть свой глобальный адрес. Часто используется для Web-серверов. Весь трафик при этом проходит аналогично через один узел, и у каждого устройства есть свой как локальный, так и глобальный IP.
Динамический (Dynamic) NAT
У нас есть пул внутренних айпишников, который постоянно присваивается разные глобальные внешние адреса. Внешние IP присваиваются по принципу, какой есть свободный, тот и назначается маршрутизатором. Очень часто используется в городских сетях провайдерами, именно поэтому ваши глобальные IP постоянно меняются. Чтобы немного расширить эту тему, советую более подробно почитать про белые и серые IP.
PAT (Port Address Translation)
Самая популярная форма NAT. Про неё я в самом начале и говорил. Когда нескольким локальным адресам назначается один глобальный. То есть когда вся семья, грубо говоря, использует один внешний IP. Чтобы маршрутизатор понял, кому именно посылать ответ от сервера, на который ранее был запрос, он использует в своем запросе номер порта. И по нему отсылает ответ нужному локальному пользователю.
Посмотрите на картинку выше. Как видите при запросе на выделенный сервер, помимо того, что роутер переводит адреса, он еще в запросе добавляет номер порта. То есть ответ от сервера также имеет этот порт, который потом уже используется для того, чтобы ответ получил нужный компьютер.
Плюсы и минусы IP NAT
Видео
Если вам что-то было не понятно, или вам лень читать, то советую посмотреть это полезное видео.
Как настроить и включить NAT на роутере
Стандартный NAT уже работает в режиме PAT и его настраивать не нужно. То есть вы просто настраиваете интернет и Wi-Fi на маршрутизаторе. Другой вопрос, если дома вы решили организовать Web, игровой или почтовый сервер. А быть может вы хотите подключить камеры видеонаблюдения и следить за домом или квартирой, отдыхая на Бали. Вот тут нам понадобится проброс портов – об смотрите статью про порты. Там коротко рассказано, что такое порты, для чего они нужны и как их пробросить.
NAT (Network Address Translation) для новичков
Приветствую всех читателей данной статьи!
Данная статья будет полезна как новичкам в IT сфере, так и неопытным системным администраторам/ сетевым инженерам. Здесь затрагиваются понятия и принцип работы технологии NAT, ее значение в наше время, виды и создание с конфигурированием в программе-симуляторе Cisco Packet Tracer.
Введение
С задачей объединения устройств в единую сеть помогают различные компании, занимающиеся разработкой и внедрением сетевого оборудования.На сей момент на рынке сетевого оборудования доминируют компании Cisco Systems и Huawei. В данной статье будем вести работу с оборудованием Cisco.
В операционной системе IOS представлен специфичный интерфейс командой строки CLI (Command Line Interface). В этом интерфейсе возможно использовать некоторое количество команд. Количество зависит от выбранного режима и от уровня привилегий пользователя (пользовательский, привилегированный, глобальной конфигурации и специфической конфигурации).
Нехватка IP адресов. Технология NAT
В 80х годах ХХ века заложили основу IPv4, позволяющую создавать
4.3 млрд. адресов, но никто не предполагал, что этот запас так быстро иссякнет. С каждым годом появлялось все больше и больше пользователей и с 25 ноября 2019г. в России и в Европе официально закончились IP адреса. Лимит исчерпан.
Для решения этой проблемы было придумано несколько способов:
Первый способ заключается в усилении контроля за IP адресами.
Пусть существует некоторый сайт N с IPv4 xxx.xxx.xxx.xxx, и его хост решил прекратить его поддержание данного сайта. Сайт заброшен, а IP продолжает числиться как занятый и таких случаев может быть очень много. То бишь необходимо провести «инвентаризацию» IP адресов и изъять неиспользуемые/заброшенные.
Протокол IPv6 разработан как преемник протокола IPv4. Основные преимущества IPv6 над IPv4 заключаются в увеличенном адресном пространстве (IPv4 имел 32 бита, что равнялось 2 32 адресам, а IPv6 имел 128 бит, что равнялось 2 128 адресам), 6 версия протокола стала безопаснее (т.к. в v4 не предусматривались многие аспекты безопасности, ибо расчет был на сторонние ПО, а в v6 появились контрольные суммы и шифрование пакетов), однако это далеко не все преимущества IPv6 над IPv4.
Проблема, казалось бы, решена, однако перейти с протокола IPv4 на IPv6 вызывает трудности, потому что эти протоколы несовместимы. И изюминкой причины тяжелого перехода на 6 версию протокола является денежная стоимость. Многие кампании не готовы вложить достаточное кол-во средств для перехода, хоть и стоит отметить, что процесс перехода с 4 на 6 версию постепенно идет.
Cогласно документу RFC 1918, IANA зарезервировала 3 блока адресов для частных IP (серых) (рис 1), остальные же IP адреса носят название публичных адресов (белых).
рис.1
Маршрутизатор подменяет обратный IP-адрес пакета на свой внешний (видимый из интернета) IP-адрес и меняет номер порта (чтобы различать ответные пакеты, адресованные разным локальным компьютерам). Комбинацию, нужную для обратной подстановки, маршрутизатор сохраняет у себя во временной таблице. Через некоторое время после того, как клиент и сервер закончат обмениваться пакетами, маршрутизатор сотрет у себя в таблице запись об n-ом порте за сроком давности.
Существует множество типов технологии NAT, однако основными принято считать: Статический NAT (Static Network Address Translation), Динамический NAT (Dynamic Network Address Translation) и Перегруженный NAT (Network Address Translation Overload).
Статический NAT применяют для отображения незарегистрированного IP-адреса на зарегистрированный IP-адрес на основании один к одному. Особенно полезно, когда устройство должно быть доступным снаружи сети.
рис 2
Статический NAT используется чаще всего в корпоративных сетях, когда необходимо, чтобы какой-либо IP адрес всегда был доступен из глобальной сети. Зачастую статическим IP наделяют сервера и помещают их в DМZ (рис 2).
Подготовка компьютерной сети
Логическая схема топологии сети будет выглядеть как показано на изображении (рис 3)
рис 4
рис 5
Теперь нужно настроить непосредственно маршрутизатор. Технология sub-interface позволяет объединять несколько виртуальных интерфейсов в один и подключить их к физическому интерфейсу (на маршрутизаторе выбран физический интерфейс fa0/0). Необходимо дать для каждого VLAN’а свой под-интерфейс (показано красным на рис 5) и выдать им IP адрес (показано зеленым на рис 5).
Таким образом, в будущем мы будем NAT’ить трафик.
Дадим серверу статичный IP 192.168.3.2, а остальных оставим для динамического распределения адресов.
После настройки DHCP, нужно прописать на каждом саб-интерфейсе в R0 команду «ip helper-address 192.168.3.2», тем самым указывая, куда стоит обращаться для получения IP адреса.
После данной команды, устройства получат запрашиваемые IP адреса.
рис 6
Пингуем с рандомного ПК сам сервер (1 пинг) и шлюзы маршрутизатора (2- 3 пинг) (рис 6).
Дальше для удобства будем эмулировать подключение к провайдеру, путем создания в программе-симуляторе РС провайдера, сервера Serv2 с IP 213.234.60.2 (эмулирующий остальную сеть интернет) и роутера R3.
Настройка NAT
Ну и наконец-то мы дошли до самой настройки NAT.
Для внедрения NAT нужно определиться какие порты будут внешними(outside), а какие внутренними(inside).
рис 7
рис 8 рис 9
А теперь, на финал, внедрим NAT Overload на R0.
Для этого создадим ACL и пропишем там сети, которые должны «натиться» (показано синим на рис 9) и, показав что нужно «натить», активируем лист (показано красным на рис 9).
Таким образом, реализовав статическую и динамическую (типа PAT) настройку NAT, мы смогли защитить небольшую сеть от подключения извне.
Надеюсь вам понравилась данная статья.
Спасибо за ее чтение, всем хорошего настроения 🙂
NAT — что это такое, зачем он нужен и как его использовать
На данный момент в интернете больше всего распространены IP адреса в формате четвертой версии интернет протокола — IPv4. Но данная технология позволяет создавать лишь 4.3 миллиарда айпи на всех пользователей всемирной паутины.
Хотя нам и кажется, что это много — их уже критически не хватает, надо было придумывать, что-то новое, и еще до появления IPv6 был создан механизм преобразования сетевых адресов — NAT.
Из прошлого материала вы могли узнать о сетевом шлюзе, сейчас давайте разберемся, что из себя представляет технология NAT, как она работает и зачем была в принципе придумана и внедрена.
Что такое НАТ — NAT
NAT — это специальный механизм, реализованный в сетях TCP/IP, который позволяет изменять айпи адреса пересылаемых пакетов, т.е. тех внутренних IP, которые присылаются на сетевой шлюз — в глобальные для дальнейшей отправки во внешний интернет. Также, такие пакеты называют транзитными.
Реализуется через маршрутизатор, на программном уровне или настраивается самим провайдером. Полностью расшифровывается, как Network Address Translation и переводится на русский, как Преобразование Сетевых Адресов.
Простыми словами, работает это так. При создании сетей обычно используются частные IP вида: 10/8, 172.16/12, 192.168/16. Обмен пакетами между этими айпи внутри такой сети происходит напрямую. Но, чтобы выйти в глобальную паутину, такой IP должен быть преобразован в глобальный/публичный — именно этим и занимается NAT.
Именно НАТ позволяет вам из частной сети общаться с внешними ip адресами, за ее пределами. А между прочем, даже ваш роутер и подсоединенные к нему ПК, ноутбук, телевизор, смартфон и т.д. — это уже локальная частная сеть.
Интересно! Вот таким вот простыми способом, была решена проблема нехватки уникальных айпи IPv4 для каждого устройства. Т.е. в своей сети — свой IP, а во всемирной паутине — публичный, другой IP.
Типы NAT
1. Статический, Static NAT
Берется один IP-адрес из внутренней сети и преобразовывается во внешний/публичный и все запросы, которые будут на него посылаться извне, будут пересылаться именно на этот внутренний айпи. Т.е. для всемирной паутины он будет выглядеть полностью, как белый/публичный IP.
Используется чаще всего в корпоративных сетях, когда необходимо, чтобы какой-либо IP всегда был доступен из глобальной паутины.
Работает это так:
Вот и все. Если у вас несколько роутеров, то такую процедуру можно проделать со всеми ними.
2. Динамический, Dynamic NAT
Если вы имеете определенное количество белых/внешних IP, например, ваш поставщик интернета предоставил вам сеть 199.49.101.0/28 — с 16 айпи. Надеюсь помните, что первый и конечный адреса всегда заняты, подробнее в статье про IPv4. Еще два мы возьмем для оборудования на функционирование маршрутизации. И остается их 12, которые можно применять для NAT и пускать посредством них свои устройства.
Тут все практически также, как и со статичным НАТ, также 1 внутренний айпи привязан к 1 внешнему, но с той лишь разницей, что адреса теперь будут выдаваться динамически каждому нуждающемуся пользователю во внутренней сети, а не одному определенному узлу.
Все бы хорошо, но если, например, адресов 12, а пользователей 300? Те, кто успел, те и смогут их использовать.
3. NAT Overload
Этот вид еще имеет другие названия такие как: Many-to-One NAT, Port Address Translation (PAT) и IP Masquerading.
Как вы знаете, чаще всего провайдер выдает вам лишь один IP адрес, который может быть статическим или динамическим. Но дома может быть множество устройств с разными программами, которым необходим доступ во всемирную паутину и как определить, какое из них отправило запрос, какое приложение? Проблема эта решается использованием портов, по этой ссылке очень подробно описана эта тема.
Важно! Надеюсь вы помните, что порт пишется сразу после айпи через двоеточие, например: 176.57.209.9:443. И такая связка называется — сокет.
Как это будет выглядеть, когда NAT подменяет один IP на другой? Так, например, с двух устройств с внутренними адресами 173.52.6.7 и 173.52.4.5, которые должны заменяться на: 198.50.100.9 и 198.50.100.11 будет выполнен запрос на какой-либо сервер в интернете — это будет смотреться так:
Что происходит дальше? NAT берет IP-пакет первого узла, вынимает его TCP сегмент, при этом узнавая порт. У этого айпи внешний адрес 198.50.100.9 — на него он меняется при выходе в глобальный интернет. Далее происходит выбор порта, к примеру, 11837 и все данные уровня приложений упаковываются в новый TCP сегмент. Порт адресата естественно остается — 80, а вот того, кто отправляет заменяется с 21784 на 11837. TCP сегмент вставляется в новый IP-пакет со сменой самого адреса на 198.50.100.9. Такая же процедура происходит и со вторым хостом только отбирается следующий незанятый PORT.
Теперь данные отправляемые в интернет будут выглядеть так:
В NAT-таблицу записываются значения отправителя и получателя:
Когда приходит ответ от сервера происходит сопоставление данных с таблицей и пакеты данных доставляются именно тому, кто совершил запрос.
Преимущества NAT
Недостатки NAT
В заключение
Надеюсь вам стало чуточку понятнее, что это такое. Старался написать все, как можно понятнее без заумных терминов и других определений. Надеюсь вам понравилось и до встречи на страницах данного портала.
Что такое NAT, как его настроить и использовать — NAT, PAT, Static NAT, Dynamic NAT
Сегодня затронем подробнее тему несколько болезненную и довольно непонятную, но более непонятную, чем болезненную.
В большей степени эта проблема касается тех, кто играет в многопользовательские игры и коротко эта проблема звучит примерно так: «ПОЧЕМУ КО МНЕ НИКТО НЕ ЗАХОДИТ?». Для других эта проблема выглядит несколько иначе, а именно:
Но, однако, нет никакого заговора, виновник всех этих бед находится рядом с вами и хитро подмигивает вам лампочками, а зовут его. роутер, да-да, тот самый, который раздает вам интернет на все ваши (и может быть соседские) девайсы.
Если коротко, то пользователи из интернета просто не могут к вам подключиться, потому что ваш роутер их не пускает, но он делает это не просто из прихоти, а потому, что не знает о том, что все эти люди хотят подключиться именно к вам. Вот он и думает, что они что-то хотят от него самого.
Общее определение
Тип первый, Static NAT
Static NAT не требуется для дома, а нужен в том случае, если провайдер выделил несколько IP адресов (внешние или «белые» адреса) вашей компании, и вам нужно, чтобы некоторые серверы всегда были видны из интернета, при этом их адреса бы не менялись.
Т.е. происходит преобразование адресов 1-1 (один внешний IP назначается одному внутреннему серверу). При такой настройке ваши серверы всегда будут доступны из интернета на любом порту.
Кстати говоря о портах, попробую несколько углубиться в эту тему, но не слишком сильно. Дело в том, что любой сервис, любая программа обращается к компьютеру, серверу, роутеру или сервису (будь то почта, веб-страничка или любой другой сервис) не только по IP адресу, но и по порту. Например, чтобы вам открыть страничку google.com со своего компьютера, вам надо ввести две вещи: IP адрес ( DNS имя) и.. порт.
Но постойте, возмутитесь вы, ведь никакого порта вы не вводите и все отлично открывается!
Так в чем же дело в статике?
Дело в том, что, нет, в DNS записи порт не прячется, как некоторые могли бы подумать, этот самый порт ваш браузер сам подставляет в адресную строку вместо вас. Вы можете легко это проверить. Введите в адресной строке google.com:80 и увидите, что страничка гугла открылась, но волшебные » :80 » внезапно исчезли.
Так вот, чтобы пользователям из интернета вас видеть и иметь возможность к вам подключаться, они должны знать две вещи: ваш IP адрес и ваш порт, на котором расположен ваш сервис.
При статическом NAT вам будет фиолетово какой порт использует сервер или программа, т.к. сервер становится полностью доступен из интернета. Чтобы уже ограничить используемые порты, настраивается на этом сервере межсетевой экран.
Схема работы статического NAT
Преимущества данного способа:
Тип второй, Dynamic NAT
Динамический NAT отличается от статического немногим. Он используется почти также, но с тем лишь исключением, что ваши сервера не видны из интернета, но самим серверам этот интернет нужен. Суть его в том, что вам также выдаются несколько внешних IP адресов от провайдера, после чего роутер сам распределяет адреса между «нуждающимися».
Т.е. как только сервер или компьютер захотел выйти в интернет, роутер смотрит на свой список внешних адресов, выданных провайдером, и выдает один адрес из этого списка, при этом помечает что вот он выдал такой-то внешний адрес такому-то серверу или компьютеру (таблица NAT ).
При этом срок жизни такой записи длится очень короткое время и как только сервер/компьютер перестал требовать доступ в интернет, этот адрес удаляется из таблицы NAT роутера.
Существенный недостаток в том, что количество серверов и компьютеров, которым требуется доступ в интернет, не должен сильно превышать кол-во выданных провайдером внешних адресов.
Недостаток и преимущества динамики
Ведь как только у роутера закончатся адреса в списке, он не сможет пустить новые компьютеры или серверы в интернет, пока не освободится хотя бы один внешний адрес.
Преимущества данного способа:
Тип третий, Port Address Translation (PAT), также известный как NAT Overload или NAT Masquerading
Еще немного про порты и другие нюансы
Многие программы (не только лишь все) имеют вшитые порты без возможности перенастройки, либо, к примеру, у вас есть два Веб-сервера на винде (так называемый IIS ), которые работают на 80 порту каждый и вам нужно дать доступ из интернета на оба сервера.
Итого, на роутере мы настраиваем порты таким образом:
Имя | Приложение | Внутренний IP | Внутренний порт | Внешний IP | Внешний порт |
Сервер 1 | Teamspeak | 192.168.1.2 | 9987* | 87.123.41.12 | 9987 |
Сервер 2 | FTP сервер | 192.168.1.3 | 21* | 87.123.41.12 | 21000 |
Сервер 3 | Веб-сервер | 192.168.1.4 | 80* | 87.123.41.12 | 80 |
Сервер 3 | Веб-сервер | 192.168.1.4 | 443* | 87.123.41.12 | 444 |
ПК 1 | uTorrent | 192.168.1.10 | 26000 | 87.123.41.12 | 26000 |
ПК 2 | Bit-Torrent | 192.168.1.20 | 26100 | 87.123.41.12 | 26100 |
ПК 2 | Game Server | 192.168.1.20 | 27015* | 87.123.41.12 | 27015 |
ПК 1 | RDP | 192.168.1.10 | 3389** | 87.123.41.12 | 33891 |
ПК 2 | RDP | 192.168.1.20 | 3389** | 87.123.41.12 | 33892 |
Наглядная схемка ниже:
Теперь я постараюсь объяснить почему я написал именно эти порты.
Немного деталей про порты
Подытожив все это получаем, что удаленным пользователям всеравно какие у нас внутренние порты, они о них не знают и знать не могут. Эта информация нужна только нашему роутеру, чтобы он мог пересылать запросы туда, куда они и должны попадать.
Преимущества и недостатки третьего варианта
Теоретически, вы можете назначить одному IP адресу до 131072 (2 * 2^16) приложений. Почему я говорю «приложений», а не компьютеров/серверов?
Углубляться в это в рамках этой статьи я не буду, в этом нет необходимости.
Для любой программы есть хелп, в котором написано какие порты ей нужны для работы, если их нельзя сменить. Многие приложения позволяют вам самим назначить какие порты какого типа использовать, таким образом упрощая вашу задачу. Для остальных же есть такой замечательный ресурс, как portforward.com.
Послесловие
Получилось несколько сумбурно, да и тема довольно непростая, но надеюсь теперь при слове NAT вас не будет бросать в дрожь 🙂
Как и всегда, если есть какие-то вопросы, мысли, дополнения и всё такое прочее, то добро пожаловать в комментарии к этой записи.
PS : За существование статьи отдельное спасибо другу проекта и члену нашей команды под ником “barn4k“