Fruitsekta.ru

Мир ПК
4 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Lease time в роутере

Изменение времени аренды IP-адреса

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

В KeeneticOS, начиная с версии 2.10, по умолчанию для домашней и гостевой сети время аренды IP-адреса DHCP Lease установлено 25200 сек (7 часов). Именно столько выделено времени для аренды IP-адреса. На более ранних версиях микропрограммы это значение составляло 300 секунд (5 минут).

Когда пройдет 50% времени от срока аренды, клиент выполнит попытку возобновить аренду или обновить (renew) информацию об IP-адресе.

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

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

Например, установим время аренды IP-адреса для основной домашней сети, равное 60 секундам (мы специально в нашем примере установили такое маленькое время, чтобы показать, как работает механизм аренды IP-адреса). Как правило, рекомендуемый срок аренды IP-адреса составляет 48 часов (172800 секунд) для обновления IP-адреса раз в сутки.

После применения указанных параметров клиенты будут получать IP-адрес сроком на 1 минуту, после чего будут посылать на DHCP-сервер запрос о получении нового IP-адреса каждые 30 секунд. Чтобы обновить таймер срока аренды IP-адреса отключите и затем включите сетевой адаптер (или просто отключите Ethernet-кабель от компьютера на несколько секунд и затем заново его подключите).

Данный механизм хорошо виден по дампу сетевых пакетов, собранных на стороне DHCP-клиента. Из нашего дампа видно, что через 30 секунд происходит запрос на обновление IP-адреса.

Также время аренды IP-адреса можно установить с помощью специальной команды через интерфейс командной строки (CLI) интернет-центра:

где xxx – время в секундах. Максимальное значение аренды IP-адреса в KeeneticOS составляет 259200 секунд (72 часа, 3 суток).

Для сохранения настройки в энергонезависимой памяти интернет-центра необходимо выполнить команду

Пользователи, считающие этот материал полезным: 35 из 43

Lease time в роутере

Alexandr Zaitsev
Сотрудник D-LINK

Зарегистрирован: Ср май 10, 2006 16:40
Сообщений: 12219
Откуда: D-Link, Moscow

Вернуться наверх
invictus

Зарегистрирован: Вс июл 15, 2007 11:06
Сообщений: 7

Вернуться наверх
Alexandr Zaitsev
Сотрудник D-LINK

Зарегистрирован: Ср май 10, 2006 16:40
Сообщений: 12219
Откуда: D-Link, Moscow

Вернуться наверх
invictus

Зарегистрирован: Вс июл 15, 2007 11:06
Сообщений: 7

Два клиента: один проводной, другой беспроводной (ноутбук). Установил Etherpeek на ноутбук и вот какие сообщения были зарегистрированы.
Результаты, которые дал Etherpeek.
В нормальной ситуации каждые 40 секунд обмен сообщениями:

IP Header — Internet Protocol DatagramIP:

Source IP Address:Src: 192.168.0.168
Dest. IP Address:Dst: 192.168.0.1

BootP — Bootstrap Protocol:

IP Address Known By Client: 192.168.0.168
Client IP Addr Given By Srvr: 0.0.0.0
Server IP Address: 0.0.0.0
Gateway IP Address: 0.0.0.0
Client Hardware Addr: 00:18:DE:5C:47:B0

DHCP — Dynamic Host Configuration Protocol:

Option Code: 53 Message Type: 3 Request
Option Code: 61
Option Code: 12
Option Code: 81
Option Code: 60
Option Code: 55
Option Code: 255

IP Header — Internet Protocol DatagramIP:

Source IP Address:Src: 192.168.0.1
Dest. IP Address:Dst: 255.255.255.255 IP Broadcast

BootP — Bootstrap Protocol:

IP Address Known By Client: 0.0.0.0
Client IP Addr Given By Srvr: 192.168.0.168
Server IP Address: 192.168.0.1
Gateway IP Address: 0.0.0.0
Client Hardware Addr: 00:18:DE:5C:47:B0

DHCP — Dynamic Host Configuration Protocol:

Option Code: 53 Message Type: 5 ACK
Option Code: 54
Option Code: 1
Option Code: 3
Option Code: 15
Option Code: 6
Option Code: 51 Value: 60
Option Code: 58 Value: 40
Option Code: 59 Value: 40
Option Code: 255

В другой ситуации обмен сообщениями следующий (клиент теряет соединение):

