Пакетный файл для установки адреса DNS, только если адаптер в настоящее время установлен статически - PullRequest
0 голосов
/ 14 января 2019

Первый пост, нуб при кодировании. Я ищу командный файл для установки DNS-серверов, если для параметра dhcp адаптера установлено значение Нет. У меня фактически это работает, но оно ограничено. В настоящее время, если он видит какой-либо адаптер с включенным dhcp как no, он устанавливает dns-сервер на всех сетевых устройствах. Мне нужно также проверить, не включен ли dhcp, и не является ли петлевой адаптер. Примерно так: если dhcp enabled = no и ip address <> 127.0.0.1, то установить адреса DNS-серверов.

Вот что у меня сейчас ...

@echo off
SET _DHCP=Maybe
For /f "tokens=2 delims=:" %%a in ('netsh interface ip show addresses ^|FIND "DHCP Enabled"') DO SET _DHCP=%%a
IF "%_DHCP%"=="No" Then

 @echo off
 set dnsserver=192.168.25.200
 set dnsserver2=192.168.25.201
 for /f "tokens=1,2,3*" %%i in ('netsh interface show interface') do (
 if %%i EQU Enabled (
 rem echo change "%%l" : %dnsserver%
 netsh interface ipv4 set dnsserver name="%%l" static %dnsserver% both
 netsh interface ipv4 add dnsserver name="%%l" %dnsserver2% index=2
 )
)

Если бы я мог просто выяснить, как получить IP-адрес в то же время, что и статус dhcp, я думаю, это дало бы мне то, что мне нужно.

Спасибо за помощь.

...