Сбросить dhcp кэш cisco

Обновлено: 06.07.2024

ОС Windows очень бережно работает с сетью. Настолько бережно, что устаревшие данные об узлах могут храниться в кэше годами.

Симптомы устаревших данных могут быть самыми разнообразными:

  • пинг по имени идёт на один адрес, а попытка подключения к терминалу или ресурсу по тому же имени - на другой;
  • при физической смене шлюза (одно устройство сменяется на другое, но с таким же IP-адресом) - пропадает интернет;
  • появляются конфликты IP-адресов в локальной сети, о чём сигнализирует баллон над часами;
  • перестают работать удалённые принтеры
  • и ещё масса других удовольствий

Почему такое происходит? Потому что сетевых кэшей несколько, а данные в них перестают соответствать не только реальному положению дел в сети, но и друг другу.

Излечить можно по вполне стандартной процедуре.

0. Разрываем подключение к локальной сети

Работающая сеть может помешать корректно очистить все существующие кэши.

1. Очищаем кэш ARP

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

2. Очищаем кэш NetBIOS

В этом кэше находятся сопоставления NetBIOS-имён компьютеров с их IP-адресами. Если вам посчастливилось и в сети присутствует ещё и сервер WINS (что-то типа DNS для NetBIOS имён), есть смысл почистить и его.
Сразу после очистки этого кэша туда подгружаются записи из файла LMHOSTS ( %SystemRoot%\System32\drivers\etc\lmhosts ).

Многие считают протокол NetBIOS устаревшим, однако микрософт носится с ним как с писаной торбой. Без него Windows ведёт себя в сети неадекватно. В то же время, с ним - создаёт дикий широковещательный флуд по портам 137 и 138.

Вирус kido одобряет использование NetBIOS.

3. Очищаем кэш DNS

Здесь всё понятно. Кэш DNS - это сопоставление сетевых имён узлов с их IP-адресами.
В него же подгружаются записи из файла HOSTS ( %SystemRoot%\System32\drivers\etc\hosts )

Кстати, вирусы очень любят менять местоположение файла HOSTS.

А путь к нему задаётся в реестре, ветка HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters , ключ DataBasePath , тип REG_EXPAND_SZ .

Если команда возвращает ошибку — надо запустить (или перезапустить) службу DNS-клиента.

4. Восстанавливаем подключение к локальной сети

5. Обновляем сетевые настройки по DHCP

Команда посылает запрос последнему использовавшемуся серверу DHCP (адрес этого сервера берётся из реестра) на получение сетевых настроек.

Все описанные процедуры можно сделать толпой и из графики.

В ХР: Пуск → Панель управления → Сетевые подключения.
На нужном подключении нажимаем правую кнопку мыши и выбираем из меню «Восстановить». После этого будут выполнены следующие операции:

  1. Широковещательный DHCP-запрос. Ответы приходят со всех DHCP-серверов.
  2. Очистка кэша ARP
  3. Очистка кэша NetBIOS. С последующей загрузкой файла LMHOSTS.
  4. Очистка кэша DNS. С последующей загрузкой файла HOSTS.
  5. Попытка регистрации в WINS (актуально только если он есть)
  6. Попытка регистрации в DNS (актуально только для AD)

К сожалению, этот лёгкий метод работает криво и не всегда.

Комментарии

nsi223

да это ваще косяк.
как вариант ещ можно добваить net use * /delete
и то не всегда корректно чистить сетевые подключения


как вариант ещ можно добваить net use * /delete
и то не всегда корректно чистить сетевые подключения

Эта команда не работает )
Подробнее про то, как почистить подключения - здесь.

Беспроводное соединение WI-FI отключать необходимо.


Беспроводное соединение WI-FI отключать необходимо.

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

Виолетта

Спасибо,ребят! выручили! перепробовала всякие советы. что-то точно помогло))))

ХрумычЪ

От куда, что запускать?! Ничего не понятно :С


