Учебно-методические материалы для студентов кафедры АСОИУ

Сервис WINS

Windows Internet Name Service (WINS) — это реализация Microsoft NetBIOS Name Service (NBNS), службы имен NetBIOS компьютера. В первом приближении, WINS напоминает DNS: оба сервиса выполняют преобразование символьных имен в сетевые адреса. Как и DNS, WINS — централизованный сервис: WINS-сервер, который управляет кодированной базой данных, выполняет межсерверную репликацию, обслуживает запросы и разрешает конфликты имен, и TCP/IP-клиент, который выполняет запросы на регистрацию клиента и обновление имен.

Роль WINS в сети

Служба WINS была разработана специально для использования с протоколами TCP/IP (поддержка NetBIOS поверх TCP/IP, NetBT). WINS требуется в любых сетях на основе Windows, где требуется доступ к узлам, имеющим имена NetBIOS. Без WINS в такой сети доступ к ресурсам общего доступа (папкам, файлам и принтерам) будет невозможен (если не используется файл lmhosts).

На рис. 1 показана схема типового использования WINS компьютерами, использующими имена NetBIOS.

Рис. 1. Общий принцип работы службы WINS

Компоненты WINS

КомпонентОписание
WINS-сервер Компьютер, который обеспечивает регистрацию и разрешение имен службы WINS и выполняет репликацию базы данных WINS на другие серверы
WINS-клиент Любой узел сети с поддержкой WINS, который взаимодействует с сервером WINS, чтобы зарегистрировать, обновить, или освободить имя NetBIOS или получить сетевой адрес другого узла сети по его NetBIOS-имени.
WINS-прокси WINS-клиент, который сконфигурирован для взаимодействия с WINS-сервером от имени других, не WINS-совместимых компьютеров. Это позволяет таким компьютерам ограниченно участвовать сети под управлением WINS.
База данных WINS Динамически обновляемый список имен NetBIOS и соответствующих им IP-адресов, включая динамические IP-адреса. При наличии несколько серверов WINS, они обмениваются обновленными данными через репликацию.

Серверы WINS

Сервер WINS обрабатывает запросы на регистрацию имен от клиентов WINS. Уникальное имя узла и его ip-адрес будут зарегистрированы в БД WINS, если представленное имя не находится в активном использовании. Сервер также отвечает на клиентские запросы по распознаванию имен NetBIOS, возвращая IP-адрес, соответствующий запрашиваемому имени (если оно указано в базе данных WINS). Сервер WINS может обслуживать как локальных клиентов (из своей подсети), так и удаленных (через маршрутизатор).

В сети может быть несколько WINS-серверов, хранящих реплики базы данных WINS. Клиенты обращаются к первичному серверу WINS, который указан в настройках. Если первичный сервер не способен обработать запрос, клиент повторяет его, обращаясь к вторичным серверам WINS. WINS-сервер, который регистрирует клиента в свою базу данных, становится владельцем записи WINS. Обновление базы распространяется на прочие сервера путем репликации.

Клиенты WINS

WINS-клиенты — это сетевые компьютеры, которые настроены на использование службы WINS и способные взаимодействовать непосредственно с WINS-сервером. При подключении к сети WINS-клиент пытается зарегистрировать свое NetBIOS-имя (см. как изменить имя компьютера) и сетевой адрес на сервере. IP-адреса могут быть как статическими, так и динамическими, полученными по DHCP. Отметим, что, как и в случае с DNS, WINS-клиент может иметь несколько NetBIOS-имен, все они должны быть зарегистрированы в БД WINS. После этого он может выполнять запросы к серверу WINS для разрешения NetBIOS-имен узлов по мере необходимости.

WINS-клиенты взаимодействуют с серверами WINS, чтобы:

Наибольшее число клиентских запросов связано с разрешением имен. Имена клиентов связаны со статическими или динамическими IP-адресами. Клиенты, использующие статические IP-адреса, настраиваются вручную с набором определенных серверов WINS. Клиенты, которые используют динамические IP-адреса, могут получать имена WINS-серверов от сервера DHCP. Первый сервер в списке WINS-серверов является первичным, последующие — вторичными. У разных клиентов могут быть указаны различные адреса первичных WINS-серверов. Это позволяет снизить нагрузку на сервер при интенсивном трафике в сложной сети.

WINS в гетерогенной сети

Частичную поддержку WINS для Linux и UNIX клиентов можно получить при установленном сервисе Samba, реализующем функции протоколов NetBIOS и SMB.

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

WINS-прокси

WINS-прокси — это специальным образом настроенный клиент WINS, который может выполнять ограниченное количество услуг NetBIOS, таких как регистрация, освобождение и разрешение имен не-WINS клиентов, подключенных к TCP/IP-сети.

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

База данных WINS

База данных WINS — это динамически обновляемый список NetBIOS-имен и IP-адресов, котрый находится на сервере WINS. Содержимое базы данных WINS изменяются с течением времени, по мере того, как компьютеры подключаются или отключаются от сети.

Размер базы данных WINS зависит от количества клиентов WINS в сети и количества используемых NetBIOS-имен. Все копии базы на всех серверах WINS в сети примерно равны по размеру. Все базы данных имеют одинаковое количество записей NetBIOS имя, за исключением добавленных до момента репликации. Использование нескольких серверов WINS в среде NetBIOS обеспечивает избыточность и балансировку нагрузки при интенсивном трафике.

Файл lmhosts

Файл lmhosts используется в качестве локальной базы данных WINS и находится в папке %SystemRoot%\System32\Drivers\Etc. Это обычный текстовый файл, который может быть отредактирован пользователем с правами администратора. Структура файла очень проста (см. листинг 1 или файл lmhosts.sam в той же папке), но есть ряд правил, которые нужно соблюдать:

Листинг 1. Пример файла lmhosts

#Это пример файла lmhosts
192.168.1.1	fserver #PRE
192.168.1.2	comp1
192.168.1.3	comp2
192.168.1.4	comp3
192.168.1.254	cmail #PRE

Использование lmhosts весьма полезно в рабочих группах, при отсутствии сервера WINS. Администратор сети может сделать необходимые записи в этом файле и распространить копии на все узлы. Кэширование NetBIOS-имен позволяет сильно ускорить взаимодействие между компьютерами рабочей группы. Но стоит помнить, что все изменения в этом файле выполняются вручную.

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

Сервис WINS обеспечивает ряд преимуществ по сравнению с другими методами разрешения имен NetBIOS:

CC-BY-CA Анатольев А.Г., 05.09.2013