Опубликован: 28.09.2007 | Уровень: специалист | Доступ: платный
Лекция 6:

Протокол динамического конфигурирования ЭВМ DHCP

6.1. Трансляция сетевых адресов (NAT)

Многие частные и корпоративные сети начинали формироваться изолировано, и IP-адреса сетевым объектам администраторами присваивались произвольно. Когда возникала проблема подключения сети к Интернет, число ЭВМ оказывалось значительным и надо было их все реконфигурировать, заменяя все IP-адреса. Для решения подобных проблем был разработан протокол NAT (Network Address Translation; см. RFC-2663, 2766. 3489, 3519 и 4008).

NAT позволяет группе оконечных станций использовать "нелегальные" IP-адреса и в то же время иметь полноценный доступ к Интернет.

ЭВМ с нелегальным адресом устанавливает соединение с маршрутизатором­шлюзом, имеющим нормальный IP-адрес. В начале сеанса такой маршрутизатор ставит в соответствие внутренней ЭВМ легальный IP-адрес. Этот адрес используется для замены адреса отправителя во всех дейтограммах, отсылаемых ЭВМ. С точки зрения внешнего мира, этот адрес является IP-адресом данной внутренней ЭВМ. Маршрутизаторшлюз, получая пакет от внешнего сетевого объекта, адресованного оговоренной машине, меняет действительный IP-адрес на внутренний — нелегальный.

Кроме того, наряду с протоколом DHCP, протокол NAT позволяет более экономно использовать адресное пространство IP.

Существует разные алгоритмы реализации NAT: статический и динамический. В последнем случае реальный IP адрес выделяется для машины лишь на время ее работы в сети.

Одной из версий NAT является PAT (Port Address Translation) или NATP (Network Address Port Translation). Этот метод преобразования адресов может использоваться для трансляции адресов коммутируемых соединений РРР в небольших сетях (SOHO). PAT позволяет использовать один IP-адрес в нескольких сеансах L4. Каждому соединению со стороны клиента ставится в соответствие комбинация IP-адреса и порта. Так, можно для одного и того же IP-адреса осуществить десятки и даже сотни соединений, распределив их между соответствующим числом клиентов локальной сети. Сервер NAT поддерживает таблицу, где каждому соединению с Интернет ставится в соответствие IP-адрес и номер порта. Это делается часто в оборудовании для асинхронных каналов РРР, где адреса присваиваются случайным образом при каждом подключении.

В протоколе РАТ один общий IP-адрес транслируется с собственным номером порта UDP/TCP для группы ЭВМ. При настройке NAT маршрутизатор конфигурируется по выходным и входным интерфейсам. Выходной интерфейс подключается к внешней сети Интернет через легальный IP-адрес. Внутренний интерфейс подключается к локальной сети, которая пользуется нелегальными адресами. Ниже в таблице приведен пример трансляции адресов для случая обращения к внешнему удаленному почтовому серверу с IP=193.125.31.3. Адреса 10.10.10.1 и 10.10.10.2 являются внутренними, адрес 194.85.31.1 – IP внешнего порта сервера NAT. Из этого примера видно, что одному легальному глобальному адресу 194.85.31.1 может соответствовать практически любое число внутренних адресов (таблица 6.5.1).

Таблица 6.5.1.
протокол внутренний локальный IP-адрес:порт внутренний глобальный IP-адрес:порт внешний глобальный IP-адрес:порт
ТСР 10.10.10.1:2500 194.85.31.1:2500 193.125.31.3:25
ТСР 10.10.10.2:3010 194.85.31.1:3010 193.125.31.3:25

Существует, кроме того, векторизация адресов, которая напоминает трансляцию сетевых адресов. Рассмотрим в качестве примера некоторый мощный WEBсервер с большим потоком клиентских запросов в единицу времени. Эти запросы могут обрабатываться большим числом процессоров. Но если поток запросов возрастет слишком сильно, задержка отклика неизбежно начнет быстро расти. Возможным решением проблемы может быть применение нескольких серверов с разными IP-адресами и именами. Но это крайне неудобно пользователям, так как нужно помнить несколько имен и для получения нужной информации обходить несколько серверов.

Векторизация адреса позволяет распределить нагрузку между серверами, причем так, что для пользователя такая система выглядит как один сервер. Векторизация адресов транслирует внешний IP-адрес в несколько адресов локальной сети. Для практической реализации алгоритма векторизации и выбора определенного (наименее загруженного) сервера используются проксисерверы.

6.2. NetBIOS

Протокол NetBIOS был создан для работы в локальных сетях. Система NetBIOS предназначена для персональных ЭВМ типа IBM/PC в качестве интерфейса, не зависящего от фирмы­-производителя. NetBIOS применяет в качестве транспортных протоколов TCP и UDP. Описание NetBIOS содержится в документе IBM 6322916 "Technical Reference PC Network" (см. также RFC-10012, 1088 и STD48).

