NAT
Материал из Википедии — свободной энциклопедии
Содержание |
[править] Стандарт NAT и причины его использования
NAT (от англ. Network Address Translation — «преобразование сетевых адресов») представляет собой стандарт IETF (Internet Engineering Task Force — рабочая группа разработки технологий интернета), с помощью которого несколько компьютеров или устройств частной сети (с частными адресами из таких диапазонов, как 10.x.x.x, 192.168.x.x, 172.x.x.x) могут совместно пользоваться одним адресом IPv4, обеспечивающим выход в глобальную сеть. Основная причина растущей популярности NAT связана со все более обостряющимся дефицитом адресов протокола IPv4 — текущего протокола интернета.
NAT применяется в шлюзовых устройствах, образующих границу между общедоступной средой интернета и частной локальной сетью. Когда IP-пакет из частной сети проходит через шлюз, NAT преобразует частный IP-адрес и номер порта в общий IP-адрес и номер порта; все это строго отслеживается с тем, чтобы преобразования адресов не влияли на ход отдельных сеансов. Средство общего доступа к подключению интернета в различных операционных системах, а также многие шлюзы интернета активно используют NAT, особенно для соединения с широкополосными сетями, например, через линию DSL или кабельные модемы. Масштабы применения NAT быстро растут — компьютеры все чаще объединяются в домашние или небольшие офисные сети, совместно использующие одно подключение к интернету. Также NAT может использоваться для сокрытия IP-адресов локальной сети.
Более технически точное определение:
NAT — это механизм в сетях, позволяющий преобразовывать IP-адреса транзитных пакетов. Механизм NAT определён в RFC 1631. Преобразование адресов методом NAT может производиться почти любым маршрутизирующим устройством — маршрутизатором, сервером доступа, межсетевым экраном. Суть механизма состоит в замене обратного (source) адреса при прохождении пакета в одну строну и обратной замене адреса назначения (destination) в ответном пакете. Наряду с адресами source/destination могут также заменяться номера портов source/destination.
Существует 3 базовых концепции трансляции адресов - статическая (Static Network Address Translation), динамическая (Dynamic Address Translation), Masquerading (NAPT, PAT).
[править] Возможные проблемы при использовании NAT
Если коротко — использование NAT может привести к «разрушению» многих видов сетевых взаимодействий, таких, например, как коллективные компьютерные игры, общение в реальном масштабе времени и другие службы однорангового уровня, получающие все более широкое распространение в домашних и небольших офисных сетях. Приложения указанного типа перестанут работать, если будут применять частные адреса в общедоступном интернете или одновременно обращаться к одному номеру порта. Приложение должно использовать общий адрес и в каждом сеансе — уникальный номер порта. Крупные организации могут позволить себе держать в штате опытных ИТ-специалистов, умеющих настраивать корпоративные приложения для работы с NAT, однако небольшие компании и тем более индивидуальные пользователи, как правило, не имеют такой возможности. Технология UPnP NAT Traversal (прохождение через NAT с использованием UPnP) позволяет автоматически разрешать многие проблемы, возникающие при взаимодействии NAT с приложениями, и потому является идеальным решением для предприятий малого бизнеса и индивидуальных пользователей. Подытожим недостатки и преимущества:
[править] Недостатки
- Не все протоколы могут «преодолеть» NAT. Некоторые (например, IPSec) не в состоянии работать, если на пути между взаимодействующими хостами есть трансляция адресов. Некоторые межсетевые экраны, осуществляющие трансляцию IP-адресов, могут исправить этот недостаток, соответствующим образом заменяя IP-адреса не только в заголовках IP, но и на более высоких уровнях (например, в командах протоколов FTP или H.323).
- Из-за трансляции адресов «много в один» появляются дополнительные сложности с идентификацией пользователей. Необходимо хранить полные логи трансляций.
[править] Преимущества
NAT выполняет две важных функции.
- Позволяет сэкономить IP-адреса, транслировав несколько внутренних IP-адресов в один внешний публичный IP-адрес (или в несколько, но меньше, чем внутренних).
- Позволяет предотвратить или ограничить обращение снаружи ко внутренним хостам, оставляя возможность обращения изнутри наружу. При инициации соединения изнутри сети создаётся трансляция. Ответные пакеты, поступающие снаружи, соответствуют созданной трансляции и поэтому пропускаются. Если для пакетов, поступающих снаружи, соответствующей трансляции не существует (а она может быть созданной при инициации соединения или статической), они не пропускаются.
[править] Пример
Трансляция локальной сети c диапазоном адресов 172.17.14.0/24 в глобальную сеть будет осуществлятся через один внешний ip адрес (адрес маршрутизатора выполняющего трансляцию).
[править] См. также
- JSC New Age Technologies [1]
- Прокси-сервер
- Port Address Translation (PAT)