有的时候,我们需要经常更换本机IP地址,比如设置使用不同的代理服务器等:
可以使用以下的脚本:
Rem Script created: 24.04.2007 09:54
Rem Author: Sam Huang
strComputer = "."
strAnswer=MsgBox ("Use 192.168.20.57 / 24?" & vbCrLf & vbCrLf & "If not, you''ll be prompted to specify", vbYesNoCancel)
if strAnswer = vbYes then
Set objWMIService = GetObject("winmgmts://" & strComputer & "/root/cimv2")
Set colNetAdapters = objWMIService.ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
strIPAddress = Array("192.168.20.57")
strSubnetMask = Array("255.255.255.0")
strGateway = Array("192.168.20.1")
arrDNSServers = Array("192.168.1.10")
strGatewayMetric = Array(1)
For Each objNetAdapter in colNetAdapters
errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)
errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)
objNetAdapter.SetDNSServerSearchOrder(arrDNSServers)
If errEnable = 0 Then
WScript.Echo "The IP address has been changed."
Else
WScript.Echo "The IP address could not be changed."
End If
Next
elseif strAnswer = vbNo then
Set objWMIService = GetObject("winmgmts://" & strComputer & "/root/cimv2")
Set colNetAdapters = objWMIService.ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
strIPAddress = Array("192.168.20.57")
strSubnetMask = Array("255.255.255.0")
strGateway = Array("192.168.20.2")
arrDNSServers = Array("192.168.1.10")
strGatewayMetric = Array(1)
For Each objNetAdapter in colNetAdapters
errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)
errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)
objNetAdapter.SetDNSServerSearchOrder(arrDNSServers)
If errEnable = 0 Then
WScript.Echo "The IP address has been changed."
Else
WScript.Echo "The IP address could not be changed."
End If
Next
else
msgbox ("Operation Cancelled by User")
end if