Dns dhcp что это

Обновлено: 06.07.2024

Разработки в области DHCP и динамической DNS должны облегчить управление IP-адресами и именами доменов. ОСНОВЫ TCP/IP DHCP: ЗАКЛИНАНИЕ IP? ХОСТ ПОД ЛЮБЫМ ДРУГИМ ИМЕНЕМ КТО СТУЧИТСЯ В ДВЕРЬ КО МНЕ?

Разработки в области DHCP и динамической DNS должны облегчить управление IP-адресами и именами доменов.

Вследствие гигантского спроса на доступ в Internet и стремления больших и малых компаний построить идеальную корпоративную сеть Intranet, администраторы сетей сталкиваются с многочисленными сложностями в управлении IP-адресами и именами доменов. Последние разработки в области протокола динамической конфигурации хоста (Dynamic Host Configuration Protocol, DHCP) и динамической системы имен доменов (Domain Name Service) открывают перед ними новую альтернативу.

ОСНОВЫ TCP/IP

TCP/IP - это не один протокол, а скорее семейство или комплект взаимосвязанных протоколов. Протокол TCP связывает высокоуровневые сервисы с IP, а тот в свою очередь взаимодействует с протоколом канального уровня. На Рисунке 1 изображена иерархия семейства протоколов TCP/IP в сопоставлении с эталонной моделью ISO OSI.

Рисунок 1.
Стек протоколов TCP/IP показан в сравнении с эталонной моделью OSI. В иерархии TCP/IP протоколы TCP и IP служат связующими звеньями между высокоуровневыми и низкоуровневыми протоколами.

Например, рабочая станция может иметь такой IP-адрес: 192.228.17.62. Он делится на две части - номер сети и номер хоста. Номер сети состоит из одного, двух или трех первых октетов в зависимости от класса сети, а оставшиеся октеты отводятся под номер хоста.

DHCP: ЗАКЛИНАНИЕ IP?

Несмотря на то что практика назначения статических IP-адресов позволяет хостам в сети найти друг друга, реализация и управление сети TCP/IP со статическими адресами предоставляет в избытке проблем для администраторов сетей. Каждому новому объекту в сети должен быть задан уникальный IP-адрес. Хосту необходимо также указать IP-адрес шлюза. Если хост перемещается в другую сеть, то эти адреса скорее всего придется изменить.

Данная процедура представляется весьма простой, но что делать, если под вашим попечительством находится сеть с более чем 10 000 узлами, причем ежедневно появляется несколько десятков или даже сотен новых систем? К тому же не стоит забывать об этих докучливых портативных компьютерах, пользователи которых подключают адаптеры PCMCIA к соединителям Категории 5 там, где им заблагорассудится. Учитывая количество человеко-часов, необходимых для разрешения проблемы дублирования IP-адресов вкупе с проведением новых инсталляций и диагностикой унаследованных систем, нет ничего удивительного в том, что организации, большие и малые, ищут иные решения.

Очевидный способ решить эту проблему состоит в том, что при загрузке хост спрашивает IP-адрес у указанного ему сервера, избавляя администратора от необходимости переконфигурации хоста при каждом его перемещении. Изначально протокол, известный как BOOTP, разрабатывался для того, чтобы бездисковые рабочие станции могли запрашивать и получать информацию о конфигурации у назначенного сервера по UDP. Будучи шагом в правильном направлении, BOOTP тем не менее не имел средств для динамического назначения IP-адресов, так что администратору все равно приходилось вручную указывать серверу, какой адрес он должен дать данному хосту.

DHCP является дальним потомком BOOTP. Если BOOTP осуществляет только статическое назначение, то DHCP поддерживает три режима: динамический, автоматический и ручной. При динамическом назначении IP-адрес предоставляется хосту в аренду на определенный период времени, при автоматическом - хост получает адрес в бессрочную аренду, а назначение вручную происходит во многом так же, как и в случае BOOTP - система используется просто для передачи клиенту конфигурационной информации.

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

