内容显示页
 
类别:服务器相关 | 浏览(403) | 2007-8-31 15:23:38 | 关闭广告

这是第一个版本,就是实现换IP功能,只换第一个发现的,如果只有一个网卡的话可以用这个

'/*=========================================================================
' * Intro       通过 WMI 改变网卡的IP地址 vbs版
' * FileName    ChangeIP.vbs
' * Author      yongfa365
' * Version     v1.1
' * WEB         http://www.yongfa365.com
' * Email       yongfa365@qq.com
' * FirstWrite  http://www.yongfa365.com/item/Use-WMi-Change-IP-VBS-yongfa365.html
' * LastModify  2007-12-29 13:57:50
' *==========================================================================*/

strIPAddress = Array("192.168.0.100","192.168.0.106") '修改后的ip,多个IP可以以","格开,可以写多个
strSubnetMask = Array("255.255.255.0","255.255.255.0") '子网掩码,配置同IP
strGateway = Array("192.168.0.1") '网关
arrDNSServers = Array("192.168.0.1", "221.12.1.228")'DNS,可以写多个

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colNetAdapters = objWMIService.ExecQuery ("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
For Each objNetAdapter in colNetAdapters
    'msgbox colnetadapters.count'看下有几块网卡
    'sip = Join(objNetAdapter.IPAddress, ",") '得到原来的ip
    'strIPAddress = sip '保持原来的ip
    strGatewayMetric = Array(1)
    errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)
    errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)
    errDNS = objNetAdapter.SetDNSServerSearchOrder(arrDNSServers)
    If errEnable = 0 Then
        WScript.Echo "IP修改成功"
    Else
        WScript.Echo "IP修改失败"
    End If

    Exit For '只修改第一个网卡的设置
Next

这是第二个版本,遍历所有网卡,如果这个网卡的IP里包含"116.90.185"的话,就换这个IP,比较智能化,当初设计出来是为了在移客户机器时,重启后会自动执行“启动”里的这个脚本,后来证明不成,因为客户没法登录,“启动”里的东西没法运行所以也就没法改IP了。

'/*=========================================================================
' * Intro       通过 WMI 改变网卡的IP地址 vbs版
' * FileName    ChangeIP.vbs
' * Author      yongfa365
' * Version     v2.0
' * WEB         http://www.yongfa365.com
' * Email       yongfa365@qq.com
' * FirstWrite  http://www.yongfa365.com/item/Use-WMi-Change-IP-VBS-yongfa365.html
' * LastModify  2007-12-31 14:57:50
' *==========================================================================*/

strIPAddress = Array("66.66.66.7") '修改后的ip,多个IP可以以","格开,可以写多个
strSubnetMask = Array("255.255.255.224") '子网掩码,配置同IP
strGateway = Array("66.66.66.1") '网关
arrDNSServers = Array("66.233.9.9")'DNS,可以写多个

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colNetAdapters = objWMIService.ExecQuery ("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
For Each objNetAdapter in colNetAdapters
    sip = Join(objNetAdapter.IPAddress, ",")
	if instr(sip,"116.90.185")<>0 then
	    strGatewayMetric = Array(1)
	    errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)
	    errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)
	    errDNS = objNetAdapter.SetDNSServerSearchOrder(arrDNSServers)
	end if
Next

这是第三个版本,遍历所有网卡,如果这个网卡的IP里包含"116.90.185" 并且 时间到了预先设定好的时间,就换这个IP,测试成功,唯一不足的地方是,在运行这个脚本后不能重启机器,重启后这个脚本就运行不了了。但总的来说这个是最适用的。

'/*=========================================================================   
' * Intro       通过 WMI 改变网卡的IP地址 vbs版   
' * FileName    ChangeIP.vbs   
' * Author      yongfa365   
' * Version     v1.0   
' * WEB         http://www.yongfa365.com   
' * Email       yongfa365@qq.com   
' * FirstWrite  http://www.yongfa365.com/item/Use-WMi-Change-IP-VBS-yongfa365.html   
' * LastModify  2007-1-3 14:57:50   
' *==========================================================================*/   
  
strIPAddress = Array("66.66.66.7") '修改后的ip,多个IP可以以","格开,可以写多个
strSubnetMask = Array("255.255.255.224") '子网掩码,配置同IP
strGateway = Array("66.66.66.1") '网关
arrDNSServers = Array("66.233.9.9")'DNS,可以写多个

strComputer = "."  
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")   
Set colNetAdapters = objWMIService.ExecQuery ("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")   
For Each objNetAdapter in colNetAdapters  
    sip = Join(objNetAdapter.IPAddress, ",")
	if instr(sip,"116.90.185")<>0 then
		do while 1
			if (now-#2008-1-3 23:00:00#) >0 then '关机时间
			    strGatewayMetric = Array(1)   
			    errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)   
			    errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)   
			    errDNS = objNetAdapter.SetDNSServerSearchOrder(arrDNSServers)   
			    exit do
			else
			    Wscript.Sleep 60*1000
			end if
		 loop
	end if
Next

引用本页地址:http://www.yongfa365.com/item/Use-WMi-Change-IP-VBS-yongfa365.html
 
 
相关链接
 
网友评论:
姓名: 记住我
网址:
邮箱:
内容:
验证码:  验证码图片看不清? 换张图试试
 
   
 
 
文章分类
 
   

Power by :柳永法(yongfa365)'Blog | Model by :hibaidu | CSS by:众网友 | 京ICP备07011491号  QQ:64049027  E-mail:64049027qq.com

本空间赞助商:北京中科兴联信息技术有限公司