От куда, что запускать?! Ничего не понятно :С

Командная строка, cmd.exe. Белые буковки на чёрном фоне. И команды с клавиатуры буковками вводить.

Линуксоид

ОС Windows очень бережно работает с сетью. Настолько бережно, что устаревшие данные об узлах могут храниться в кэше годами. Мда уж.
Столкнулся с проблемой. Из линукса расшарены папки через самбу и прописано 2 юзера с разными правами доступа. Из винды (7) доступ по сети идет к папкам после ввода пароля первого юзера, все работает как часы, однако в текущем сеансе работы не удается сменить первого юзера на второго, то есть нет такой функции в семерочке, чтобы сбросить подключение и переавторизоваться под другим юзером в сети. Всякие танцы с бубном не помогают, ни сброс соединения на физическом уровне, ни ввод команд в консоль винды, только жесткий ребут системы, вот тогда и появляется снова окно ввода пароля в сетевом окружении.
Мда, насрать на руки разрабам надо этой винды, и кто то ее еще хвалит за надежность и безглючность, а типичные сетевые задачи реализованы из рук вон как плохо в ней.
Значит надо писать свой скрипт, который будет очищать все кэши соединений и паролей без ребута.


Столкнулся с проблемой. Из линукса расшарены папки через самбу и прописано 2 юзера с разными правами доступа. Из винды (7) доступ по сети идет к папкам после ввода пароля первого юзера, все работает как часы, однако в текущем сеансе работы не удается сменить первого юзера на второго, то есть нет такой функции в семерочке, чтобы сбросить подключение и переавторизоваться под другим юзером в сети. Всякие танцы с бубном не помогают, ни сброс соединения на физическом уровне, ни ввод команд в консоль винды, только жесткий ребут системы, вот тогда и появляется снова окно ввода пароля в сетевом окружении.

Мда, насрать на руки разрабам надо этой винды, и кто то ее еще хвалит за надежность и безглючность, а типичные сетевые задачи реализованы из рук вон как плохо в ней.

Например, в семёрке сеть жостко завязана на "брандмауэр". Т.е. в ХР микрософтовский сетевой фильтр был отдельной службой, а в 7 они принудительно пустили через него все пакеты. Отключаешь службу — пропадает сеть. Я когда это увидел — не знал, смеяться или плакать.

Значит надо писать свой скрипт, который будет очищать все кэши соединений и паролей без ребута.

Или, как подсказали в комментах по ссылке выше, "control userpasswords2".
Этот диалог из обычных менюшек недоступен.

А в сетевых кэшах пароля от самбы нет, их сброс не поможет.

Сергей

Интересно, а в чём отличие от netsh winsock reset ?

Fil2005

Столкнулся с забавной ситуацией: переставил местами диски у 2 одинаковых моноблоков, только один с win 7, другой с win 10.
Получил два компа с одинаковым Mac-адресом. Соответственно и IP они получают синхронно один и тот же. И никакого конфликта :) Проверили по инвентарке - неправильный mac у win 10. Лечится последовательным отключением сетевой в BIOS, загрузкой винды без сетевой, включением сетевой в BIOS обратно.

Александр

Столкнулся со следующей ситуацией: после резервирования ip-адреса для компьютера с Win XP SP3 на роутере TL WR841N, на самом компе началось постоянное прерывание сетевого соединение, модем не пингуется, интернет недоступен. Помогает только "Исправление" в сетевом подключении, потом через несколько минут (5-10) снова разрыв и т.д.
На модеме убиралось резервирование адреса, в сетевой карте как прописывался ip так и назначался автоматом - ничего не помогает. Что еще замечено, ip-адрес сетевой карте все вреся назначается один и тот же, независимо или вручную прописан или выбрано авто назначение. В сетевом окружении компьютер виден только если указать его ip-адрес, по DNS имени не находит.


Разбор любой неведомой херни в сети начинается с поиска конфликтующих mac- и ip-адресов.
Но в данном конкретном случае скорее всего у виндов просто потекли мозги.

