Работа в сочетании с протоколом UDP



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

 

Примером работы NAT с UDP служит программа Skype. Для работы этой программы важна высокая скорость и одноранговая сеть без промежуточных узлов, которые могут тормозить ее работу (неприемлемы понятия клиента и сервера, используемые в TCP).

 

Устройство, на котором работает NAT, использует временное кэширование соответствий для UDP аналогично соответствиям в таблице для протокола TCP. Для UDP вводится виртуальное понятие установки соединений: если первый пакет идет из локальной сети в глобальную, появляется запись в таблице.

 

192.168.1.1

200.200.10.10

  UDP
2001 1050

 

Пусть идет пакет 192.168.1.1 ->200.200.10.10, порт отправителя – 2001, порт получателя – 1050. Пакет передается на MAC адрес узла 192.168.1.10 (узел-концентратор с NAT).

 

Номер порта IP-адресотправителя Порт отправителя На что подменять
30002 192.168.1.1 2001 89.110.5.5

 

 У себя в таблице концентратор фиксирует, что для UDP было выполнено обращение с порта 2001, IP – 192.168.1.1, концентратор выделяет и указывает порт для этого соединения – пусть это будет 30002 (30001 уже занят) и указывает свой внешний адрес – 89.110.5.5. Далее по этой записи в таблице выполняется подмена: 192.168.1.1 –>89.110.5.5, адрес и порт получателя не изменяются, протокол – UDP, порт отправителя 2001 ->30002.

 

89.110.5.5

200.200.10.10

  UDP
30002 1050

 

Обратный пакет идет с 200.200.10.10, порт 1050 ->порт 30002 адреса 89.110.5.5. При этом выполняется трансляция (выясняется номер порта получателя, указанный в пакете - 30002), узел-концентратор получает из таблицы адрес и порт узла (192.168.1.1 и 2001 соответственно), который пользуется таким внешним портом, подменяет значения получателя в пакете и отправляет ему пакет по MAC-адресу.

 

200.200.10.10

89.110.5.5

  UDP
1050 30002

 

200.200.10.10

192.168.1.1

  UDP
1050 2001

 

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

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

Для работы динамического NAT с UDPвводится понятие логического соединения. Такое соединение разрывается при отсутствии активности в течение некоторого времени.


 

Работа связки NAT и DHCP

К локальной сети можно подключать новые узлы, не конфигурируя их, а используя протокол DHCP – в сочетании с NATэти технологии решают проблемы друг друга. Например, DHCP призван выдавать IP-адреса автоматически из некоторого пула адресов. Для локальной сети это всегда будут локальные адреса, имеющие префикс 192.168. Этопозволяетлюбомуустройству, подключившись к локальной сети, получить по протоколу DHCP адрес в этой сети и иметь возможность работать в локальной сети. А протокол NAT и установка в рамках DHCP, кроме IP-адреса, еще и стандартного шлюза обеспечивает возможность автоматически выходить в Интернет при подключении к локальной сети, если стандартный шлюз использует NAT.

Например, пользователь мобильного телефона может подключиться к беспроводной сети и тут же получить возможность выхода в Интернет, хотя, казалось бы, выход в Интернет сопряжен с обязательной выдачей глобального уникального IP адреса. Как это работает? В сети сконфигурирован DHCP, широковещательным запросом устройство узнает MAC-адрес DHCP-сервера и, обратившись к нему, получает локальный IP-адрес из пула адресов DHCP. DHCP также устанавливает стандартный шлюз, который одновременно является NAT-транслятором. При обращении к ресурсам Интернета произойдет перенаправление пакетов на маршрутизатор, подмена локальных IP-адреса и порта; такую же трансформацию пройдут пакеты ответа. Для всего этого пользователю не нужно вручную конфигурировать параметры сети, а достаточно просто подключиться к точке доступа.

 

Связку NATи DHCPможно встретить во многих домашних маршрутизаторах с функцией точки доступа Wi-Fi: если такой маршрутизатор имеет доступ к сети Интернет, все мобильные и стационарные устройства, подключаемые к нему, объединяются в локальную сеть с помощью DHCPи получают доступ к Интернету благодаря NAT.

Достоинства и недостатки

 

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


Сфера применения

Технология NATиспользуется для:

1) облегчения выдачи IP-адресов Интернета – чтобы работать в сети Интернет, не нужно выдавать каждому узлу глобальный IP-адрес и следить за тем, кому он выдан;

2) получения возможности централизованного администрирования – при использовании NAT известно, что все глобальные адреса для сети выданы одному узлу-концентратору.

 

Динамический NAT – это безопасно:злоумышленник не сможет подключиться к локальному компьютеру из внешней сети.Кроме того, динамическийNATдаетвозможность централизованного администрирования.

Сетевые экраны

Общиесведения

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

В ОС Windows сетевые экраны появились только в версии XP (свыходом ServicePack 1). В других операционных системах, в частности, Linux, сетевой экран был дополнительной частью системы. Сейчас сетевой экран входит в стандартную поставку любой операционной системы.

 

Принцип работы

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

 

Фильтрация пакетов – это анализ пакетов по некоторым критериям и принятие решения о том, пропускать пакеты дальше или нет.

 

– сетевые экраны бывают разных уровней, часто программа-экран объединяет в себе сетевые экраны нескольких уровней, которые работают вместе;

– уровни сетевых экранов соответствуют уровням семиуровневой сетевой модели ISO/OSI. Естественно, на физическом уровне сетевые экраны не работают, но уже для второго, канального уровня, они есть;

– у сетевых экранов выделяют два понятия – входящий (inbound) и исходящий (outbound) трафик.

 

Сетевой экрананализирует входящие или исходящиепакеты, поступающие с нижележащего или вышележащего уровня соответственно.

Правила фильтрации

 

           Работа сетевых экранов построена на использовании правил фильтрации. Правила бывают двух типов: разрешающие и запрещающие.

 

 

– и для разрешающих, и для запрещающих правил используются системы работающих вместе правил;

– выбирается приоритет – определяется, какие правила «выше»;

– для правил часто устанавливается порядок применения, т.к. они могут иметь пересечение по параметрам;

– правила, работающие на любом из уровней, оперируют теми понятиями адресации, которые существуют на этом уровне. Так, правила канального уровня оперируют MAC-адресами, правила сетевого уровня – IP-адресами, правила транспортного уровня – IP- адресами и номерами портов, а правила прикладного уровня – IP-адресами, номерами портов и именами программ.

 

Пример:может быть создано правило для фильтрации входящего UDP-трафика и правило для входящего UDP-трафика, идущего на порт 2048.

 

Очевидно, что второе правило является подмножеством первого. Однако часто между правилами могут возникать противоречия. В этом случае становится непонятным, какое из них должно работать первым, а какое – вторым. Управляя порядком, вы управляете приоритетом срабатывания правил.

 

Семантические сетевые экраны

 

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

 

Семантические сетевые экраны работают на эвристических методах, что влечет за собой ряд недостатков. В системах, основанных на правилах, распространенной является следующая проблема: в них существует понятие «обнаружения нарушения правил».

 

 

 

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


 


Дата добавления: 2018-08-06; просмотров: 261; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!