Пакет NETBIOS (см. также ftp://ietf.org/internetdrafts/draftietfpppextnetbiosfcp08.txt) создан для использования группой ЭВМ, поддерживает как режим сессий (работа через соединение), так и режим дейтограмм (без установления соединения). 16-и символьные имена объектов в Netbios распределяются динамически. Netbios имеет собственную DNS, которая может взаимодействовать с интернетовской. Имя объекта при работе с NETBIOS не может начинаться с символа *.

Приложения могут через Netbios найти нужные им ресурсы, установить связь и послать или получить информацию. NETBIOS использует для службы имен порт 137, для службы дейтограмм — порт 138, а для сессий — порт 139.

Любая сессия начинается с Netbios-запроса, задания IP-адреса и определения TCP-порта удаленного объекта, далее следует обмен NETBIOS-сообщениями, после чего сессия закрывается. Сессия осуществляет обмен информацией между двумя netbiosприложениями. Длина сообщения лежит в пределах от 0 до 131071 байт. Допустимо одновременное осуществление нескольких сессий между двумя объектами.

При организации IP-транспорта через NETBIOS IP-дейтограмма вкладывается в NETBIOS-пакет. Информационный обмен происходит в этом случае без установления соединения между объектами. Имена Netbios должны содержать в себе IP-адреса. Так, часть NETBIOS-адреса может иметь вид, ip.**.**.**.**, где IP указывает на тип операции (IP через Netbios), а **.**.**.** — IP-адрес. Система Netbios имеет собственную систему команд ( call, listen, hang up, send, receive, session status, reset, cancel, adapter status, unlink, загрузка удаленной программы ) и примитивов для работы с дейтограммами (послать дейтограмму, послать дейтограмму широковещательно, получить дейтограмму, получить широковещательную дейтограмму). Все оконечные узлы Netbios делятся на три типа:

  • широковещательные ("b") узлы;
  • узлы точка­точка ("p");
  • узлы смешанного типа ("m").

IP-адрес может ассоциироваться с одним из указанных типов. B узлы устанавливают связь со своим партнером посредством широковещательных запросов. P и Mузлы для этой цели используют Netbios сервер имен (NBNS) и сервер распределения дейтограмм (NBDD).

Разработана (1985 г) улучшенная версия протокола NETBIOS — NetBeui (NetBios extended user interface). Этот новый протокол используется операционными системами LAN manager, LAN server, Windows NT и Windows XP, а по своей функции занимает нишу протоколов TCP/IP, охватывая связной, сетевой и транспортный уровни. Здесь стандартизован формат пакетов NetBios, добавлены некоторые новые функции. Netbeui базируется на протоколе OSI LLC2, вводит стандарт на формат кадра Netbios (NDF) и использует NetBios в качестве интерфейса высокого уровня. Протокол обладает высоким быстродействием и служит для объединения небольших локальных сетей (20-200 ЭВМ) друг с другом или с главной ЭВМ. Этот протокол соответствует связному, сетевому и транспортному уровню модели OSI. В новых версиях NetBuei (3.0 и выше) снято ограничение на число одновременных сессий (254). Среди ограничений NetBuei следует назвать отсутствие внутренней маршрутизации и серьезные сложности при работе в региональных сетях. По этой причине Netbuei рекомендуется для локальных сетей (здесь они предпочтительнее других протоколов), а для внешних связей использовать, например, TCP/IP.

Для подключения терминальной системы к локальной сети или к другой терминальной системе разработан протокол NBFCP (NetBios frames control protocol, код поля протокола = 803F ), который, в свою очередь, базируется на протоколе PPP. Формат кадра протокола NBFCP показан на рис. 6.6.

Формат кадра NBFCP

Рис. 6.6. Формат кадра NBFCP

Поле тип содержит код 2, поле длина определяет размер заголовка, если длина=8, имя партнера отсутствует. Поле класс партнера идентифицирует тип системы отправителя (см. таблицу 6.6). Таблица возможных значений поля класс партнера приведена ниже. Поле имя партнера может иметь до 32 октетов.

Таблица 6.6. Коды класса партнера
код класса описание
1 Зарезервировано
2 Сервер внешнего порта PPP NetBIOS
3 Зарезервировано
4 Сервер локального доступа PPP NetBIOS
5 Зарезервировано
6 Мост PPP NetBIOS
7 Зарезервировано
8 Терминальная система PPP
Наталья Шульга
Наталья Шульга

Курс "информационная безопасность" .

Можно ли на него записаться на ПЕРЕПОДГОТОВКУ по данному курсу? Выдается ли диплом в бумажном варианте и высылается ли он по почте?

Мария Архипова
Мария Архипова
Александр Гордеев
Александр Гордеев
Казахстан, Алматы, ТУРАН
Александр Даниленко
Александр Даниленко
Россия, Москва, 797, 1993