Михаил
Сергей

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


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

Вообще жесть.
С такими симптомами лучше систему переустановить.

Кэш майкросовта — Вещь в себе.
Сохраняет даже то, что по логике работы системы сохраняться не должно.

Может кто подскажет - в домене под одним именем пингуется другая машина, и пишет неверный ip. Пингуя по имени ту машину, айпи которой отображается у другой машины получаем верный адрес.
Что надо почистить, что бы имена соответствовали адресам??

Может кто подскажет - в домене под одним именем пингуется другая машина, и пишет неверный ip. Пингуя по имени ту машину, айпи которой отображается у другой машины получаем верный адрес.
Что надо почистить, что бы имена соответствовали адресам??

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

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

Техническая информация
Время подготовки страницы: 0.001062 c.
Кэш: частичный.

создаем пул с именем LAN
ip dhcp pool LAN
Указываем подсеть (так же можно network 192.168.1.0/24)
network 192.168.1.0 255.255.255.0
Указываем днс-сервера (если несколько, то указываем, через пробел)
dns-server 192.168.0.101
Указываем имя домена
domain-name domain.local
Указываем шлюз по умолчанию (чаще всего сама цыска)
default-router 192.168.1.1
Срок аренды (в днях), по умолчанию 1 день. infinite - означает, что срок аренды не истечет никогда)
lease 35

Закрыть для выдачи два адреса 192.168.1.1 и 192.168.2.1
ip dhcp excluded-address 192.168.1.1
ip dhcp excluded-address 192.168.2.1

Закрыть для выдачи диапозон адресов 192.168.1.199 - 192.168.1.254
ip dhcp excluded-address 192.168.1.199 192.168.1.254

Если сервер для протоколирования привязок DHCP-адресов не доступен, и команда ip dhcp
database не конфигурируется, то необходимо отключить и функцию протоколирования DHCP-конфликтов.
no ip dhcp conflict logging

Указываем, что у нас не используется DHCP для виртуальных маршрутизаторов
no ip dhcp use vrf connected

Если присутствует два DHCP-сервера и необходимо, чтобы при поломке одного второй подхватывал раздачу адресов с того же места. Либо есть статические адреса которые по каким-то причинам не описаны в excluded-addresses используем примитивную проверку перед выдачей адреса. Вместо <0-10> подставьте количество тестовых пакетов.
ip dhcp ping packets <0-10>
Для настройки тайм-аутов пакетов ping воспользуйтесь следующей командой:
ip dhcp ping timeout milliseconds

Выданные адреса можно посмотреть -
show ip dhcp binding
Статистику можно посмотреть -
show ip dhcp server statistics

Очистки таблицы соответствия физических адресов и адресов выданных с пула DHCP-сервером:
clear ip dhcp binding
Очистить привязку для конкретного IP-адреса:
clear ip dhcp binding 10.84.168.181

Иногда в крупных организациях нужно провести ревизию свободных IP-адресов. Пользователи приезжают на место/уезжают/увольняются, IP адреса остаются зарезервированны хотя за ними уже никого нет. Поиском таких «мертвых душ» и займемся.

Рассмотрим пример, как получаются отчеты из логов MS DHCP.

Технология формирования отчетов по использованию адресного пространства состоит из двух частей:

1) отделение событий DHCP renew и

В папке \\dhcp_server\c$\Windows\System32\dhcp лежат логи DHCP-сервера. Их копии нужно собрать в одну папку на локальном или сетевом диске. Например, в c:\tmp

Из этих файлов можно вытащить все события обновления dhcp lease renew:

1) На первой стадии выделяем значимые строки. Перечислите через запятую все имена файлов *.log, которые нужно обработать. Можно собрать файлы за несколько недель, переименовав их как-нибудь.

