Резервирование DHCP

From DD-WRT Wiki

Revision as of 11:38, 17 December 2019 by Atatob (Talk | contribs)
(diff) ←Older revision | Current revision (diff) | Newer revision→ (diff)
Jump to: navigation, search


Contents

Введение

Статический DHCP (или резервирование DHCP, англ. Static DHCP, DHCP reservation) - это полезная функция, которая позволяет DHCP-серверу на маршрутизаторе всегда назначать один и тот же IP-адрес определенному компьютеру в локальной сети. DHCP-сервер назначает статический IP-адрес в зависимости от уникального MAC-адреса сетевого интерфейса компьютера. Компьютер запускается и запрашивает свой IP-адрес с DHCP-сервера маршрутизатора. DHCP-сервер распознает MAC-адрес сетевой карты компьютера и назначает ему статический IP-адрес. (Отметим также, что в настоящее время каждый зарезервированный IP-адрес должен быть уникальным. Поэтому, например, нельзя зарезервировать один и тот же IP-адрес как для проводного, так и для беспроводного интерфейсов устройства, даже если устройство может быть настроено так, чтобы одновременно был активен только один интерфейс.)

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

v23 Port Forwarding section in the Web GUI

Конфигурация

  1. Войдите в веб-интерфейс DD-WRT.
  2. Перейти на вкладку Administration → Services.
  3. DHCP-сервер в группе параметров DHCP Server должен быть включен.
  4. Если в разделе списке статической аренды "Static Leases" нет пустых строк, нажмите Add.
  5. Введите MAC-адрес сетевого интерфейса, доменное имя и IP-адрес для компьютера, которому хотите назначить статический IP-адрес. Обратите внимание, что нельзя зарезервировать один и тот же IP-адрес для двух разных MAC-адресов (например, как проводного, так и беспроводного интерфейсов компьютера).
  6. Сохраните изменения.

Примечание. Вы должны либо сохранять (кнопка Save), либо применять (кнопка Apply) настройки каждый раз, когда добавляете и заполняете строку с новым статическим адресом. При нажатии на кнопку Add страница обновляется без сохранения введенных ранее данных. Если вы попытаетесь добавить несколько пустых строк и заполнить их все сразу, то столкнетесь с ошибкой, из-за которой веб-интерфейс посчитает их дубликатами и не позволит сохранить.

Примечание. Пустой срок аренды в поле Client Lease Time означает бесконечный срок аренды (никогда не истекает). Задание определенного значения продолжительности аренды позволит позже изменить статическую информацию об аренде, и компьютер автоматически получит новую информацию без необходимости вручную обновлять состояние аренды на компьютере.

Параметры DHCP

Система DHCP назначает IP-адреса вашим локальным устройствам. Её основные настройки находятся в разделе веб-интерфейса Setup → Basic Setup. А в разделе Administration → Services можно задать несколько специальных параметров:

DHCP Daemon: отключение этого параметра отключит DHCP-сервер на маршрутизаторе независимо от настроек в разделе Setup.

Used domain: здесь можно выбрать, какой имя домена клиенты DHCP должны получать в качестве локального домена. Это может быть домен WAN, заданный в разделе Setup, или домен LAN, который можно установить здесь.

LAN Domain: здесь можно указать локальный домен для DNSmasq и службы DHCP, если выбран выше.

Static Leases: присвойте определенным компьютерам статические адреса здесь. Это также способ добавить компьютер в службу DNS маршрутизатора (DNSmasq).

Примечание. Не обязательно, но рекомендуется выбирать статические адреса за пределами диапазона, автоматически присваемого DHCP. По умолчанию это диапазон 192.168.1.100-192.168.1.149, и его можно настроить в разделе Setup → Basic Setup → Network Address Server Settings (DHCP).

Пример

Чтобы назначить IP-адрес 192.168.1.12 и доменное имя «mypc» компьютеру с сетевой картой, имеющей MAC-адрес 00:AE:0D:FF:BE:56, нажмите Add и введите 00:AE:0D:FF:BE:56 в поле MAC Address, mypc в поле Host Name и 192.168.1.12 в поле IP Address.

Помните: если вы нажмете кнопку 'Add' перед сохранением введенных записей, они будут удалены. Это нормальное поведение.

Добавление статического адреса из командной строки

nvram set static_leasenum=X (где X - общее количество заданных статических адресов)
nvram set static_leases="00:11:22:33:44:55=доменное_имя_1=IP-адрес_1 00:11:22:33:44:56=доменное_имя_2=IP-адрес_2"

Если адресов больше двух, просто продолжайте добавлять их в переменную static_leases разделяя пробелами.

Не забывайте двойные кавычки, если в значении переменной есть пробелы (если указываете более одного адреса).

Пользователь redhawk пишет:

ПРИМЕЧАНИЕ. Начиная со сборки 13832, формат команды был изменен на следующий:

nvram set static_leasenum=X (где X - общее количество заданных статических адресов)
nvram set static_leases="00:11:22:33:44:55=доменное_имя_1=IP-адрес_1= 00:11:22:33:44:56=доменное_имя_2=IP-адрес_2="

или

nvram set static_leases="00:11:22:33:44:55=доменное_имя_1=IP-адрес_1= 00:11:22:33:44:56=доменное_имя_2=IP-адрес_2=1440"

Отредактировано для работы с ревизией 21676 (автор Jackykoning). Текущая сборка требует переноса строки между адресами, вместо пробела:

nvram set static_leasenum=X (где X - общее количество заданных статических адресов)
nvram set static_leases="
00:11:22:33:44:55=доменное_имя_1=IP-адрес_1=
00:11:22:33:44:56=доменное_имя_2=IP-адрес_2=
00:11:22:33:44:57=доменное_имя_2=IP-адрес_3=
00:11:22:33:44:58=доменное_имя_2=IP-адрес_4="

Обратите внимание на знак «=» в конце каждого адреса. Если вы хотите установить время аренды, то после последнего знака «=» укажите число - время в минутах (1440 = 24 часа). В противном случае пусто место после знака «=» означает бессрочную аренду.

Если вы успешно задали пару записей, но не можете установить множество записей, возможно, вы столкнулись с ограничением длины строки для этого метода и конкретной версии прошивки. Обходным путем будет подключение по SSH или Telnet к маршрутизатору и ввод команд там. Если вы по-прежнему сталкиваетесь с проблемой ограничения длины, можно использовать текстовый редактор vi (или другой), чтобы ввести команды в файл сценария и запустить его. Вот что я сохранил в файл и успешно запустил (в моём случае были нужны одинарные кавычки вместо двойных):

nvram set static_leasenum='15';
nvram set static_leases='MAC-адрес_1=доменное_имя_1=IP-адрес_1 MAC-адрес_2=доменное_имя_2=IP-адрес_2 ...';

Затем я запустил сценарий (который называется myiplist.sh) примерно так:

sh myiplist.sh

Также рассмотрите такие инструменты, как "nvram show | grep static" и "nvram commit".

Устранение неполадок

Если вы не можете проверить связь комадной ping по доменному имени компьютера, добавьте точку в конец команды. Т.е. вместо "ping server" попробуйте "ping server.".

Если статические адреса заданы, но компьютеры продолжают получать обычный IP-адрес DHCP, попробуйте перейти на страницу Setup веб-интерфейса. Нажмите Save и затем Apply settings. DHCP-сервер должен перезапуститься, и ненадолго возможна потеря соединения. Попробуйте обновить аренду DHCP, и в этот момент вы получите правильный IP-адрес.