Форум Приднестровья, форум ПМР

Форум Приднестровья, форум ПМР (http://forum-pmr.net/index.php)
-   Компьютерные сети (http://forum-pmr.net/forumdisplay.php?f=45)
-   -   Каким образом работает NAT? (http://forum-pmr.net/showthread.php?t=1254)

PMR 16.09.2008 16:46

Каким образом работает NAT?
 
Система NAT преобразует IP-адреса и номера портов ТСР/UDP, содержащиеся в заголовках пакетов, передаваемых в и из Интернета. Если одновременно обмен данными с Интернетом осуществляет более чем одна рабочая станция, NAT случайным образом выбирает отдельный порт для обслуживания каждого из запросов, даже если все рабочие станции осуществляют обмен с одним и тем же внешним адресом и портом. Маршрутизатор NAT хранит таблицу соответствий между внешними портами сервера NAT и внутренними сетевыми узлами. Трансляция адресов выполняется с использованием этой таблицы. IP-адрес отправителя, содержащийся в заголовке пакета, передаваемого в Интернет, заменяется IP-адресом сервера NAT. Номер порта TCP/UDP, использованный отправителем, заменяется номером порта, выбранного сервером NAT для передачи пакета в Интернет. При передаче пакета в Интернет IP-адрес и номер порта получателя остаются без изменений. Когда сервер NAT получает из Интернета пакет, он анализирует номер порта, через который был принят этот пакет, и, исходя из этого, определяет, какому именно узлу внутренней сети фактически был адресован этот пакет. После этого IP-адрес и номер порта сервера NAT, содержащиеся в заголовке пакета, принятого из Интернета, заменяются IP-адресом и номером порта узла внутренней сети, которому фактически был адресован этот пакет. При этом IP-адрес и номер порта отправителя остаются без изменений.
Сама по себе служба NAT осуществляет преобразование адресов только в заголовке IP-пакета. Если адрес содержится в разделе данных пакета, для обработки такого пакета требуется специальный процесс под названием редактор NAT (NAT editor). Например, протокол FTP, используемый для передачи файлов через Интернет, сохраняет информацию об IP-адресе в заголовке FTP, который хранится в теле пакета IP. Сама по себе служба NAT не может модифицировать тело пакета IP, однако трансляцию такого адреса может выполнить редактор NAT, При использовании базовой службы NAT совместно с протоколом PPTP также могут возникнуть проблемы, так как PPTP использует нестандартный заголовок IP. В состав Windows 2000 входят редакторы NAT для следующих протоколов: FTP, ICMP, PPTP и NetBIOS через ТСР/IP. На стороне клиента также может быть загружено программное обеспечение прокси для следующих технологий: H323, Direct Play, регистрация ILS, основанная на LDAP, а также RPC.
Помимо преобразования адресов система Windows 2000 NAT может осуществлять разрешение имен и назначение IP-адресов. Как правило, эти возможности применяются только в случае, если NAT используется в рамках ICS. Запросы на разрешение имен, принимаемые сервером NAT от внутренних компьютеров, переадресуются серверам DNS, расположенным в Интернете. Информация, возвращаемая системой DNS Интернета, передается внутренним клиентам. Если во внутренней сети нет сервера DHCP, выделение IP-адресов для внутренних рабочих станций может выполнить сервер NAT.

Киевлянин 16.09.2008 22:27

Цитата:

PMR писал (а) (Сообщение 6455)
Система NAT преобразует IP-адреса и номера портов ТСР/UDP, содержащиеся в заголовках пакетов, передаваемых в и из Интернета. Если одновременно обмен данными с Интернетом осуществляет более чем одна рабочая станция, NAT случайным образом выбирает отдельный порт для обслуживания каждого из запросов, даже если все рабочие станции осуществляют обмен с одним и тем же внешним адресом и портом. Маршрутизатор NAT хранит таблицу соответствий между внешними портами сервера NAT и внутренними сетевыми узлами. Трансляция адресов выполняется с использованием этой таблицы. IP-адрес отправителя, содержащийся в заголовке пакета, передаваемого в Интернет, заменяется IP-адресом сервера NAT. Номер порта TCP/UDP, использованный отправителем, заменяется номером порта, выбранного сервером NAT для передачи пакета в Интернет. При передаче пакета в Интернет IP-адрес и номер порта получателя остаются без изменений. Когда сервер NAT получает из Интернета пакет, он анализирует номер порта, через который был принят этот пакет, и, исходя из этого, определяет, какому именно узлу внутренней сети фактически был адресован этот пакет. После этого IP-адрес и номер порта сервера NAT, содержащиеся в заголовке пакета, принятого из Интернета, заменяются IP-адресом и номером порта узла внутренней сети, которому фактически был адресован этот пакет. При этом IP-адрес и номер порта отправителя остаются без изменений.
Сама по себе служба NAT осуществляет преобразование адресов только в заголовке IP-пакета. Если адрес содержится в разделе данных пакета, для обработки такого пакета требуется специальный процесс под названием редактор NAT (NAT editor). Например, протокол FTP, используемый для передачи файлов через Интернет, сохраняет информацию об IP-адресе в заголовке FTP, который хранится в теле пакета IP. Сама по себе служба NAT не может модифицировать тело пакета IP, однако трансляцию такого адреса может выполнить редактор NAT, При использовании базовой службы NAT совместно с протоколом PPTP также могут возникнуть проблемы, так как PPTP использует нестандартный заголовок IP. В состав Windows 2000 входят редакторы NAT для следующих протоколов: FTP, ICMP, PPTP и NetBIOS через ТСР/IP. На стороне клиента также может быть загружено программное обеспечение прокси для следующих технологий: H323, Direct Play, регистрация ILS, основанная на LDAP, а также RPC.
Помимо преобразования адресов система Windows 2000 NAT может осуществлять разрешение имен и назначение IP-адресов. Как правило, эти возможности применяются только в случае, если NAT используется в рамках ICS. Запросы на разрешение имен, принимаемые сервером NAT от внутренних компьютеров, переадресуются серверам DNS, расположенным в Интернете. Информация, возвращаемая системой DNS Интернета, передается внутренним клиентам. Если во внутренней сети нет сервера DHCP, выделение IP-адресов для внутренних рабочих станций может выполнить сервер NAT.

Преимущества

NAT выполняет две важных функции.

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

Недостатки

1. Не все протоколы могут «преодолеть» NAT. Некоторые не в состоянии работать, если на пути между взаимодействующими хостами есть трансляция адресов. Некоторые межсетевые экраны, осуществляющие трансляцию IP-адресов, могут исправить этот недостаток, соответствующим образом заменяя IP-адреса не только в заголовках IP, но и на более высоких уровнях (
2. Из-за трансляции адресов «много в один» появляются дополнительные сложности с идентификацией пользователей и необходимость хранить полные логи трансляций.
3. DoS со стороны узла, осуществляющего NAT - если NAT используется для подключения многих пользователей к одному и тому же сервису, это может вызвать иллюзию DoS атаки на сервис (множество успешных и неуспешных попыток). Например, избыточное количество пользователей ICQ за NAT'ом приводит к проблеме подключения некоторых пользователей из-за превышения допустимой скорости коннектов к серверу. Частичным решением проблемы является использование пула адресов (группы адресов), для которых осуществляется трансляция.

Угрюмый БСДяшник 17.09.2008 11:49

Прочитайте о проблемах с NAT
http://www.eserv.ru/NAT

Мистер-Х 17.09.2008 15:31

Оберг, Р. Дж., Торстейнсон, П.- Архитектура .NET

Эта книга представляет собой практическое руководство для платформы .NET. Прочитав книгу, вы научитесь использовать Visual Studio .NET с
целью создания самых сложных приложений для новой платформы .NET, которую разработала Microsoft.

Книга предназначена для подготовленных программистов-практиков.

http://rapidshare.com/files/2570301/VIS_C.rar.html

Угрюмый БСДяшник 18.09.2008 08:03

Мистер-Х, технология .NET к этой теме не клеется никаким боком!
Предлагаю обсудить PAT, почему именно его использует iptables в линуксе? Почему зародился термин маскарадинг? Когда удобнее использовать NAT, а когда PAT? Типы NAT?

P.S.: Только отвечайте Господа осмысленно, если вы понимаете о чём идёт реч! Иначе получиться постная ****я в виде набора дешёвых реплик.


Текущее время: 19:05. Часовой пояс GMT +2.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot