маршрутизатор nat что это
Технология преобразования сетевых адресов (NAT)
Одной из проблем в развитии сетей является ограниченное количество существующих IPv4 адресов — их около 4,3 миллиарда. С повсеместным распространением интернета и взрывообразным ростом количества пользователей, стало очевидно, что этого недостаточно. Возникла потребность в инструменте, способном решить эту проблему (по крайней мере до момента, когда будут внедрены IPv6) — и одним из таких инструментов стала технология NAT (Network Address Translation).
Что такое NAT
При проектировании сетей обычно применяются частные IP-адреса 10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16. Их используют внутри сети площадки или организации для поддержания локального взаимодействия между устройствами, а не для маршрутизации во всемирной сети. Чтобы устройство с адресом IPv4 могло обратиться к другим устройствам или ресурсам через интернет, его частный адрес должен быть преобразован в публичный и общедоступный. Такое преобразование — это главное, что делает NAT, специальный механизм преобразования приватных адресов в общедоступные.
Поддержка NAT в сочетании с приватными IPv4 адресами стала эффективным способом сохранения общедоступных адресов IPv4. Механизм дает возможность многочисленным устройствам, каждое из которых имеет собственный приватный адрес, использовать единый общедоступный адрес IPv4. Дополнительным плюсом NAT является повышение уровня безопасности и конфиденциальности сети, за счет того, что он скрывает приватные адреса IPv4.
Маршрутизатор NAT можно настроить с одним или несколькими общедоступными IPv4-адресами, которые называют пулом NAT. При отправке трафика устройством из внутренней сети во внешнюю сеть, маршрутизатор преобразует его внутренний IPv4-адрес в один из адресов, входящих в состав пула. В результате действия такого механизма весь, исходящий из сети трафик внешние устройства «видят» с общедоступным адресом IPv4, который можно назвать NAT IP адресом.
Действие маршрутизатора NAT осуществляется на границе тупиковой сети, получившей название Stub-сети. Она связана с соседней сетью одним соединением, имеет один вход и один выход. При установлении связи между устройствами внутри и снаружи Stub-сети пакет отправляется пограничному маршрутизатору, который исполняет процесс NAT. В результате этого процесса внутренний приватный адрес устройства преобразуется в публичный наружный адрес, поддающийся маршрутизации.
Терминология NAT
В соответствии с принятой терминологией NAT внутренняя сеть понимается как набор сетей, которые подлежат терминологии. Под внешней понимают все другие сети.
Чтобы определить, что такое NAT-адрес, нужно учитывать его нахождение в частной сети или в интернете, а также тип трафика (входящий или исходящий). В зависимости от этих факторов устанавливаются следующие четыре обозначения:
Нужно учитывать, что терминология NAT всегда строится с позиции устройства с транслируемым адресом.
Типы NAT
Для понимания, что такое NAT в сети, необходимо разобраться с классификацией трансляции. В частности, по способу сопоставления адресов, бывают такие типы трансляции NAT:
Рассмотрим подробнее, что такое каждый из этих типов NAT.
Статический NAT
Этот тип NAT использует принцип «один к одному» при сопоставлении локальных и глобальных адресов. Настройки сопоставлений, установленные сетевым администратором, остаются неизменными. При отправке сетевыми устройствами трафика в интернет выполняется преобразование их внутренних локальных адресов в настроенные администратором глобальные внутренние адреса. Для внешних сетей устройства, которые работают во внутренней сети со статическим NAT, имеют общедоступные адреса IPv4.
Static NAT Type — это то, что хорошо подходит для веб-серверов, а также для устройств, которым необходим доступный из интернета согласованный адрес. Реализация статистического NAT требует наличия числа общедоступных адресов, достаточного для удовлетворения общего числа одновременных пользовательских сеансов.
Пример статической NAT таблицы:
Inside Local Address
Inside Global Adress
Динамический NAT
Тип динамического NAT работает с пулом публичных адресов, которые назначаются на основе принципа «первым пришел, первым обслужен». При запросе внутренним устройством доступа к интернету динамическим NAT производится назначение из пула общедоступного адреса IPv4. Как и в случае со статическим, для динамического типа NAT необходимо достаточное число общедоступных адресов, чтобы удовлетворить совокупное число одновременных пользовательских сеансов.
Пример динамической NAT таблицы:
Inside Local Address
Inside Global Adress
Port Address Translation (PAT)
Это наиболее распространенный тип NAT. При использовании Port Address Translation NAT подключение осуществляет трансляцию нескольких приватных адресов на один или несколько общедоступных. Этот принцип используется в большинстве маршрутизаторов, которые устанавливаются дома у частных абонентов. Адрес назначается провайдером маршрутизатором. При этом одновременный доступ к интернету могут получать несколько домашних пользователей.
Применение PAT позволяет сопоставлять несколько адресов с одним или несколькими. Это возможно благодаря отслеживанию каждого приватного адреса по номеру порта. После начала сеанса TCP/IP устройство генерирует номер порта источника TCP или UDP, что позволяет идентифицировать сеанс. При получении пакета от клиента NAT-маршрутизатором, он однозначно идентифицирует перевод NAT, используя номер собственного исходного порта. Схема PAT гарантирует использование разных портов TCP устройствами для каждого сеанса. При поступлении ответа от сервера при этом типе NAT номер порта источника уже используется как номер порта получателя. Это позволяет маршрутизатору однозначно правильно передавать пакеты.
Маршрутизатор выполняет обработку каждого пакета и определяет устройство, с которого он выслан, используя номер порта. Адресом источника (Source Address) в этой схеме будет локальный адрес устройства с добавлением номера порта, который был назначен TCP/IP. Адресом назначения (Destination Address) при использовании TAP будет внешний локальный адрес с добавлением номера служебного порта, например, порта службы 80: HTTP. При ответе веб-сервера производится обратная трансформация адресов.
Часто на маршрутизаторе порты клиента изменяются, поскольку ранее назначенные порты могут закрепляться за другими работающими сеансами. В процессе NAT сессии PAT стремится сохранить исходный порт источника. Если же этот порт уже занят, выполняется назначение первого из доступных номеров. Поиск свободного номера начинается с начала группы портов 0–511, 512–1023 или 1024–65535. В случае если свободных портов не остается и имеется больше одного внешнего адреса в пуле адресов, PAT переходит на новый адрес для поиска исходного порта источника.
Между традиционным NAT и PAT есть существенные отличия. NAT осуществляет перевод IPv4-адреса на основе принципа «один к одному» между приватными и общедоступными IPv4-адресами. С другой стороны, PAT трансформирует и адрес, и номер порта. Перенаправление входящих пакетов в NAT интернете выполняется на заданный хостом IP-адрес источника. В схеме PAT предусматривается только один или небольшое число публично открытых адресов IPv4, поэтому перенаправление входящих данных осуществляется на основе NAT таблицы маршрутизатора.
Преимущества и недостатки NAT
Понимая, как работает NAT, можно выделить комплекс серьезных преимуществ, которые предоставляет этот механизм при организации сетей. В том числе к основным плюсам относятся такие свойства Network Address Translation:
Особенностью NAT является организация прямого взаимодействия хостов в интернете с устройством, поддерживающим Network Address Translation, а не с фактическим хостом в локальной сети.
Тут выявляются некоторые недостатки механизма, в том числе:
В то же время NAT остается эффективным и удобным механизмом, применяемым для организации работы сетей с использованием адресов IPv4.
Типы NAT
NAT – трансляция сетевых адресов, позволяет локальным (частным) сетям, использующим незарегистрированные IP-адреса, подключаться к Интернету. NAT работает на маршрутизаторе, обычно соединяя две сети вместе, и преобразует частные адреса во внутренней сети в публичные адреса, прежде чем пакеты будут перенаправлены в другую сеть.
В рамках этой возможности NAT может быть настроен для объявления только одного адреса для всей сети внешнему миру. Это обеспечивает дополнительную безопасность, эффективно скрывая за этим адресом всю внутреннюю сеть. NAT предлагает двойные функции безопасности и сохранения адресов и обычно реализуется в средах удаленного доступа.
Как работает
NAT позволяет одному устройству, например маршрутизатору, действовать как агент между Интернетом и локальной сетью, представляя доступ устройствам за пределами своей сети.
Зачем это нужно
В качестве примера возьмем игровые консоли. Когда вы подключаете PlayStation 4/5 или Xbox к беспроводному маршрутизатору, хотя вы можете подключиться к Xbox Live / PlayStation Network, однако возникают следующие проблемы:
Например, PlayStation 4/5 необходимо установить Type NAT 1 (позволяет создавать многопользовательскую игру ) или Type NAT 2 (не позволяет создавать многопользовательскую игру, но можно подключиться к другим игрокам ).
Full Cone NAT
Все запросы с одного и того же внутреннего IP-адреса и порта с одним и тем же внешний IP-адресом и портом. Любой внешний хост может отправить пакет внутреннему хосту, отправив пакет на назначенный внешний адрес.
Restricted Cone NAT
Все запросы с одного и того же внутреннего IP-адреса и порта с одним и тем же внешний IP-адресом и портом. В отличие от Full Cone NAT, внешний хост (с IP-адресом X) может отправить пакет на внутренний хост только в том случае, если внутренний хост ранее отправил пакет на IP-адрес X.
Port Restricted NAT
То же, что и Restricted Cone NAT, но в этом случае обращается внимание на соответствие номера порта источника, и не обращает внимания на адрес источника. Маршрутизатор будет транслировать входящие пакеты с любым адресом источника, но порт источника при этом обязан быть 53, в противном случае пакет будет уничтожен маршрутизатором.
Symmetric NAT
Все запросы с одного и того же внутреннего IP-адреса и порта на определенный IP-адрес и порт назначения, сопоставляется с одним и тем же внешний IP-адресом и портом. Если один и тот же хост отправляет пакет с тем же адресом источника и портом, но в другое место назначения, используется другое сопоставление. Только внешний хост, который получает пакет от внутреннего хоста, может отправить пакет обратно.
Проблемы
В Symmetric NAT некоторые онлайн-игры или потоковые сервисы могут работать некорректно. В настоящее время вы можете переключиться на Fullcone NAT, чтобы обеспечить нормальное использование связанных сервисов, однако с менее безопасным.
Если у вас нет особых потребностей или после завершения игры, рекомендуется настроить тип NAT на Symmetric NAT по умолчанию, чтобы сделать внутреннюю сетевую среду более безопасной.
Что такое nat в роутере?
Многие пользователи, имея роутер, думают, что он нужен только для того, чтобы подключиться к интернету смогли только они сами. На самом же деле он выполняет ещё и функцию подключения к серверу других пользователей. В этой статье мы расскажем, что такое NAT в маршрутизаторе, для чего он нужен и как его настроить.
NAT в роутере — что это?
Network Address Translation с английского переводится как «трансляция сетевых адресов» — это процесс перевода внутренних адресов во внешние адреса. Если данная функция не будет настроена, то роутер заблокирует доступ к любым портам всем входящим соединениям из глобальной сети Интернет, при настроенных же параметрах – будет разрешать.
Настройка
Чтобы самостоятельно настроить nat в роутере, необходимо выполнить следующий ряд действий:
После выполнения данного ряда действий, маршрутизатор готов к работе.
Бывают случаи, когда настроить nat нужно и на компьютере. Для этого через «Пуск» следует зайти в «Панель управления» и запустить «Сетевые подключения». Выбрать новое сетевое устройство и кликнуть по нему правой клавишей мышки, в «Свойствах» выбрать «Дополнительно». И установить галочки напротив «Разрешить др. пользователям сети использовать данное подключение» и нажать Ок.
Настройка обратной петли
Смысл обратной петли nat loopback состоит в том, что если пакет попадает из внутренней сети на внешний IP-адрес роутера, он считается пришедшим извне — а значит, работают правила брандмауэра, относящиеся к внешним соединениям. Если же пакет успешно проходит сквозь брандмауэр, то срабатывает nat, который становится посредником между двумя компьютерами, находящимися в внутри одной сети.
Внимание! Без функции nat loopback нельзя было бы узнать о настройках сетевой службы либо зайти на сервер. Для каждого домена необходимо было бы настраивать файл hosts вручную.
Типы nat
Существует несколько типов Network Address Translation. Рассмотрим каждый из них детально:
Важно! Зачастую порты нужно настраивать вручную.
Как изменить тип
Для того чтобы поменять тип NAT с одного на другой необходимо зайти на свой маршрутизатор, введя в поисковой строчке браузера комбинацию 192.168.1.1 либо 192.168.0.1., и ввести свой логин и пароль. Затем посмотреть свой IP адрес и настройки сети своего устройства. После чего необходимо обратиться к провайдеру интернет-подключения, для того чтобы он перенастроил ваш роутер на нужный вам тип. Для этого ему необходимо будет сообщить все данные.
Задачи [ править ]
1. NAT решает проблему ограниченного диапазона IP-адресов, она существенна до тех пор, пока не произойдёт окончательный переход на IPv6.
2. Позволяет ограничить общение снаружи ко внутренним хостам, при этом возможность общаться изнутри наружу остаётся.
3. Даёт возможность скрыть внутренние сервисы внутренних хостов/серверов. Можно подменить внутренний порт официально зарегистрированной службы (например, 80-й порт TCP (HTTP-сервер) на внешний 54055-й). Таким образом, снаружи можно будет попасть на сайт по адресу вида http://example.org:54055, но на внутреннем сервере, находящемся за NAT, работа HTTP-сервера будет происходить на обычном 80-м порту, то есть 80-й порт сервера не будет доступным из Интернета для прямого входящего соединения.
Принцип работы [ править ]
Компьютер может быть подключен к Интернету напрямую (белый IP-адрес, обычно при подключении непосредственно к модему), либо через NAT — тогда компьютер имеет локальный IP-адрес, из Интернета недоступный (частный, серый). К серым адресам относятся адреса из следующих диапазонов:
Преобразование адреса методом NAT может производиться почти любым маршрутизирующим устройством — маршрутизатором, сервером доступа, межсетевым экраном. Принимая пакет от локального компьютера, роутер смотрит на IP-адрес назначения. Если это локальный адрес, то пакет пересылается другому локальному компьютеру. Если нет, то пакет надо переслать наружу в интернет. Но ведь обратным адресом в пакете указан локальный адрес компьютера, который из интернета будет недоступен. Поэтому роутер «на лету» транслирует (подменяет) обратный IP-адрес пакета на свой внешний (видимый из интернета) IP-адрес и меняет номер порта (чтобы различать ответные пакеты, адресованные разным локальным компьютерам). Комбинацию, нужную для обратной подстановки, роутер сохраняет у себя во временной таблице. Через некоторое время после того, как клиент и сервер закончат обмениваться пакетами, роутер сотрет у себя в таблице запись о n-ом порте за сроком давности.
Пример [ править ]
Типы NAT [ править ]
Статический [ править ]
Один внутренний адрес преобразуется в один внешний, все запросы, приходящие на внешний адрес будут транслироваться на внутренний, как будто хост и является обладателем белого IP-адреса. Такой подход бывает полезным, когда внутри частной сети есть сервер, к которому необходим полный доступ извне. Минус подхода в том, что он никак не помогает сохранить белые адреса.
Динамический [ править ]
Есть пул белых адресов, например, провайдер выделил сеть 198.51.100.0/28 с 16-ю адресами. Два из них (первый и последний) — адрес сети и широковещательный, ещё два адреса назначаются на оборудование для обеспечения маршрутизации. Двенадцать оставшихся адресов можно использовать для NAT и выпускать через них своих пользователей.
Ситуация похожа на статический NAT — один приватный адрес транслируется на один внешний, — но теперь внешний не чётко зафиксирован, а будет выбираться динамически из заданного диапазона. Проблема подхода такая же, как и в случае со статическим NAT — не решается проблема ограниченности белых адресов.
Many-to-One [ править ]
Следующий тип имеет несколько названий: NAT Overload, Port Address Translation (PAT), IP Masquerading, Many-to-One NAT. Суть этого типа в том, что через один внешний адрес выходит наружу много приватных. Этот подход, в отличие от предыдущих, позволяет решить проблему с нехваткой внешних адресов.
Проблемы NAT [ править ]
Hole punching [ править ]
Hole punching — метод для прямого соединения двух хостов, которые находятся за NAT-ами. Для инициации соединения требуется третья сторона – сервер, который виден обоим компьютерам. Обычно используются публичные STUN-серверы.
STUN (сокр. от англ. Session Traversal Utilities for NAT, Утилиты прохождения сессий для NAT) — это сетевой протокол, который позволяет клиенту, находящемуся за сервером трансляции адресов (или за несколькими такими серверами), определить свой внешний IP-адрес, способ трансляции адреса и порта во внешней сети, связанный с определённым внутренним номером порта. Эта информация используется для установления соединения UDP между двумя хостами в случае, если они оба находятся за маршрутизатором NAT.
UDP hole punching [ править ]
Алгоритм установления UDP сессии между 2 хостами находящимися за NAT [ править ]
Если [math]A[/math] и [math]B[/math] находятся за одним и тем же NAT-ом, то они соединятся через приватные адреса, иначе через публичные. На картинке показан пример, когда [math]A[/math] и [math]B[/math] находятся за разными NAT-ами.
TCP hole punching [ править ]
Алгоритм установления TCP соединения между 2 хостами находящимися за 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
В заключение
Надеюсь вам стало чуточку понятнее, что это такое. Старался написать все, как можно понятнее без заумных терминов и других определений. Надеюсь вам понравилось и до встречи на страницах данного портала.