Как указано в документе RFC 1541, опубликованном IETF, серверы DHCP, в отличие, например, от системы имен доменов, не могут обмениваться информацией для согласования базы данных об адресах. Вот почему администраторам, имеющим несколько серверов DHCP, необходимо задать свой диапазон адресов для каждого сервера, в противном случае разные клиенты могут автоматически получить одинаковые IP-адреса - что за гигантский шаг назад! Грустно об этом говорит, но рассматриваемые IETF предложения относительно DHCPv6 никак не затрагивают вопрос о взаимодействии серверов, оставляя решение этой проблемы на будущее.

ХОСТ ПОД ЛЮБЫМ ДРУГИМ ИМЕНЕМ

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

КТО СТУЧИТСЯ В ДВЕРЬ КО МНЕ?

Теперь, когда серверы DHCP могут динамически назначать IP-адреса, которыми DNS должна управлять, мы хотели бы иметь и динамическую службу DNS, чтобы она автоматически модифицировала таблицу соответствия имен доменов согласно новым назначениям DHCP. Современный стандарт не обеспечивает базы для динамической модификации таблицы имен доменов согласно назначениям DHCP; однако проект стандарта, рассматриваемый IETF, вкупе с рыночным прессингом, усилившимся в результате появления разработок нескольких производителей, должен в конце концов привести к появлению нового стандарта в ближайшие несколько лет.

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

В определенном смысле и DHCP и DNS не хватает того, что есть у другого: DHCP не обладает такой функцией DNS, как распространение таблиц DNS между серверами, а DNS - функцией динамического обновления информации DHCP. Эволюция обеих систем привела к своеобразной модификации проблемы курицы и яйца. Являясь наследником BOOTP, DHCP не имеет механизма для обращения к записям DNS о ресурсах для установления соответствия между полным доменным именем (Fully Qualified Domain Name, FQDN) и IP-адресом. В результате сервер DHCP делает неверные предположения относительно записей клиента DNS о ресурсах A и PTR.

В отсутствии стандарта компании IBM, Quadritek Systems и Isotro Network Management разработали программное обеспечение серверов DHCP и динамической DNS для решения этой проблемы следующим образом: сначала оно выполняет функцию сервера DHCP по динамическому назначению IP-адреса для данного клиента, а затем функцию динамического сервера DNS по размещению обновленной информации о соответствии имен. Такие системы находятся пока в младенческом состоянии и не отличаются поддержкой разнообразных клиентских платформ.

Кроме того, динамическая DNS представляет собой парадокс с точки зрения безопасности. Хорошо защищенные системы используют зачастую автономные или статические хранилища идентификаторов и конфигурационной информации для предотвращения несанкционированного изменения. Однако по своей природе эта стратегия вступает в противоречие с концепцией постоянно доступной, динамически модифицируемой клиент-серверной базы данных.

Представьте себе на мгновение, что злоумышленник посылает IP-адрес своей машины в качестве обновления открытому серверу DNS и, таким образом, занимает место настоящего хоста. В действительности эта проблема состоит из двух: проверка клиента и авторизация обновления DNS. Недавно принятый документ RFC 2065 предлагает расширить структуру записей DNS для поддержки использования криптографических цифровых сертификатов наряду с оснащенными функциями защиты агентами (resolver) и приложениями для заделки имеющихся "дыр" в системе защиты DNS.

Несмотря на то что сразу несколько поставщиков сетевых ОС разработали функции динамического обновления своих соответствующих таблиц DNS, каждая реализация имеет определенные ограничения, из-за которых полное взаимодействие между DHCP и динамической DNS невозможно.

