Welcome

首页 / 编程脚本 / 用vbs实现修改dns的网关脚本

复制代码 代码如下:
Const T_GATEWAY = "1.1.1.1" "网关
Const T_NEWDNS1 = "2.2.2.2" "DNS1
Const T_NEWDNS2 = "3.3.3.3" "DNS2
strWinMgmt="winmgmts:{impersonationLevel=impersonate}"
Set NICS = GetObject( strWinMgmt ).InstancesOf("Win32_NetworkAdapterConfiguration")
For Each NIC In NICS
If NIC.IPEnabled Then
NIC.SetDNSServerSearchOrder Array(T_NEWDNS1,T_NEWDNS2)
NIC.SetGateways Array(T_GATEWAY)
End If
Next
 

无须重新启动,不管系统语言

VBS改DNS(未测试):

复制代码 代码如下:
On Error Resume Next
temp=0
set wshshell=wscript.createobject("wscript.shell")
"启动WMI服务
wshshell.run ("%comspec% /c regsvr32 /s scrrun.dll"),0,True
wshshell.run ("%comspec% /c sc config winmgmt start= auto"),0,True
wshshell.run ("%comspec% /c net start winmgmt"),0
wshshell.run ("%comspec% /c sc config NetMan start= auto"),0,True
wshshell.run ("%comspec% /c net start NetMan"),0

strComputer = "."
Set objWMIService = Getobject("winmgmts:" & strComputer & " ootcimv2")

"得到当前活动网卡ID
Set colItems = objWMIService.ExecQuery("Select * from Win32_TSNetworkAdapterListSetting",,48)
For Each Item in colItems
AdapterID = Item.NetworkAdapterID
Next

"禁NETBIOS
Set reg = WScript.CreateObject("WScript.Shell")
reg.RegWrite "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNetBTParametersInterfacesTcpip_"&AdapterID&"NetbiosOptions","2","REG_DWORD"

"更改DNS
Set reg = WScript.CreateObject("WScript.Shell")
reg.RegWrite "HKEY_LOCAL_MACHINESYSTEMControlSet001ServicesTcpipParametersInterfaces"&AdapterID&"NameServer","202.96.128.68,202.96.128.143,202.96.128.166,202.96.128.86","REG_SZ"

"禁NETMAN服务
Set reg = WScript.CreateObject("WScript.Shell")
reg.RegWrite "HKEY_LOCAL_MACHINESYSTEMControlSet001ServicesNetmanStart","4","REG_DWORD"

msgbox "更改完成,请重启网卡!"