Динамическое присвоение адреса
В первые годы Интернета каждый узел был присвоен уникальный IP-адрес, трудно кодированный в его конфигурационные файлы. Поскольку Интернет стал еще популярнее среди менее технически опытных пользователей, и бездисковые устройства стали распространенными, это стало непрактичным для ручного изменения IP-адреса каждой машины каждый раз, когда Вы изменили сети. (Это стало еще более важным, когда ноутбуки и беспроводные сети стали банальными.)
Для решения этой проблемы много протоколов были разработаны, достигнув высшей точки в современном стандарте Протокола динамического конфигурирования узлов (DHCP), обнаружении соседних устройств IPv6, DHCPv6 и локальном для ссылки обращении. Эти протоколы описаны далее в следующих разделах.
Протокол динамического конфигурирования узлов (DHCP) и DHCPv6
В IPv4 DHCP обеспечивает средние значения для компьютера или другого устройства для выяснения у центрального сервера адрес IPv4, подходящий для использования в сети. В зависимости от сервера адрес IPv4 может быть или присвоен случайным образом от пула доступных адресов или присвоен вручную администратором на основе MAC-адреса узла запроса.
В IPv6 протокол DHCPv6 может дополнительно использоваться похожим способом, хотя адреса IPv6 могут также быть получены через автоматическую конфигурацию адреса не сохраняющую состояние, как описано в следующем разделе.
Сервер DHCP может также предоставить дополнительную информацию, необходимую для маршрутизации — маски подсети и адреса маршрутизатора, например — а также серверы доменных имен, серверы каталогов и другие произвольные данные, как определено различными расширениями протокола.
Путем работы DHCP (на высоком уровне) могут быть получены в итоге следующим образом: клиент широковещательно передает запрос на адрес IPv4. После того, как сервер присваивается один, клиенту, как говорят, принадлежит «арендный договор» для того IP-адреса, длящегося определенный промежуток времени. Клиент может возобновить тот арендный договор в любое время до даты истечения срока. Сервер не обязан согласиться расширить арендный договор, но большинство серверов делает.
Вообще говоря, если клиент соединяется впервые, этот обмен является серией широковещательной передачи пакеты UDP. Если клиент возобновляет существующее (все еще допустимый) арендный договор IP, обмен может быть отправлен с одноадресной передачей пакеты UDP (по усмотрению клиента).
Клиент может продолжать отправлять запросы для дополнительных данных (серверы DNS, сетевой том монтируется, Контроллеры доменов Active Directory, и т.д.) путем отправления запросов с дополнительными опциями и ожидания ответа.
Обнаружение соседних устройств и присвоение адреса IPv6
Протокол IPv6 (созданный поверх ICMPv6) предоставляет встроенную поддержку для обнаружения соседних устройств. Обнаружение соседних устройств служит двум целям:
Обнаружение аппаратного адреса других узлов в той же физической сети. Это занимает место ARP.
Автоматическая конфигурация адреса не сохраняющая состояние (SLAAC). Это - альтернатива большой части функциональности, предоставленной DHCP.
Когда узел сначала соединяется с сетью, он первоначально использует самоприсвоенный адрес IPv6, который глобально уникален проектом. Этот адрес позволяет узлу отправлять запросы обнаружения соседних устройств для требования маршрутизатора. Маршрутизатор тогда обеспечивает тот же вид информации, которая появилась бы в предложении DHCP под IPv4 — IP-адрес маршрутизатора, сетевой префикс (который примерно сопоставим с сетевым адресом и маской подсети), IP-адреса серверов DNS, и т.д. Оттуда, клиент может создать routable адрес IPv6 для использования при передаче с общедоступным Интернетом.
В дополнение к самоприсвоенному локальному для ссылки адресу каждый узел создает по крайней мере два дополнительных адреса IPv6: постоянный адрес и адрес конфиденциальности.
Узел создает свой постоянный адрес на основе медосмотра узла (канальный уровень) адрес. Это приводит к адресу, часть узла которого обычно остается неизменной, когда компьютер перемещается от сети до сети. Этот адрес предназначается для обеспечения непротиворечивого расположения, куда другие узлы в сети могут отправить данные в рассматриваемый узел.
Кроме того, каждый узел создает один или несколько адресов конфиденциальности. Эти адреса сгенерированы случайным образом и изменяются в течение долгого времени. Таким образом они не связываются к определенной части аппаратных средств. По умолчанию исходящие соединения отправляются с помощью адреса конфиденциальности.
Локальное для ссылки обращение и добрый день
Доменные имена являются отличным решением для постоянных серверов, но они стоят денег и требуют, чтобы технически опытный пользователь сконфигурировал их. Кроме того, для непубличных серверов глобально опубликованное доменное имя имеет мало смысла. Далее, стандартные доменные имена довольно сложны для использования с динамическими IP-адресами, присвоенными серверами DHCP и подобными схемами. С растущим числом динамично настроенных сетей было необходимо другое решение.
Для обеспечения альтернативы OS X и iOS поддерживают Добрый день, реализация сетей нулевой конфигурации. Добрый день состоит из трех частей:
Локальные для ссылки адреса в IPv4 — средние значения для самоприсвоения IP-адресов в отсутствие сервера DHCP или другие средние значения присвоения IP-адреса. (Соединитесь, локальное присвоение адреса встроено к самому протоколу IPv6, и таким образом нет никакой потребности в Добрый день для дублирования этой функциональности.)
Многоадресно передайте DNS — технология для обеспечения разрешения DNS, когда сервер инфраструктуры не присутствует или, когда локальный, неуправляемые имена более удобны.
Открытие Службы DNS — средние значения регистрации и обнаружения служб.
Комбинация этих технологий позволяет многократным узлам в той же физической сети распространять службы и обнаруживать друг друга без потребности в постоянной инфраструктуре DNS.
Как правило, Добрый день использование многоадресно передает DNS для отправки запроса Открытия Службы DNS в каждую машину в локальной сети, спрашивая, предоставляет ли какой-либо из них определенную услугу. Каждая машина, предоставляющая требуемую услугу тогда, передает сообщение обратно исходной машине. Результат состоит в том, что те машины могут обнаружить и использовать услуги, предоставленные другими машинами в сети, не будучи должен сказать каждую машину о тех службах заранее.
Даже если у Вас нет сетевой инфраструктуры, сконфигурированной вообще, открытие Службы DNS может быть объединено с локальными для ссылки адресами для разрешения сетей нулевой конфигурации — обнаружение сетевых устройств. Например, Вы могли бы совместно использовать файлы между двумя компьютерами по оперативной беспроводной сети.
Путем локальная для ссылки работа адресов является довольно прямой.
Для IPv4, если узлу не удается получить адрес из сервера DHCP, компьютер выбирает случайный IP-адрес в определенном диапазоне (
169.254.*.*
), затем использует специфичный для ссылки протокол (такой как ARP) для выяснения, у кого есть тот адрес. Если другая машина отвечает, она пробует различный адрес. Если никакая машина не отвечает, узел утверждает что число как его собственное.Для IPv6 каждый интерфейс имеет локальный для ссылки адрес в
fe80::
префикс, независимо от того, имеет ли интерфейс другой адрес, присвоенный через SLAAC, DHCPv6 или другие механизмы. Если интерфейс имеет один (MAC-адрес Ethernet, например), этот адрес вычислен на основе аппаратного адреса интерфейса. Если это не делает, адрес выбран случайным образом в том префиксе, и двойной протокол обнаружения адреса SLAAC используется для гарантии уникальности. Посмотрите RFC 4862 для подробных данных.
Поскольку эти IP-адреса - все в той же подсети, каждый узел с локальным для ссылки адресом в данной локальной сети может говорить с любым узлом, не проходя через маршрутизатор. Таким образом они могут все обнаружить друг друга без потребности в любой дополнительной инфраструктуре.