OS/2 Warp Server 4.0 компании IBM представил на всеобщее обозрение "истинно" динамическую DNS (Warp DNS автоматически обновляется в соответствии с данными DHCP), причем он решает и проблему безопасности посредством реализации двух уровней цифровых подписей на основе механизма открытых ключей RSA для идентификации транзакций (с помощью защищенного, генерируемого клиентом ключа или с помощью защищенного, генерируемого сервером ключа, назначаемого клиенту).

По словам Глена Стампа, эксперта по динамическому IP в IBM-Raleigh, компания заняла выжидательную позицию, пока статус Secured DNS (DNSSEC) RFC 2065 не будет окончательно определен; однако он дал ясно понять, что IBM рассматривает вопросы защиты как вопросы чрезвычайной важности. Согласно утверждению Стампа, следующая версия OS/2 Warp Server будет иметь дополнительные функции защиты вместе с улучшенными функциями DHCP и динамической DNS корпоративного уровня.

Хотя динамическая DNS в Warp Server 4.0 является определенным шагом вперед, клиентская поддержка ограничена Warp Connect и AIX. Однако бета-версию клиента для Windows 95 можно найти на узле Web компании IBM, и она должна появиться в окончательном виде, когда эта статья выйдет в свет. Конфигурация DHCP осуществляется с помощью графического интерфейса в две колонки, а он в свою очередь генерирует конфигурационный файл ASCII, редактирование которого можно производить и вручную. Правда, функции сервера запускаются с помощью команд. Хотя графический интерфейс динамической DNS в версии 4.0 отсутствует, конфигурационный GUI на базе Java находится в стадии разработки для следующей версии, появление которой запланировано на осень. Также работа ведется и над взаимодействием с функциями DHCP ОС Windows NT 4.0, однако поддержка Windows NT 3.51 в настоящее время не планируется.

Windows NT Server 4.0 компании Microsoft имеет улучшенные по сравнению с версией 3.51 функции DHCP и DNS, но полноценных функций динамической DNS у него нет, так как обновление информации об именах возможно только для клиентов WINS (Windows Internet Naming Service). В результате DNS в Windows NT 4.0 не имеет связи с DHCP. Хотя в интерактивной документации по NT 4.0 утверждается, что NT поддерживает стандартный DHCP, система тем не менее не поддерживает BOOTP, а это в случае сетей, где есть устаревшее оборудование, может привести к проблемам взаимодействия.

NetWare/IP компании Novell, поставляемый вместе с IntranetWare, предоставляет пользователям NetWare поддержку сервера DHCP, причем конфигурация осуществляется с помощью утилиты DHCP Configuration Utility (DHCPCFG) со стандартным интерфейсом "а ля" NLM. DHCPCFG автоматически обнаруживает подсети, к которым сервер DHCP подключен, создавая профиль подсети для каждой, причем позднее профиль может быть отредактирован. Утилита допускает создание профилей для подсетей вручную, если сервер не имеет с ними прямого соединения. Реально сервер выполняет свои функции посредством dhcpsrvr.nlm.

Хотя NetWare/IP позволяет задавать несколько диапазонов IP-адресов в пуле, система не поддерживает исключенные адреса непосредственно; однако администратор может ввести MAC-адреса узлов, которые DHCP не должен обслуживать (т. е. назначать им IP-адреса), посредством их прямого указания в списке исключенных узлов. Хорошо хотя бы то, что исключение адресов может производиться с использованием символа подстановки вместо поля узла в MAC-адресе. DNS компании Novell полностью статична, и она вообще не имеет никаких динамических функций.

ДИНАМИЧЕСКИЕ ПАКЕТЫ

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

Утилиты управления IP предлагают несколько поставщиков, но среди них мы бы хотели выделить: Quadritek Systems и Isotro Network Management. Продукты обеих компаний обладают широким диапазоном функций управления и позволяют осуществлять миграцию к IP в масштабах предприятия. Таким образом, в вопросах DHCP и динамической DNS эти компании знают, что делать.