IP Header — Internet Protocol DatagramIP:

Source IP Address:Src: 192.168.0.168
Dest. IP Address:Dst: 192.168.0.1

BootP — Bootstrap Protocol:

IP Address Known By Client: 192.168.0.168
Client IP Addr Given By Srvr: 0.0.0.0
Server IP Address: 0.0.0.0
Gateway IP Address: 0.0.0.0
Client Hardware Addr: 00:18:DE:5C:47:B0

DHCP — Dynamic Host Configuration Protocol:

Option Code: 53 Message Type: 3 Request
Option Code: 61
Option Code: 12
Option Code: 81
Option Code: 60
Option Code: 55
Option Code: 255

Через 4 секунды:

IP Header — Internet Protocol DatagramIP:

Source IP Address:Src: 192.168.0.168
Dest. IP Address:Dst: 255.255.255.255 IP Broadcast

BootP — Bootstrap Protocol:

IP Address Known By Client: 192.168.0.168
Client IP Addr Given By Srvr: 0.0.0.0
Server IP Address: 0.0.0.0
Gateway IP Address: 0.0.0.0
Client Hardware Addr: 00:18:DE:5C:47:B0

DHCP — Dynamic Host Configuration Protocol:

Option Code: 53 Message Type: 3 Request
Option Code: 61
Option Code: 12
Option Code: 81
Option Code: 60
Option Code: 55
Option Code: 255

Через 10 секунд:

IP Header — Internet Protocol DatagramIP:

Source IP Address:Src: 0.0.0.0
Dest. IP Address:Dst: 255.255.255.255 IP Broadcast

BootP — Bootstrap Protocol:

IP Address Known By Client: 0.0.0.0
Client IP Addr Given By Srvr: 0.0.0.0
Server IP Address: 0.0.0.0
Gateway IP Address: 0.0.0.0
Client Hardware Addr: 00:18:DE:5C:47:B0

DHCP — Dynamic Host Configuration Protocol:

Option Code: 53 Message Type: 1 Discover
Option Code: 116
Option Code: 61
Option Code: 50 (Address: 192.168.0.168)
Option Code: 12
Option Code: 60
Option Code: 55
Option Code: 255

IP Header — Internet Protocol DatagramIP:

Source IP Address:Src: 192.168.0.1
Dest. IP Address:Dst: 255.255.255.255 IP Broadcast

BootP — Bootstrap Protocol:

IP Address Known By Client: 0.0.0.0
Client IP Addr Given By Srvr: 192.168.0.168
Server IP Address: 192.168.0.1
Gateway IP Address: 0.0.0.0
Client Hardware Addr: 00:18:DE:5C:47:B0

DHCP — Dynamic Host Configuration Protocol:

Option Code: 53 Message Type: 3 Offer
Option Code: 54
Option Code: 1
Option Code: 3
Option Code: 15
Option Code: 6
Option Code: 51 Value: 60
Option Code: 58 Value: 40
Option Code: 59 Value: 40
Option Code: 255

IP Header — Internet Protocol DatagramIP:

Source IP Address:Src: 0.0.0.0
Dest. IP Address:Dst: 255.255.255.255 IP Broadcast

BootP — Bootstrap Protocol:

IP Address Known By Client: 0.0.0.0
Client IP Addr Given By Srvr: 0.0.0.0
Server IP Address: 0.0.0.0
Gateway IP Address: 0.0.0.0
Client Hardware Addr: 00:18:DE:5C:47:B0

DHCP — Dynamic Host Configuration Protocol:

Option Code: 53 Message Type: 3 Request
Option Code: 61
Option Code: 50 Address: 192.168.0.168
Option Code: 54
Option Code: 12
Option Code: 81
Option Code: 60
Option Code: 55
Option Code: 255

Последнее сообщение повторяется дважды, ответа сервера нет. После этого после некоторого промежутка времени процесс получения адреса заканчивается сообщением об ошибке (иконка в системном трее имеет восклицательный знак). По моему мнению, похоже на то, что DHCP-сервер не ответил вовремя. Такую ситуацию я заметил пока только с беспроводным клиентом, с проводным Ethernet вроде бы нормально: всегда DHCP-request —> DHCP-ACK без тормозов.

1.2 Базовая настройка DHCP

Установка и первоначальная настройка

Настройки для диапазона адресов IPv4 производятся в файле/etc/dhcp/dhcpd.conf. Пример данного файла можно посмотреть в файле /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example. Ваша версия dhcpd в пути может отличаться.