c:\tmp>for /f "tokens=1,2,3,4,5,6,7,8 delims=," %a in (DhcpSrvLog-Mon.log,DhcpSrvLog-Tue.log,DhcpSrvLog-Wed.log,DhcpSrvLog-Thu.log,DhcpSrvLog-Fri.log,DhcpSrvLog-Sat.log,DhcpSrvLog-Sun.log) do if [%e] NEQ [] echo %b,%c,%d,%e,%f,%g >> text.csv

2) Добавить в первую строчку файла text2.csv заголовок «Date,Time,Description,IP,Hostname,MAC», остальные строки заполнить событиями renew:

c:\tmp>echo Date,Time,Description,IP,Hostname,MAC >> text2.csv

c:\tmp>for /f "tokens=1,2,3,4,5,6 delims=," %a in (text.csv) do if "%c" EQU "Renew" echo %a,%b,%c,%d,%e,%f >> text2.csv

Можно хранить text2.csv за каждую неделю и собирать в один файл конкатенацией. Если, допустим, нужно проверить что адрес не использовался целый месяц, полгода и т.д, то нужно хранить файлы text2.csv за этот период и склеивать перед следующей операцией.

3) формирование отчета:

c:\tmp >"c:\Program Files (x86)\Log Parser 2.2\LogParser.exe" -i:csv -o:TPL -tpl:dhcp2.tpl "SELECT IP, hostname, mac, max(to_timestamp(add(add(Date, ' '),time), 'MM/dd/yy HH:mm:ss')) as timestamp, EXTRACT_TOKEN(ip, 0, '.') as octet1, EXTRACT_TOKEN(ip, 1, '.') as octet2, EXTRACT_TOKEN(ip, 2, '.') as octet3, EXTRACT_TOKEN(ip, 3, '.') as octet4, add(strrepeat('0',sub(3, to_int(strlen(octet4)))),octet4) as octet4lz, add(strrepeat('0',sub(3, to_int(strlen(octet3)))),octet3) as octet3lz INTO text2.html FROM text2.csv group by IP,mac,hostname order by octet1,octet2,octet3lz,octet4lz"

Получится файл text2.html, в котором можно увидеть «живые» компьютеры, получающие адреса через DHCP.

Если заменить "-o:TPL -tpl:dhcp2.tpl " на "-o:CSV", «text2.html» на «b8.csv», то выходной файл можно импортировать в excel.

cisco dhcp

Всем привет ранее мы закончили настраивать сеть для филиалов, и разобрались со статической маршрутизацией, но все это время настраивали компьютерам ip адреса в ручную. Для решения это задачи есть служба DHCP. Можно конечно использовать Windows DHCP, при наличии лицензии на Windows Server, но Cisco тоже умеет это делать на ура. Настроим давайте DHCP службу на Cisco, рассмотрим несколько вариантов.

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

Как работает dhcp сервер, ответ на этот вопрос очень простой. Когда компьютер появляется в локальной сети, первым делом он отсылает в сеть широковещательный запрос, по всем кто в сети. Данный пакет называется DHCPDISCOVER, в котором он спрашивает ребята есть у вас тут DHCP, если да то дай как мне ip адрес. Если HDCP сервер в локальной сети есть, то он отвечает ему пакетом DHCPOFFER, в котором говорит вот я есть, вот тебе ip адрес, будешь брать? Компьютер получив пакет DHCPOFFER, отсылаем ему ответ в виде пакета DHCPREQUEST в котором говорит, отлично я беру это ip адрес запиши его за мной, на что DHCP получив этот пакет, отвечает пакетом DHCPACK в котором говорит что записал, что это ip адрес теперь твой. Вот весь принцип.

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

В своей практике я встречал еще вот такие пакеты от dhcp сервера:

  • DHCPDECLINE — это пакет в котором клиент определил, что ip адрес, от DHCP сервера в момент предложения, уже используется кем то, и тогда будет сгенерирован новый запрос на другой ip адрес
  • DHCPRELEASE — данный пакет появляется когда клиент освобождает IP адрес
  • DHCPRENEW — Это пакет содержит в себе запрос на обновление и продление аренды ip адреса
  • DHCPINFORM — пакет, направленный клиентом к серверу DHCP, чтобы получить от него детальную информацию, пример, где находится запасной DHCP сервер в сети