Когда этот номер выйдет из печати, Quadritek должна уже выпустить версию 3.1 своей системы QIP для управления IP. Данная версия будет поддерживать обновления сервера DHCP не только на HP-UX, SunOS, Sun Solaris и AIX 4.1.2, но и на Windows NT. QIP уже имеет клиентов управления для Windows 3.1, Windows 95 и Windows NT, а также Unix и Motif/X11R5.

Система Quadritek реализует уникальный подход к управлению IP: и имеющиеся, и планируемые сегменты учитываются таким образом, что новые назначения IP-адресов в подсети делаются системой активными автоматически. Система представляет единую точку управления всеми серверами DNS и DHCP, в том числе обширные возможности управления арендой, адресами и обновлением конфигурации. QIP импортирует существующие таблицы DHCP и DNS в центральную базу данных, заменяя оригинальные функции системы хоста на свои собственные, после чего база данных исходной системы обновляется из этой центральной системы управления. Администратор NT должен будет сначала импортировать данные IP в QIP, а затем отключить полностью сервис DHCP, после чего QIP берет на себя выполнение всех функций IP и DNS. "При развертывании кем-либо сервера управления QIP он получает одну базу данных, отвечающую за всю корпорацию, и эта база данных берет на себя заботу об обновлении многочисленных удаленных баз данных вне зависимости от того, на какой платформе они находятся", - говорит Малкольм Хейвуд, вице-президент Quadritek.

Isotro предлагает свою систему NetID в версиях для Unix и Windows. NetID имеет серверы DHCP и динамической DNS, Web Gateway для доступа к Internet и обширный комплект инструментов для управления IP. Корпоративное издание имеет лицензию на трех пользователей, поддерживает базы данных Sybase и Oracle в качестве центрального хранилища всей идентификационной информации о хостах, а также включает Admin Tool, Export Tool, Import Tool и Scheduler.

С помощью NetID Admin Tool администратор может просматривать всю информацию об идентификации, управлять доступом пользователей и конфигурировать систему с помощью определяемых полей, записей о ресурсах, опций BOOTP, шаблонов, системных моделей и многооконного интерфейса. Администратор может непосредственно инициировать функции импорта и экспорта из Admin Tool или, при желании, из Export Tool и Import Tool. С помощью последнего инструмента идентификационную информацию можно загрузить из существующих файлов с данными о зонах DNS, хост-файлов Unix, табличных файлов BOOTP или пользовательских текстовых файлов, созданных из электронных таблиц или баз данных. Система имеет опции для управления опциями DHCP и BOOTP на уровне всей сети, подсети и хоста.

ПЕРЕКОНФИГУРАЦИЯ DHCP

В общем устройств великое множество и все они "хотят" в интернет.

К примеру смартфон, который есть у большинства людей. Выйти в интернет может двумя-тремя способами, и из великого множества мест.

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

Про свою сеть DHCP-сервер знает "всё". На самом деле нет конечно, но многое, и раздаёт настройки всем устройствам, которые сделают соответствующие запросы. И настройки в том размере какие требуется.

Теперь собственно о том какие настройки в основном используются.

IP-адрес и маска подсети - это "обратный адрес" данного устройства, надо же куда то отправлять ответы, правильно?

И любое другое устройство тоже имеет такой адрес.

IP-DNS - это специальный сервер, который переводит "с русского на компьютерный" и обратно.

Сначала ваш компьютер спрашивает "а собсна кто такой яндекс и где оно"?
Не у вас же спрашивать, вы не знаете, иначе и не спрашивали. Компьютер спрашивает у DNS-сервера. Ну и потом уже дальше отправляет свои запросы самому яндексу.

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

Подсеть и маска подсети

Чтобы не усложнять я напишу только про "домашние" варианты. И про версию 4.

192.168.yyy.ххх/24 (здесь "yyy" и "ххх" это число от 0 до 255, )

Все устройства имеют "уникальный" IP-адрес внутри подсети

