1

Тема: JS: Как изменить адреса DNS на сетевом адаптере.

Вопрос такой: как изменить ОБА адреса DNS на адаптере?
использовал такой код:

en.item().SetDNSServerSearchOrder(["192.168.0.8", "192.168.0.2"]);

где en.item() - элемент коллекции класса Win32_NetworkAdapterConfiguration
К сожалению такой код может изменить значения DNS, если только на адаптере были прописаны оба DNS.
Если был прописан один, то таким образом меняется только первичный DNS-сервер, поле вторичного сервера так и остаётся пустым
Настройки сетевых адаптеров статические, DHCP не поднят.

2

Re: JS: Как изменить адреса DNS на сетевом адаптере.

sorry... небольшое дополнение, на некоторых адаптерах всё проходит ОК, даже, если не был указан вторичный DNS... пока разбираюсь.

3

Re: JS: Как изменить адреса DNS на сетевом адаптере.

Есть же программа NetSetMan для этой цели.

4 (изменено: madjahed, 2018-05-28 15:33:31)

Re: JS: Как изменить адреса DNS на сетевом адаптере.

im2002, подойдет вариант на VBS?

strComputer = "."
Set objRegistry = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &strComputer & "\root\default:StdRegProv")
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colNetAdapters = objWMIService.ExecQuery ("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
Set WshShell = CreateObject("WScript.Shell")
strGatewayMetric = Array(1)
strDNS = Array("8.8.8.8", "8.8.4.4") 
For Each objNetAdapter in colNetAdapters
errDNS = objNetAdapter.SetDnsServerSearchOrder(strDNS)
Next