Настройка dhcp cisco

Настройка для маленького офиса

У нас есть филиал, 3 компьютера, один коммутатор второго уровня Cisco 2960 и роутер Cisco 1841. Все компьютеры находятся в нативном vlan (vlan по умолчанию). Вот схема сети.

Настройка для маленького офиса

Приступаем к настройке Cisco 1841. Поднимем у него порт fa0/0 и назначим ему ip 192.168.1.1/24

enable
conf t
in fa0/0
no shutdown
ip address 192.168.1.1 255.255.255.0
exit

настройка cisco 1841

Видим, что порт загорелся зеленым.

поднять порт cisco 1841

Далее создаем pool ip адресов на cisco dhcp server, для этого вводим команду: DHCP_192.168.1.0 это имя

Посмотрим теперь доступные команды

cisco dhcp server

Задаем в начале сеть которую будем раздавать, естественно она должна быть в том же диапазоне что и ip адрес устройства Cisco. Создаю сеть 192.168.1.0

Теперь давайте исключим из созданного пула первые 50 ip адресов, которые отдадим для серверов и про запас.

ip dhcp excluded-address 192.168.1.1 192.168.1.50
exit
do wr mem

Проверка получения ip адреса

Берем первый компьютер, вводи на нем команду ipconfig чтобы посмотреть текущие настройки. Как видим, ip адрес не назначен. Так как это у меня симулятор Cisco packet tracer 6.2, то у него по умолчанию стоит статический ip в настройках, поставлю получение автоматически с DHCP.

Проверка получения ip адреса

Делаем снова ipconfig и видим, что получили ip адрес 192.168.1.51

Проверка получения ip адреса-01

Делаем на двух других компьютерах такие же настройки, и пробуем пропинговать друг друга, видим, все ок пинги доходят.

Проверка получения ip адреса-02

В малом офисе мы настроили dhcp сервер cisco.

Настройка DHCP для среднего офиса

С маленьким офисом мы разобрались, теперь рассмотрим схему среднего офиса. У нас тут уже есть сигментирование в виде vlan (2,3,4). У нас в схеме есть роутер Cisco 2911, на котором будет маршрутизация локального трафика между vlan, коммутатор второго уровня Cisco 2960 на уровне доступа конечных устройств, сервер DHCP в vlan 4, с которого мы и будем получать ip адреса.

Настройка DHCP для среднего офиса

Настроим Cisco 2960

Первым делом на коммутаторе нужно создать vlan 2,3,4 и зададим им имена.

enable
conf t
vlan 2
name VLAN2
exit
vlan 3
name VLAN3
exit
vlan 4
name VLAN4
exit

Создаем vlan cisco 2960

Теперь настроим порты коммутатора и добавим их в нужный vlan.

int range fa0/1-2
switchport mode access
switchport access vlan 2
exit

VLAN3 у меня порты fa0/3 и fa0/4

int range fa0/3-4
witchport mode access
switchport access vlan 3
exit

VLAN4 у меня порт fa0/5

int fa 0/5
switchport mode access
switchport access vlan 4
exit

Настройка DHCP для среднего офиса-03

Теперь настроим порт gi0/1 который подключается к роутеру Cisco 2911, и режим работы у него будет trunk. разрешим через trunk все 4 vlan.

int gi0/1
switchport mode trunk
switchport trunk allowed vlan 2,3,4
exit

Настроим Cisco 2911

Теперь приступим к настройке Cisco 2911, на нем будет маршрутизация трафика между vlan, значит для этого мы должны создать их на нем, задать им ip адреса, которые будут выступать в роли шлюзов.Вот общая схема.