IP-адрес состоит из четырёх чисел. Разделяются точками. Каждое число должно быть в диапазоне 1-255. Первые 3 числа определяют саму подсеть.

Четвертое число - "номер" устройства в данной подсети.

Та самая маска, о которой я писал ранее /24 или 255,255,255,0 как раз и определяет какая часть IP-адреса будет общим адресом подсети, а какая номер самого устройства.

P.S . Всю эту информацию сообщает DHCP-сервер. Всё это можно и вручную заполнить, только зачем эти все простыни цифр заносить в настройки каждого устройства?

К слову . DHCP-сервер обычно выдаёт IP-адрес компьютеру, адреса DNS и шлюза. Выдаёт "на время" и через некоторое время надо эту адресацию перезапрашивать. Сделано это из-за того, что некоторые компьютеры подключаются, отключаются. На пару секунд или пару лет. Чтоб адреса не простаивали Это и придумано.

На самом деле DHCP может много чего ещё выдавать, если настроено конечно. DNS и FTP, gate и AD DC и кучу другой информации. Обычно не используется. Нигде. Но может. На эту тематику есть книжки. страниц на 200 каждая. Здесь сжато, тезисно. Для дома.

Не ожидал, что получу столько отзывов на первую статью. Комментарии всё еще открыты, поверьте, я рассматриваю любую точку зрения. По итогам всего хочется акцентировать внимание на печальных симптомах:

· многие не знают лицензионной политики Microsoft (впрочем, это верно и для любого другого вендора),

· далеко не все в ИТ придерживаются единого подхода и стандартов,

· в силу вышесказанного все задачи решаются не «как надо», а «как получается»,

· «получается» у всех по-разному, отсюда бардак и отсутствие хоть какой-то документации по сервисам, предоставляемых в компании.

Уверен, что большинство сейчас же со мной не согласится. Ну и что из того негатива, что я привел? Ведь все работает, «бизнес» не жалуется. Да, на первый взгляд, так оно и есть. Но…

… а знает ли «бизнес», что эти сервисы могут работать лучше? Является ли предлагаемое Вами решение оптимальным? «Бизнесу» абсолютно всё равно на технические аспекты, ему важно понимать, насколько эффективно используются инвестиции в ИТ. Малый бизнес тут не исключение. Ведь ни для кого не секрет, я надеюсь, что Microsoft предлагает готовые решения (не продукты!) для малого бизнеса за вполне умеренные деньги (но есть и ряд ограничений на использование). Почему же тогда не повысить эффективность труда и в маленьких компаниях? Большие затраты на ИТ не сможет позволить себе маленькая компания, а простой в работе ИТ скажется на ней моментально.

Было много разговоров на тему внедрения Active Directory в маленьких компаниях (примерно до 15-25 компьютеров). Как оказалось, многие не знают и не понимают идеологии самой технологии. Где-то слышал, что используется в enterprise-сегменте, попробовал, ничего не ясно, не буду использовать. Я не скрываю того, да и всячески акцентирую внимание, что любая технология в неумелых руках способна принести больше вреда, нежели пользы. Ну не зря есть много официальных и авторских курсов. Поверьте, это не просто так. Не важно, сколько Вы знаете, или какой у Вас опыт, курсы помогают систематизировать информацию даже в том случае, если Вы уже всё-всё-всё знаете. Почему-то гуру в своих направлениях не стесняются посещать такие курсы. Для них новой информации там может быть менее 30%, но систематизация знаний в таком случае более важна.

Сегодня я хочу продолжить цикл статей «Сервера в малом бизнесе: просто и доступно». В этой статье мы поговорим о DNS- и DHCP-серверах. Почему? На этот вопрос вы получите ответ в конце статьи. J