Теперь откроем на редактирование конфигурационный файл:

Подсети обозначаются блоками, пример такого блока представлен ниже:

  • subnetобозначает сеть, в области которой будет работать данная группа настроек;
  • range— диапазон, из которого будут браться IP-адреса, диапазон адресов 192..168.0.101-192.169.0.120 выдаваться не будет.
  • option domain-name-servers— через запятую перечисленные DNS-сервера;
  • option domain-name— суффикс доменного имени;
  • option routers— шлюз по умолчанию;
  • option broadcast-address— адрес сети для широковещательных запросов;
  • default-lease-time, max-lease-time — время и максимальное время в секундах, на которое клиент получит адрес, по его истечению будет выполнено продление срока.

Добавляем правило в firewalld:

Некоторые дополнительные параметры

Параметр задает доменное имя, которое клиенты используют при запросах к DNS, при разрешении имен.

Задает список серверов имен NetBIOS (NBNS), соответствующих RFC 1001/1002 Сервера должны быть перечислены в порядке предпочтительности. Сервера имен NetBIOS так же известны как сервера WINS.

Опция сервера распределения данных NetBIOS (NBDD) указывает список серверов RFC 1001/1002 NBDD. Серверы должны быть перечислены в порядке предпочтения.

option netbios-node-type INT;

Параметр позволяет сконфигурировать тип узла, т.е. способ разрешения имен клиентами NetBIOS поверх TCP/IP.

Возможные значения параметра:

B-node (Broadcast): Разрешение имен с помощью широковещательных запросов, WINS не используется.

P-node (Peer): Используется только WINS.

M-node (Mixed): Смешанный тип, сначала используется широковещательный запрос, затем в случае неудачи — WINS

H-node (Hybrid): Смешанный наоборот. WINS, а затем broadcast.

Опция области NetBIOS указывает параметр NetBIOS через TCP/IP для клиента, как указано в RFC 1001/1002. См. RFC1001, RFC1002 и RFC1035 для ограничения набора символов.

BOOTP

Каждый клиент BOOTP может быть настроен отдельно в файле dhcpd.conf. Самая простая конфигурация состоит из адреса сетевой карты и IP адреса, назначаемого этому клиенту. Если клиент должен быть загружен с сервера, указывается загрузочный образ. Простая конфигурация для клиента BOOTP может выглядеть так:

Дополнительные параметры.

Включение и отключение bootp

allow bootp;
deny bootp;

Параметр bootp сообщает серверу dhcp обрабатывать или нет bootp-запросы. По умолчанию bootp-запросы разрешены.

Параметр dynamic-bootp в секции range указывается в случае если предполагается назначать адреса из диапазона клиентам по протоколу BOOTP.

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

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

Если клиентские параметры меняются в зависимости от сети к которой подключен клиент, то необходимо использовать множественные записи host

имя_хоста
— имя идентифицирующее хост. Если в описании хоста опция hostname не указана, то используется значение имя_хоста.

Объявления Host сопоставляются с реальными DHCP или BOOTP клиентами путем сравнения опции dhcp-client-identifier указанной в секции host со значением предоставленным клиентом, или если клиент не предоставляет dhcp-client-identifier, то путем сравнения опции hardware
и аппаратного (mac) адреса клиента. Клиенты BOOTP нормально не предоставляют dhcp-client-identifier, так что при работе по протоколу BOOTP необходимо использовать mac-адреса.

hardware тип_железа аппаратный_адрес;

Для того что бы BOOTP клиент был опознан сервером, его mac-адрес должен быть объявлен с помощью параметра hardware в секции host Параметр тип_железа
— тип физического интерфейса. В настоящее время используются только ethernet
и token-ring
и возможно скоро будет реализованы другие типы, особенно fddi аппаратный_адрес
— записывается как набор шестнадцатеричных значений ( от 0 до ff ) разделенных двоеточиями. should be a set of hexadecimal octets (numbers from 0 through ff) seperated by colons. Параметр hardware можно использовать и для DHCP клиентов.

Параметр dynamic-bootp-lease-cutoff устанавливает момент времени в который все адреса назначенные клиентам BOOTP должны быть освобождены. Так как клиенты BOOTP не имеют возможности продлить срок использования полученных адресов и не могут определить что срок аренды истек, то по умолчанию клиентам BOOTP адреса выделяются на неограниченный срок. Однако в некоторых случаях оказывается полезным установить параметр dynamic-bootp-lease-cutoff, например в учебном заведении при окончании семестра или в ночное время когда предприятие не работает, а все компьютеры выключены.

