Zeroconf

Zeroconf или Zero Configuration Networking — набор технологий, которые автоматически создают IP-сеть без конфигурации или специальных серверов.

Также известен как Automatic Private IP Addressing (APIPA), позволяя не-обученным пользователям соединять компьютеры, сетевые принтеры, и другие устройства вместе и получать работающую сеть. Без Zeroconf или чего-нибудь подобного, пользователь должен либо установить специальные сервисы, например DHCP и DNS, или настраивать все вручную.

Zeroconf был предложен работником фирмы Apple Computer, когда компания переходила с AppleTalk на IP.

Содержание

Решенные проблемы

Zeroconf решает три проблемы:

  • Выбор сетевого адреса для устройства
  • Нахождение компьютеров по имени
  • Обнаружение сервисов, например принтеров

Выбираемый адрес

Как IPv4, так и IPv6 описывают способы автоматического выбора IP адреса. Согласно RFC 3927, IPv4 использует адреса 169.254.* (link-local).

Microsoft ссылается на это как Automatic Private IP Addressing (APIPA) или «Internet Protocol Automatic Configuration» (IPAC).

Поиск по именам

Существует два способа разрешения имен. Apple Computer использует Multicast DNS (mDNS), а Microsoft — Link-local Multicast Name Resolution (LLMNR).

Эти протоколы имеют мало отличий. mDNS выбирает имя в пространстве «.local» и объявляет его на некоторый мультикаст адрес. Это приводит к специальной семантике для пространства имен .local, что считается проблемой для некоторых членов IETF [1] [2]. Текущий черновик LLMNR позволяет устройству выбрать любое доменное имя, что рассматривается как недостаток в безопасности некоторыми членами IETF [3]. mDNS совместим с DNS-SD как описано ниже, а LLMNR не совместим. Детальные различия обсуждаются здесь.

Поиск сервисов

Протокол Apple

Облегченный протокол DNS Service Discovery (DNS-SD), используется в продукции Apple, многих сетевых принтерах и значительном количестве других продуктов и приложений под различные ОС. Он считается более простым и легким в реализации, чем SSDP, поскольку он использует DNS, а не HTTP. Используются записи SRV (RFC 2782), TXT, и PTR для описания Service Instance Names, которые содержат подробности о доступных сервисах, таких как тип, доменное имя и опциональные параметры настройки. Существует реестр типов сервисов [4], публикуемый DNS-SD.org.

Протокол UPnP

Simple Service Discovery Protocol (SSDP) — это протокол Universal plug-and-play, используемый в Windows XP и нескольких типах сетевого оборудования. Несмотря на название, он считается сложным и требует больших усилий для реализации, чем DNS-SD. SSDP использует HTTP-уведомления, которые содержат URI типа сервиса и Unique Service Name (USN).

Стандарты IETF

Service Location Protocol (SLP) — единственный протокол для обнаружения сервисов, получивший статус RFC, обычно игнорируется крупными производителями, кроме Novell. SLP описан в RFC 2608.

Стандартизация

RFC 3927 — стандарт для выбора IP адресов сетевыми устройствами, был опубликован в марте 2005 рабочей группой Zeroconf IETF working group, котрая включала работников Apple, Sun и Microsoft.


Реализации

Apple Bonjour

Наиболее широко применяемое решение Zeroconf — Bonjour (бывший Rendezvous) от Apple Computer, который не следует SLP, а использует комбинацию стандартов IETF. Bonjour использует адресацию link-local, mDNS, и DNS-SD. Apple перешла с SLP на mDNS и DNS-SD с выходом Mac OS 10.2.

Avahi

Avahi — реализация Zeroconf для дистрибутивов Linux и BSD.

IPv4 Link-Local адреса

Доступно несколько реализаций:

  • Windows и Mac OS поддерживают их с 1998. Apple выпустил реализацию с открытым кодом в пакете bootp для ОС Darwin.
  • zcip (Zero-Conf IP)
  • BusyBox [5] в текущих версиях включает реализацию zeroconf.
  • zeroconf, пакет на основе Simple IPv4LL, более простой реализации от Arthur van Hoff.

Вышеперечисленные реализации — отдельные демоны. Другой подход заключается в модификации существующих DHCP клиентов.


Мультикаст DNS (mDNS) и DNS Service Discovery (DNS-SD)

Мультикаст DNS позволяет использовать привычные API и формат пакетов DNS для работы в малых сетях без обычного DNS сервера. mDNS и DNS-SD часто реализуются вместе. Наиболее популярная комбинация — это mDNSResponder от Apple, который имеет интерфейсы к Си и Java и доступен для BSD, Mac OS X, Linux, и других POSIX-совместимых ОС, а также для Windows. [6] [7]

См. также

  • Wireless Zero Configuration

Ссылки на реализации

  • Avahi, a free-software (LGPL) implementation of mDNS/DNS-SD for Linux, NetBSD, FreeBSD and Darwin/MacOSX
  • Bonjour, an implementation of DNS-SD by Apple Computer
  • JmDNS in Java
  • Liaison
  • mdnsd, embeddable Multicast DNS Daemon without DNS-SD
  • pyZeroConf, Python service discovery
  • tmdns, tiny multicast DNS, from the same project as ZCIP
  • Multicast DNS

Ссылки

Книги

Видео

 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home