Итак, для чего нужен DNS-сервер? Domain Name System (система доменных имен) – это распределенная система получения соответствия между именем компьютера и его числовым ip-адресом. Числовая адресация удобна для машинной обработки таблиц маршрутов, но совершенно не приемлема для использования ее человеком. Запомнить наборы цифр гораздо труднее, чем мнемонические осмысленные имена. Для облегчения взаимодействия сначала стали использовать таблицы соответствия числовых адресов именам машин. Эти таблицы сохранились до сих пор и могут использоваться старыми прикладными программами. Это файлы с именем hosts. Большинство интернет ресурсов известно пользователям по их доменным именам. Это справедливо как для адресов электронной почты, так и для адресов веб-сайтов. В любом адресе центральное место занимает доменное имя сервера, на котором ресурс расположен.

Соответственно можно определить основное назначение DNS-серверов:

· получение информации об IP-адресе сервера по его имени и наоборот,

· маршрутизация электронной почты,

· предоставление информации об обслуживающих серверах определенных протоколов внутри сети.

Для чего нужен DHCP-сервер? Dynamic Host Configuration Protocol (протокол динамической конфигурации хоста) – сетевой протокол, используемый для того, чтобы компьютеры в сети смогли автоматически получить правильный IP-адрес и другие параметры для работы в сети TCP/IP.

Я не хочу останавливаться на техническом описании реализации данных служб. Они, во-первых, разные у разных производителей, а, во-вторых, даже у одного производителя в зависимости от используемой версии могут быть разными реализации. Давайте обсудим целесообразность и те выгоды, что получает в данном случае системный администратор.

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

В продолжение тематики первой статьи об Active Directory хочу отметить, что DNS является необходимым компонентом работы служб Active Directory (как было отмечено, DNS используется для предоставления информации об обслуживающих серверах определенных протоколов).

Ясное дело, что, не имея Active Directory внутри компании, необходимость в отдельном DNS-сервере отпадает сама по себе. Для доступа к ресурсам интернет достаточно использовать DNS-сервера провайдера. Но мы говорим о правильной компании с правильной ИТ-инфраструктурой.

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

Рассматривая целесообразность внедрения DHCP-сервера оцените главную его пользу – Вы избавляетесь от конфликтных ситуаций, которые могут появиться при установке параметров вручную. Один раз спроектировали, один раз настроили и всё работает как надо. Сервер точно «помнит», кому, какие IP-адреса выдавал и на какой период.

Учитывая, что протоколы далеко не новые, всё равно следите за изменениями, которые происходят в управлении этими серверами. Например, почитать о новом функционале DHCP-сервера, который входит в состав только Windows Server 2008 R2, можно в статье Дмитрия Пономарева.

И напоследок, помните, что DNS – это распределенная система. Не экономьте на втором сервере, просто посчитайте, во сколько может обойтись простой при отказе DNS (откажет DNS – откажут все сервисы в сети). Ну а единожды правильно настроенный DHCP-сервер позволит Вам забыть о конфигурировании рабочих станций для работы в сети компании раз и навсегда.

А теперь перейдем к главному. Сегодня рассмотрели именно эти сервера, потому как они будут очень нужны при развертывании Active Directory с нуля. Без DNS-сервера сама AD не будет работать (более детально в статье Дениса Баканова). А вот без DHCP-сервера вполне может обойтись, но зачем придумывать себе лишнюю работу.

Как настроить Active Directory, DNS и DHCP сервера для малого бизнеса смотрите в следующем веб-касте.

Принципы работы протокола DHCP

DHCP — протокол автоматизации назначения IP-адреса клиенту. Он широко используется в современных сетях. В статье рассмотрим принципы работы, процесс DORA, основные опции и другие аспекты протокола.

Для чего нужен протокол DHCP

DHCP — протокол прикладного уровня модели TCP/IP, служит для назначения IP-адреса клиенту. Это следует из его названия — Dynamic Host Configuration Protocol. IP-адрес можно назначать вручную каждому клиенту, то есть компьютеру в локальной сети. Но в больших сетях это очень трудозатратно, к тому же, чем больше локальная сеть, тем выше возрастает вероятность ошибки при настройке. Поэтому для автоматизации назначения IP был создан протокол DHCP.

