打印

[转帖] 使用脚本自动修改ip设置

本主题由 mwpq 于 2007-11-7 09:00 关闭

使用脚本自动修改ip设置

changeip.vbs
" j0 ?- p+ `) b" J/ \/ Z
( s, ?; E; u2 f4 |! D( \1 N+ J+ E( X( U# ]5 C9 d- H6 o! A
6 U1 d! s5 c* X U' O
5 h( _: {$ @' d$ I% C6 l8 Y. ?+ B/ j

: C$ e9 a3 T- W t7 vstrComputer = "."Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")Set colNetAdapters = objWMIService.ExecQuery _ ("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")For Each objNetAdapter in colNetAdapterssip=objNetAdapter.IPAddressstrIPAddress = sip '保持原来的ip,如果需要修改ip为192.168.0.200:strIPAddress = Array("192.168.0.200")strSubnetMask = Array("255.255.255.0")strGateway = Array("192.168.0.254") '修改网关为192.168.0.254strGatewayMetric = Array(1) errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask) errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric) If errEnable = 0 Then WScript.Echo "The IP address has been changed." Else WScript.Echo "The IP address could not be changed." End If exit for '只修改第一个网卡的设置Next

TOP

Dim Num
$ G2 G9 k9 q* X0 k" U# [2 w- ENum=Inputbox ("程序员:xxxxx"+chr(10)&chr(13)+"QQ:xxxxxx"+chr(10)&chr(13)+"必须是小于200以下的数字"+chr(10)&chr(13)+"请输入机器号","xxxxxx") 8 W3 P: L4 I; K' a. s X
dim Name
$ S. k3 C! s9 [7 l* g" nif Num<10 then
+ X' V" V) n' {8 j8 i; r$ aName="XD00"
) S6 {7 D& B4 f( ~9 y5 f% celse
- H- t7 `0 I2 f" Wif Num<100 then ! K* x2 P. A' o
Name="XD0" # ?: s% L8 ?3 @& D
else
& C& [' y2 t: {1 bName="XD" # n3 J- V3 W% l) B8 g! p; j3 s
end if % f1 N% ]6 Y2 i8 _$ z$ Z
end if
! M% H y/ M) e
) R* i+ |6 ?* j9 NSet Sh = CreateObject("WScript.Shell")
* D( O5 @9 z8 I! [7 l/ P9 WSh.RegWrite "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName\ComputerName",Name&Num,"REG_SZ" : q1 q6 u. j, y
Sh.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\NV Hostname",Name&Num,"REG_SZ"
Y5 j+ |3 l7 gSh.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Hostname",Name&Num,"REG_SZ"
5 ^/ l- i3 i, {" h% c2 ~Set sh = Nothing 6 o2 S( `2 Y. @/ n
Set oShell = Nothing
g) q9 h' O$ H. I: J& h( D* |( o* lstrComputer = "."
* {* L$ U" j/ _7 n4 }Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
5 _2 }, q: O1 D8 ]Set colNetAdapters = objWMIService.ExecQuery _ 0 E' [4 E7 R- s$ k* K( ^, {
("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
& t& y) O' `7 n5 V. j; j) ^strIPAddress = Array("192.168.1."&Num)
4 a# b2 [, [( e9 R) p. lstrSubnetMask = Array("255.255.255.0")
3 B& s ^& m- f1 A: G- KstrGateway = Array("192.168.1.1") ! @- b" Q4 ?3 M1 p `/ Y V
For Each objNetAdapter in colNetAdapters
, }( d C2 b/ l) D* D: `- eerrEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)
! C0 t, @+ @/ w9 U0 {errGateways = objNetAdapter.SetGateways(strGateway) 8 f8 T1 M( T' N( M* T! f; z
/ w3 N" y1 z& m9 u0 ~1 Y2 g0 B, u
Dim dns
& [3 E! p8 x# A: f' t2 Vdns=Array("211.93.80.129","211.94.33.193")
; E: j5 z( L/ A, Lerr=objNetAdapter.SetDNSServerSearchOrder(dns)
0 Z' T& l) T Q' d/ I3 k* M& L( Q'msgbox(err) 4 K- G) Q* g% _- O" o

, ?" b$ y' A& l4 O$ U' ]Next % h; D! `2 r* W8 k" G
Set objWMIService = GetObject("winmgmts:" _
( Z8 T0 S& j, ^( p7 b* L& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") " a! h( S8 ?6 \0 l+ V' [# r) Q
Set colComputers = objWMIService.ExecQuery _
7 T1 t8 N) i4 ^$ x ~1 i& b("Select * from Win32_ComputerSystem") & n! t5 q% L2 A) y+ l9 Y! F0 |0 x# J
For Each objComputer in colComputers
- f. {! Y# \3 k+ C: _' ]'ObjComputer.Rename("game" &Num)
9 L9 x* r8 K* W4 k$ F: wNext 4 |& ]# U3 A* i4 n
Set objNetworkSettings = objWMIService.Get("Win32_NetworkAdapterConfiguration") . \8 X8 X8 m. A6 y
objNetworkSettings.SetIPXVirtualNetworkNumber(Num)
1 i' x B$ @9 F0 Y3 w2 k+ _
, [& G% R `* S" ?
$ f* F6 m; H p# Z# ]4 D& O" |5 k B
. w0 y/ d4 m! o4 o% }/ C( ]
, g6 ?' n/ Y; x Y' A

8 a' h( ^# W& ?! Y, i0 d4 k4 v9 Z6 i! {

! u' W- t; V& Q7 G这个可以修改机器名为数字呢。

TOP