дата
— срок окончания действия всех адресов выделенных BOOTP клиентам. Дата указывается в следующем формате: W ГГГГ/ММ/ДД ЧЧ:ММ:СС

W — день недели в виде числа от 0 (воскресенье) до 6 (суббота). ГГГГ — год ММ — месяц 1..12 ДД — день месяца 1..31 ЧЧ — часы 0..23 ММ — минуты 0..59 СС — секунды 0..59 Время указывается в GMT, а не местное.

Параметр dynamic-bootp-lease-length используется для указания срока на который выделяется адрес BOOTP клиенту. В некоторых организациях возможна ситуация что по прошествии определенного времени можно быть уверенным что выделенный адрес уже не используется. Период задается числом секунд. Если клиент перезагружается в момент когда срок указанный в этом параметре еще не истек, то период аренды адреса заново устанавливается в указанное значение. Таким образом часто перезагружаемые BOOTP клиенты могут постоянное удерживать свой адрес. Необходимо заметить что при настройке параметра, следует быть осторожным.

Некоторые BOOTP клиенты ожидают ответа от сервера в стиле RFC1048, но сами не следуют RFC1048 при посылке запросов. Если в вашей сети имеется такой проблемный клиент, который не воспринимает параметры передаваемые ему сервером и если в логах появляется сообщение «(non-rfc1048)» , то можно воспользоваться этим параметром.

Если у вас все клиенты требуют работы в стиле RFC1048, то можно использовать параметр always-reply-rfc1048 Параметр может быть указан в любом объявлении в этом случае воздействует только на тех клиентов, которые соответствуют указанной зоне действия.

Резервирование ip адреса за клиентом

Хост с именем myhost у которого сетевая карта имеет MAC 08:45:32:00:00:23 должен иметь постоянный адрес 192.168.1.121

Определенный интерфейс для работы

Если в системе присутствует несколько сетевых адаптеров, а сервер DHCP должен работать только для определенных, открываем на редактирование следующий файл:

И добавляем в него следующее:

* в данном примере сервер будет работать только для интерфейса enp0s8.

Перед запуском убедитесь, что сетевой адаптер enp0s8 настроен для работы в создаваемой сети. Для этого создайте файл nano /etc/sysconfig/network-scripts/ifcfg-enp0s8 со следующим содержимым.

Разрешаем автозапуск сервиса:

и запускаем его:

Настройка логов

По умолчанию, сервер dhcp ведет лог в файле /var/log/messages, что не очень удобно, так как это общий лог-файл, в котором может находиться много записей.

Для того, чтобы сервер сохранял записи в отдельный файл, открываем на редактирование rsyslog.conf:

И добавляем следующее:

Далее открываем конфигурационный файл dhcp:

Настройка DHCP-сервера для работы с сервером PXE.

Отредактируйте файл /etc/dhcp/dhcpd.conf ,

Добавьте строку в конец файла до фигурной скобки.

Параметр next-server используется для указания клиенту адреса сервера с которого должен быть получен загрузочный файл (тот самый файл что указан в параметре filename). Имя_сервера может быть IP адресом или доменным именем. Если этот параметр не указан, то используется адрес DHCP сервера.

Если вы нашли ошибку, выделите текст и нажмите Ctrl+Enter.

Отказоустойчивый DHCP сервер на базе Kea

Статья-инструкция по установке и базовой настройке отказоустойчивого сервера Kea DHCP

Kea DHCP – это open-source DHCP сервер, разрабатываемый Internet Systems Consortium(ISC) с поддержкой DHCPv4 и DHCPv6.

ISC – это те же ребята, которые разрабатывают наши любимые bind и dhcpd. Kea – разработана на базе BIND 10.

Kea позволяет запустить dhcp-сервер как для небольших систем, так и для больших телеком/корпоративных компаний. Из нововведений – использование API для управления сервисом, возможность хранения базы lease в СУБД и использование hooks для дополнительных функций.
На момент написания статьи(июнь 2019) – последняя стабильная версия 1.5.0.

Вдаваться в детальную работу протокола DHCP не буду, тогда статья будет раза в два-три больше. Есть хорошая статья на Хабре.