Впервые протокол был описан в 1993 году в документе RFC 1531, но с тех пор в описание вносились правки. На сегодняшний день основным документом, регламентирующим протокол, является RFC 2131. Помимо автоматизации процесса настройки IP, DHCP позволяет упростить диагностику подключения и переход из одной подсети в другую, оставляя уведомления для системного администратора в логах.

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

Из вступления ясно, какие функции предоставляет DHCP, но по какому принципу он работает? Получение адреса проходит в четыре шага. Этот процесс называют DORA по первым буквам каждого шага: Discovery, Offer, Request, Acknowledgement.

Давайте подробнее рассмотрим DORA — принцип работы DHCP.


Протокол DHCP, получение адреса IP — DORA

Discovery, или поиск

Offer, или предложение

DHCP-сервер отвечает на поиск предложением, он сообщает IP, который может подойти клиенту. IP выделяются из области (SCOPE) доступных адресов, которая задается администратором.

Если имеются адреса, которые не должны быть назначены DHCP-сервером, область можно ограничить, указав только разрешенные адреса. Например, администратор может задать диапазон используемых IP-адресов от 192.0.0.10 до 192.0.0.255.

Бывает и так, что не все доступные адреса должны быть назначены клиентам. Например, администратор может исключить (exclude) диапазон 192.0.0.100 — 192.0.0.200 из используемой области. Такое ограничение называется исключением.

DHCP выделяет доступные IP-адреса из области только временно (об этом позже), поэтому нет гарантии, что при следующем подключении у данного клиента останется прежний IP. Но есть возможность назначить какому-либо клиенту определенный IP навсегда. К примеру, забронировать 192.0.0.10 за компьютером системного администратора. Такое сохранение IP для отдельных клиентов называют резервацией (reservation).

Request, или запрос

Acknowledgement, или подтверждение

Срок аренды

Когда DHCP-сервер выделяет IP из области, он оставляет запись о том, что этот адрес зарезервирован за клиентом с указанием срока действия IP. Этот срок действия называется срок аренды (lease time). Срок аренды может составлять от 24 часов до нескольких дней, недель или даже месяцев, он задается в настройках самого сервера.

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

После получения адреса из области, клиент берет его в аренду на время, называемое T. Клиент переходит в связанное (BOUND) состояние и продолжает нормальную работу, пока не наступит время половины срока аренды — T1.

Три подхода к распределению адресов

Сервер назначает IP одним из трех основных способов.

Статическое распределение (static allocation). Почти как ввод адреса на каждом компьютере вручную. Отличие в том, что системный администратор задает нужные соответствия IP для MAC-адресов клиентов на самом DHCP-сервере. IP останется за клиентом, даже если тот выйдет из сети, отключится, перейдет в новую сеть и т.п.

Автоматическое распределение (automatic allocation). Сервер закрепляет IP из области за каждым клиентом навсегда. Срок аренды не ограничен.

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

DHCPNAK. Нередко в источниках можно встретить написание DHCPNACK, что является неправильным, так как RFC 2131 регламентирует именно NAK. DHCPNAK отправляется сервером вместо окончательного подтверждения. Такой отказ может быть отправлен клиенту, если аренда запрашиваемого IP истекла или клиент перешел в новую подсеть.

Опции DHCP

Для работы в сети клиенту требуется не только IP, но и другие параметры DHCP — например, маска подсети, шлюз по умолчанию и адрес сервера. Опции представляют собой пронумерованные пункты, строки данных, которые содержат необходимые клиенту сервера параметры конфигурации. Дадим описания некоторым опциям:


Option 82 — ретрансляция DHCP-сервера


Опции DHCP для загрузки PXE

