Сервер в кармане, или просто о сложном!

главная - Статьи - Microsoft Windows



Работа с DHCP сервером из консоли

Я сразу предполагаю что DHCP сервер у вас установлен на Windows платформе, вы ознакомились с основными пунктами меню MMC, прочувствовали (особенно  если  до  этого  админили  например  dhcpd под freeBSD).
Ну ничего, в принципе и здесь можно сделать немало..

Открываем консоль, а именно пуск-выполнить набиваем cmd и вперед!

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

netsh dhcp show server - выдаст нам кто есть у нас сервер DHCP.

netsh dhcp server dump - всю конфигурационную информацию сервера DHCP.

netsh dhcp server 192.168.0.11 add scope 192.168.0.0 255.255.0.0 AllMintRange “Все возможные адреса” - выдать область.

netsh dhcp server 192.168.0.11 scope 192.168.0.0 add iprange 192.168.0.1 192.168.254.254 - выдать диапазон адресов на выдачу (простите за каламбур).

netsh dhcp server 192.168.0.11 scope 192.168.0.0 add excluderange 192.168.50.1 192.168.50.254 - исключить адрес из выдачи.

netsh dhcp server 192.168.0.11 scope 192.168.0.0 set optionvalue 003 IPADDRESS 192.168.60.1 - назначать шлюзом по умолчанию адрес 192.168.60.1

netsh dhcp server 192.168.0.11 scope 192.168.0.0 add reservedip 192.168.93.95 000795DA08FA tester “Test PC” DHCP - зарезервировать IP  192.168.93.95 для mac-адреса 000795DA08FA под именем tester  с примечанием Test PC

У меня стояла задача привязать в своей сети к каждой машинке свой адрес. Вручную это делать было возможно, но когда больше 100 машинок это становится несколько утомительно. Решение было найдено так. Была написана небольшая программка для сканирования сети и вывода информации в текстовый файл.

Программку можно скачать с нашего сайта Здесь.  Для обработки этого файла я написал bat-ник. Примерное содержание его такое:

@echo off@echo Enter filename.csv as a parameter.@echo like this c: eserv_ip.cmd "ip,hostname,description,,mac.csv"for /f "eol=: delims=, tokens=1,2,3,4,5* skip=1" %%a in (%1) do (@echo @Echo off> %%b.cmd@echo set DHCP_Server_IP=192.168.0.1>> "%%b.cmd"

@echo set Scope=192.168.0.0>> "%%b.cmd"

@echo set ClientIP=%%a>> "%%b.cmd"

@echo set ClientMAC=%%d>> "%%b.cmd"

@echo set Client_HostName=%%b>> "%%b.cmd"

@echo set Client_Description=%%c>> "%%b.cmd"

@echo netsh dhcp server %%DHCP_Server_IP%%  scope  %%Scope%% add reservedip %% Client_IP%% %%Client_MAC%%  %%Client_HostName%%  %%Client_Description%% >> "%%b.cmd"

"%%b.cmd" >> "reserved ip added.log"
del "%%b.cmd"
)
Думаю вы без труда можете доработать под свои нужды, например для генерации таких файлов и сохранения на будущее, дабы выбрать и решить что менять.



Авторизуйтесь для добавления комментариев!


    забыли пароль?    новый пользователь?