Протокол DHCP работает по протоколу UDP(порты 67-68), используется для динамического выделения ip-адресов. Использует четыре шага для получения/выдачи ip-адресов – discover-offer-request-acknowledge(DORA). Также DHCP использует понятие lease – аренда адреса, срок аренды адреса устройством – lease-time.

Почему Kea

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

Этот продукт будет использоваться нашим телеком-оператором, который планирует выдавать около 2 млн. адресов, с 2000 запросами в секунду. Он был выбран из-за скорости работы и возможности создания кластера из двух серверов.

Поддерживаемые ОС

• CentOS Linux — 7.1804 (aka 7.5)
• Fedora — 28, 29
• Ubuntu — 16.04, 18.04
• Debian GNU/Linux — 7, 8, 9
• FreeBSD — 11.0
• macOS — 10.13, 10.14

Планов запуска Kea для Windows нет.

Хранение базы lease

Kea DHCP – поддерживает хранение базы выданных адресов в локальном CSV-файле(memfile) или в одной из трёх СУБД – MySQL, PostgreSQL и Cassandra.

Отличия – в скорости работы и возможностях хранения. Memfile – в 10 раз быстрее, но хранение базы в СУБД позволяет хранить дополнительные поля и опции DHCP. Сравнение скорости работы:

Очень большой анализ использования различных баз данных и локального хранения тут.

В нашем проекте решили начать с базы в memfile, так как количество запросов в секунду будет больше 2000.

Установка

В качестве примера Kea будет разворачиваться на базе CentOS 7(minimal edition):

Перед установкой самого сервиса, необходимо установить все необходимые зависимости:

  1. Библиотеки Boost C++ (http://www.boost.org/). # run-time среда с++ для запуска самого Kea
  2. Криптобиблиотеку Botan (вер. 1.9) или OpenSSL (вер. 1.0.1). Советую openssl, так как botan не будет поддерживаться с версии Kea 1.6.0
  3. log4cplus (вер. 1.0.3) development # нужен для создания логов
  4. Компилятор C++
  5. Библиотеки automake, libtool, pkg-config # для сборки и установки самого Kea
  6. Если будете использовать СУБД – то тогда установить MySQL, PostgreSQL или Cassandra.

  • FreeRADIUS client library when —with-freeradius configuration flag used.
  • Sysrepo (version 0.7.6 or later) and libyang (version 0.16-r2 or later) when —with-sysrepo configuration flag used.
  • googletest (version 1.8 or later), when using the —with-gtest configuration option to build the unit tests.
  • The documentation generation tools elinks, docbook-xsl, libxslt and Doxygen, if using the —enable-generate-docs configuration option to create the documentation.

Шаг 1. Устанавливаем нужные зависимости

Шаг 2. Если все зависимости встали нормально, переходим к установке самого Kea

*Тут нужно упомянуть про нужные опции – если вы планируете использовать СУБД, нужно отметить эту опцию.

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

Шаг 3. Устанавливаем

Операция make проходит очень долго(час или около того). Make install около минуты.

Запуск и настройка

Запускается из установленной директории:

Еще есть опции stop, reload(перезагрузка конфигурации) и status

При старте запускает три процесса – kea-dhcp4, kea-dhcp6 kea-ctrl-agent – агент для управления и управляющих коммуникации сервера

Если вам не нужен dhcp6, то можно запустить только dhcp4, не забываем запустить агента:

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

Основной конфигурационный файл dhcp4 — /usr/local/etc/kea/kea-dhcp4.conf

Файл хорошо описан, очень много комментариев и примеров настроек, не запутаетесь, напишу только главные настройки:
Указываем интерфейс или адрес через который будет работать dhcp4:

Указываем где хранить базу lease

Какие DNS сервера будут презентованы клиентам

Доменное имя вашей организации

И главная настройка — подсети, пулы и default gateway:

Ну и последний параметр, нужен для резервирования адресов из пула/подсети, указанные адреса не будут выдаваться клиентам, нужны для адресов сервера/устройств которые прописаны статично:

Вот пожалуй основные настройки, после изменения конфигурации нужно перезапустить сервис –

CSV-база

Локальная база хранится тут — /usr/local/var/kea/kea-leases4.csv

Логи по умолчанию хранятся — /usr/local/var/log/

Тут у каждого из компонентов отдельный файл:

Читать еще:  Как раздать wifi через компьютер
Ссылка на основную публикацию
Adblock
detector