общая схема для среднего офиса

первым делом мы поднимаем порт, так как на всех роутерах Cisco они в выключенном состоянии.

Включаем порт Cisco 2911

Создаем sub интерфейс vlan2
int gi0/0.2
encapsulation dot1Q 2
ip address 192.168.2.251 255.255.255.0
exit
Создаем sub интерфейс vlan3
int gi0/0.3
encapsulation dot1Q 3
ip address 192.168.3.251 255.255.255.0
exit
Создаем sub интерфейс vlan4
int gi0/0.4
encapsulation dot1Q 4
ip address 192.168.4.251 255.255.255.0
exit
Включаем маршрутизацию
ip routing
do wr mem

Создаем sub интерфейс

Проверим теперь с компьютера где ip адрес 192.168.2.1 пропинговать шлюз и соседей по vlan 3,4. Видим, что все отлично работает, связь проверена. Осталось теперь настроить DHCP сервер.

ping vlan cisco

DHCP настройка

Напомню, что службой DHCP, может быть компьютер с роль на Windows Server (тут это компьютер или виртуальная машина, где есть много сетевых интерфейсов, каждый из которых подключен к нужному vlan, в который DHCP и отдает свои ip адреса), само устройство cisco, либо сторонний продукт на базе linux, вариантов много, в своей тестовой среде у меня это будет сервер в cisco packet tracer, у него есть статический ip адрес 192.168.4.1. Я создаю новый пул для VLAN2, раздавать я буду с 192.168.2.50 до 192.168.2.250, задаю шлюз по умолчанию и dns сервер.

DHCP настройка-01

жмем Add и добавляем наш пул. Так же создаем пул для 3 VLAN.

DHCP настройка-02

Теперь вспомним, что у нас DHCP сервер в другом vlan, а это значит что широковещательные запросы DHCPDISCOVER из других vlan он не видит, решить эту проблему нам поможет dhcp relay.

dhcp relay настройка

cisco dhcp relay в двух словах это ретранслятор, который отлавливает пакеты DHCPDISCOVER и перенаправляет их DHCP серверу, за счет этого можно уменьшить количество DHCP серверов. Приступим и настроим наш dhcp relay.

Теперь у нас в каждом vlan появился ретранслятор на наш dhcp сервер. Так же в целях безопасности вы можете настроить, чтобы у вас доверенным был только определенный dhcp сервер с определенного порта, а все остальные будут игнорироваться. Возьмем за тест компьютер со статическим ip 192.168.2.1, посмотрим текущие настройки сети командой ipconfig, ставим автоматическое получение, и видим что получили 192.168.2.50. DHCP в vlan2 работает.

ipconfig

Полезные команды cisco dhcp

Смотрим статистику по пакетам и привязкам

Полезные команды cisco dhcp-01

Смотрим кому какой ip адрес присвоен

Полезные команды cisco dhcp-02

Вот так вот работает и настраивается DHCP и DHCP Relay в сети. Надеюсь было позновательно.

Чтобы компьютеры работали в сети им как минимум нужно настроить следующие параметры:

  • IP адрес
  • Маску подсети
  • Шлюз по умолчанию
  • DNS сервер

Само собой обычный пользователь даже не знает, что что-то подобное существует и уж тем более как все это настроить. А для администратора это нудное и утомительное занятие, особенно когда в сети 100 и более компьютеров.

На помощь приходит технология DHCP (Dynamic Host Configuration Protocol). Суть ее работы заключается в том, в сети присутствует DHCP сервер, который хранит и выдает сетевые настройки при обращении к нему сетевых устройств, которые называются DHCP клиенты.

Хост, который не имеет сетевой конфигурации отправляет широковещательный запрос. На этот запрос реагирует только DHCP сервер. Принцип работы выглядит следующим образом:

Запрос DHCP Discover

Ответ DHCP Offer

Запрос DHCP Request

Подтверждение DHCP ACK


А вот как выглядит этот процесс в программе Wireshark:

Запрос DHCP Discover

Предложение сервера DHCP Offer

Принятие предложения сервера DHCP request

Подтверждение сервера DHCP ACK

Обычно в сети имеется один DHCP сервер, однако в больших корпоративных сетях используют 2 и более серверов. Они могут работать по принципу master-slave либо независимо друг от друга и обслуживать отдельные сегменты сети.

В небольших сетях роль DHCP сервера, как правило, берет на себя сам маршрутизатор.

Настройка сервера DHCP

DHCP сервер может быть запущен как на отдельном специализированном сервере (обычно под управлением Linux или Windows) либо на маршрутизаторе.

Рассмотрим настройку на роутере. Компания Cisco рекомендует использовать специальные хосты, называемые DHCP database agent (агент, хранящий базу данных DHCP, то есть таблицу назначенных IP адресов и необходимые параметры). В качестве хранилища выступает сервер FTP/TFTP.

Для чего необходимо данное устройство? Может ли роутер хранить свою базу данных локально?

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

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

Что произойдет, если в сети устройству статически настроили адрес, а роутер захочет назначить его другому устройству?

Перед тем, как назначить выбранный адрес, сервер всегда посылает Echo Request (Ping) по данному адресу. Если адрес “молчит”, то он свободный, в противном случае адрес временно удаляется из пула и выбирается новый.

Чтобы DHCP сервер работал сначала настроим и включим интерфейс локальной сети. Интерфейс должен иметь адрес, потому что маршрутизатор будет раздавать адреса только на том интерфейсе, чей адрес соответствует адресам пула.

Если мы собираемся использовать Database agent, то для него необходимо настроить сетевой путь в нашем сервере:

Если агента базы данных нет, то отключаем логирование конфликтных событий:

Делается это для того, чтобы роутер не исключал адреса из пула при возникновении коллизий. Если такие коллизия случаются часто, то это может исчерпать весь пул адресов (конфликтные адреса будут просто удалены из пула) и администратору придется вручную устранять проблемы. Поэтому на всякий случай отключаем логирование.

Теперь мы готовы создать и сам пул адресов:

Вводим основные параметры сети:

Следует знать, что IP адрес выдается на временное пользование. По истечении срока аренды (lease time) хост должен снова запросить адрес. Срок аренды можно настроить параметром:

Можно ли настроить несколько пулов?

Да, можно, например, для разных VLAN.

Можно ли исключить из раздачи определенные адреса?

Да, можно. Делается это так:

С помощью вышеуказанной команды мы исключаем сразу несколько адресов с начального по конечный.

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

Помимо перечисленных выше параметров DHCP поддерживает и другие параметры, например, имя домена, адрес FTP/TFTP серверов, статический маршрут и так далее.

Просмотр сведений о DHCP

После того, как сервер настроен и работает самое время проверить его работу, а также конфликты.

Список уже назначенных адресов, время аренды, МАС адреса узлов:

Список конфликтных (удаленных из пула) адресов:

База данных DHCP:

Статистика работы сервера:

Статическая привязка адреса

Иногда может понадобиться статическая привязка адреса к определенному компьютеру. Для этого создадим отдельный пул, в котором укажем IP и МАС адреса хоста:

Что такое идентификатор хоста?

Некоторые хосты при запросе адреса посылают серверу свой идентификатор, который передается в опции 61 (Option 61).

Что из себя представляет идентификатор?

Он состоит из 2-х частей: типа интерфейса и МАС адреса хоста. Например, хост имеет МАС адрес 00:50:79:66:68:00 и работает в Ethernet сети. Тогда его идентификатор будет равен 0100.5079.6668.00, где первые 2 цифры 01 указывают на тип интерфейса Ethernet, а остальные - на МАС адрес хоста.

Увидеть идентификатор можно в самом роутере с помощью отладчика пакетов DHCP сервера, а также в сетевом дампе. Отладчик можно запустить командой

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