Протокол DHCP позволяет загрузку компьютера без использования носителя данных. Такая загрузка происходит с сетевой карты и называется PXE (Preboot eXecution Environment). Для конфигурации сетевой загрузки LEGACY BIOS PXE используются DHCP-опции 43, 60, 66 и 67.

  • Option 43 зарезервирована для обмена информацией производителей;
  • Option 60 — классовый идентификатор; здесь указывается, например, PXE клиент;
  • Option 66 и 67 необходимы для указания имени сервера PXE и имени файла загрузки соответственно.

Взаимодействие DHCP и DNS

Как мы упоминали выше, Option 6 — это сервер DNS. Давайте рассмотрим подробнее взаимодействие двух протоколов.

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

Если вы хотите создать свою локальную сеть на базе Linux, потому что это бесплатно и вы не хотите связываться Windows, то вы можете столкнуться с проблемой взаимодействия DNS и DHCP. Linux не имеет Active Directory, как в Windows, позволяющей тесно связать DHCP и DNS, избегая необходимости обращаться к клиенту каждый раз по IP. Однако способы организовать такую связь существуют и для свободной системы.

Первый вариант — настроить DHCP-сервер так, чтобы фиксировал адрес за клиентом. Второй вариант — настроить взаимодействие DHCP- и DNS- серверов. Первый вариант подходит, если область IP-адресов широкая и вы можете позволить себе фиксировать IP за каждым клиентом. Если же для вас такой метод будет расточительным, то необходимо дать двум серверам работать вместе.

Взаимодействие DHCP и DNS необходимо для того, чтобы DNS-сервер вовремя получал информацию о новом IP клиента и мог сопоставить его с именем клиента в сети. Если сервера не будет взаимодействовать, это чревато ошибками и недоступностью клиентов.

Настроить данное взаимодействие можно в четыре шага при помощи пакета dnsmasq, доступного в стандартных репозиториях Ubuntu и Debian. Мы не будем давать детальную инструкцию по осуществлению, а лишь кратко опишем каждый шаг.

Шаг 1 — конфигурация сети

В первую очередь необходимо определиться с компьютером, который будет выполнять роль сервера. Важно выбрать тот компьютер (Ubuntu Server или Ubuntu Desktop), который вы не планируете выключать слишком часто. Если после полной настройки вы решите выключить компьютер, то вся сеть тоже выключится.

Выбранному компьютеру необходимо назначить статический IP. Делается это редактированием конфигурационного файла в директории /etc/network/interfaces.

Шаг 2 — установка dnsmasq

Установите пакет dnsmasq командой из терминала:

Для изменения настроек фаервола можно использовать Ubuntu Uncomplicated Firewall. Используйте следующие команды:

Шаг 4 — изменение настроек роутера

Зайдите в настройки вашего роутера из браузера, отключите DHCP для локальной сети, измените все настройки DNS так, чтобы они указывали на ваш только что настроенный сервер. Последнее действие — перезапуск сети на сервере. Для этого вы можете просто перезагрузить компьютер или использовать команды:

Недостатки протокола DHCP

Еще одна брешь в безопасности — в том, что DHCP использует UDP-протокол. UDP — протокол обмена датаграммами без установления соединения, а значит, и без шифрования. Передаваемая по UDP информация не защищена и может быть «подслушана», что также может быть использовано злоумышленниками.

Третий недостаток — вновь ненадежность UDP, но другого рода. UDP не обеспечивает гарантию доставки информации. Этот протокол допускает потери и ошибки, которые могут сказаться и на работе DHCP, в частности при PXE-загрузке.

Заключение

Мы рассмотрели основные принципы работы DHCP-серверов. Несмотря на недостатки и частые доработки, протокол DHCP широко используется в современных сетях. Также изучили процесс DORA, основные опции и другие аспекты протокола. Надеемся, эта статья оказалась вам полезна.

Читайте также: