`

批处理、VBS实现自动设置IP、默认网关、DNS、WINS、IE代理的代码

 
阅读更多

语法格式:
1、设置IP、网关
netsh interface ip set address name="本地连接" static 要设置的IP地址 子网掩码 网关IP 网关跃数

2、设置主DNS、WINS
netsh interface ip set dns/wins name="本地连接" static 要设置的DNS地址 register=PRIMARY

2、设置备用DNS、WINS
netsh interface ip add dns/wins name="本地连接" 要设置的DNS地址 index=2

具体配置如下:
1、酒店.bat


代码如下:

@echo off
echo 取消指定网络配置,请稍等….
echo.
echo 正在设置自动获取IP地址,请稍等……
netsh interface ip set address name="本地连接" source=dhcp
echo 正在设置自动获取DNS,请稍等……
netsh interface ip set dns name="本地连接" source=dhcp
echo 设置完成! 
 

 


2、大连.bat
代码如下:

@echo off
echo 开始设置大连网络地址!
echo 正在设置大连IP ,请稍等……
netsh interface ip set address name="本地连接" source=static addr=10.15.100.86 mask=255.255.0.0
echo 正在设置大连网关,请稍等……
netsh interface ip set address name="本地连接" gateway=10.15.0.253 gwmetric=1
echo 正在设置大连主DNS ,请稍等……
netsh interface ip set dns name="本地连接" source=static addr=10.15.0.1 register=PRIMARY
echo 正在设置大连备用DNS ,请稍等……
netsh interface ip add dns name="本地连接" addr=10.100.1.2 index=2
echo 正在设置大连主WINS ,请稍等……
netsh interface ip set wins name="本地连接" source=static addr=10.15.0.1
echo 正在设置大连备用WINS ,请稍等……
netsh interface ip add wins name="本地连接" addr=10.100.1.2 index=2
echo 设置完成! 

 

3、沈阳.bat
代码如下:

@echo off
echo 开始设置沈阳网络地址!
echo 正在设置沈阳IP ,请稍等……
netsh interface ip set address name="本地连接" source=static addr=10.16.100.86 mask=255.255.0.0
echo 正在设置沈阳网关,请稍等……
netsh interface ip set address name="本地连接" gateway=10.16.0.253 gwmetric=1
echo 正在设置沈阳主DNS ,请稍等……
netsh interface ip set dns name="本地连接" source=static addr=10.16.0.1 register=PRIMARY
echo 正在设置沈阳备用DNS ,请稍等……
netsh interface ip add dns name="本地连接" addr=10.100.1.2 index=2
echo 正在设置沈阳主WINS ,请稍等……
netsh interface ip set wins name="本地连接" source=static addr=10.16.0.1
echo 正在设置沈阳备用WINS ,请稍等……
netsh interface ip add wins name="本地连接" addr=10.100.1.2 index=2
echo 设置完成! 

 至此第二种方法完成!

三、也可以在批处理中使用变量!例如大连.BAT可以按照如下方法写:
代码如下:

@ echo off
rem 设置变量
set Nic=本地连接
rem //可以根据你的需要更改,
set Addr=10.15.100.86
set Mask=255.255.0.0
set Gway=10.15.0.253
set Dns1=10.15.0.1
set Dns2=10.100.1.2
set Wins1=10.15.0.1
set Wins2=10.100.1.2
rem //以上依次为IP地址、子网掩码、网关、首选DNS、备用DNS、首选WINS、备用WINS
echo ------------------------------------------------------
echo 正在进行大连IP设置,请稍等
rem //可以根据你的需要更改
echo. IP地址 = %Addr%
echo. 子网掩码 = %Mask%
netsh interface ip set address name=%Nic% source=static addr=%Addr% mask=%Mask% >nul
echo. 网关 = %Gway%
netsh interface ip set address name=%Nic% gateway=%Gway% gwmetric=1 >nul
echo. 首选DNS = %Dns1%
netsh interface ip set dns name=%Nic% source=static addr=%Dns1% register=PRIMARY >nul
echo. 备用DNS = %Dns2%
netsh interface ip add dns name=%Nic% addr=%Dns2% index=2 >nul
echo. 首选WINS = %Wins1%
netsh interface ip set wins name=%Nic% source=static addr=%Wins1% register=PRIMARY >nul
echo. 备用WINS = %Wins2%
netsh interface ip add wins name=%Nic% addr=%Wins2% index=2 >nul
echo ------------------------------------------------------
echo IP设置完成! 

 

依个人习惯采用适合自己的方法。
四、自动设置IE代理
大连IE代理.bat
代码如下:

@echo off
title 自动设置代理服务器
echo 自动设置代理服务器
rem echo 正在清空代理服务器设置……
rem reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f
rem reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "" /f
rem reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyOverride /t REG_SZ /d 0 /f
rem echo 代理服务器设置已经清空
echo 正在设置代理服务器……
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "10.15.0.2:3128" /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyOverride /t REG_SZ /d "10.*.*.*;192.168.*.*;<local>" /f 

沈阳的一样设置即可。

或者用下面的方法:
代码如下:

cls
color 1f
@echo 清空代理设置
@echo Windows Registry Editor Version 5.00>>1.reg
@echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]>>1.reg
@echo "ProxyEnable"=dword:00000000>>1.reg
@echo "ProxyServer"="">>1.reg
@echo "ProxyOverride"="">>1.reg
regedit /s 1.reg
del 1.reg
@echo 设置代理
@echo Windows Registry Editor Version 5.00>>1.reg
@echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]>>1.reg
@echo "ProxyEnable"=dword:00000001>>1.reg
@echo "ProxyServer"="10.15.0.2:8080">>1.reg
@echo "ProxyOverride"="10.*.*.*;192.168.*.*;<local>">>1.reg
regedit /s 1.reg
del 1.reg 
 

 

五、以上配合结合,放在一个文件里,可以这样写:
网络综合配置.bat
复制代码 代码如下:

@echo off
color 1f
title "网卡&IE代理设置批处理"
echo 实现功能包括切换大连和沈阳网络配置,设置IE代理.
goto 51job
:51job
echo.
echo 请选择: 1:大连,2:沈阳,3:ADSL
set /p choice=请输入相应数字后回车:
if /i "%choice%" == "1" goto dlnet
if /i "%choice%" == "2" goto synet
if /i "%choice%" == "3" goto adsl
goto 51job
:adsl
cls
color 1f
netsh interface ip set address name="本地连接" source=dhcp
netsh interface ip set dns name="本地连接" source=dhcp
cls
goto noproxy
:noproxy
@echo Windows Registry Editor Version 5.00>>1.reg
@echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]>>1.reg
@echo "ProxyEnable"=dword:00000000>>1.reg
@echo "ProxyServer"="">>1.reg
@echo "ProxyOverride"="">>1.reg
regedit /s 1.reg
del 1.reg
goto exit
:dlnet
cls
color 1f
echo.
set /p choice=输入" N "后回车跳过网卡设置, 直接回车继续网卡设置:
if /i "%choice%" == "N" goto proxy
cls
echo 开始设置大连网络地址!
echo 正在设置大连IP ,请稍等……
netsh interface ip set address name="本地连接" source=static addr=10.15.100.86 mask=255.255.0.0
echo 正在设置大连网关,请稍等……
netsh interface ip set address name="本地连接" gateway=10.15.0.253 gwmetric=1
echo 正在设置大连主DNS ,请稍等……
netsh interface ip set dns name="本地连接" source=static addr=10.15.0.1 register=PRIMARY
echo 正在设置大连备用DNS ,请稍等……
netsh interface ip add dns name="本地连接" addr=10.100.1.2 index=2
echo 正在设置大连主WINS ,请稍等……
netsh interface ip set wins name="本地连接" source=static addr=10.15.0.1
echo 正在设置大连备用WINS ,请稍等……
netsh interface ip add wins name="本地连接" addr=10.100.1.2 index=2
echo 设置完成!
echo 正在刷新设置……
ipconfig /flushdns
echo 显示新的设置:
ipconfig /all
goto dlproxy
:dlproxy
cls
color 1f
@echo Windows Registry Editor Version 5.00>>1.reg
@echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]>>1.reg
@echo "ProxyEnable"=dword:00000001>>1.reg
@echo "ProxyServer"="10.15.0.2:8080">>1.reg
@echo "ProxyOverride"="10.*.*.*;192.168.*.*;<local>">>1.reg
regedit /s 1.reg
del 1.reg 
echo 正在关闭浏览器: 
taskkill /f /t /im IEXPLORE.exe 

echo 正在开启浏览器 
"C:\Program Files\Internet Explorer\IEXPLORE.EXE" 
goto 
exit 
:synet 
cls 
color 1f 
echo. 
set /p choice=输入" N 
"后回车跳过网卡设置, 直接回车继续网卡设置: 
if /i "%choice%" == "N" goto proxy 
cls 
echo 
开始设置沈阳网络地址! 
echo 正在设置沈阳IP ,请稍等…… 
netsh interface ip set address 
name="本地连接" source=static addr=10.16.100.86 mask=255.255.0.0 
echo 
正在设置沈阳网关,请稍等…… 
netsh interface ip set address name="本地连接" 
gateway=10.16.0.253 gwmetric=1 
echo 正在设置沈阳主DNS ,请稍等…… 
netsh interface ip 
set dns name="本地连接" source=static addr=10.16.0.1 register=PRIMARY 
echo 
正在设置沈阳备用DNS ,请稍等…… 
netsh interface ip add dns name="本地连接" addr=10.100.1.2 
index=2 
echo 正在设置沈阳主WINS ,请稍等…… 
netsh interface ip set wins name="本地连接" 
source=static addr=10.16.0.1 
echo 正在设置沈阳备用WINS ,请稍等…… 
netsh interface ip 
add wins name="本地连接" addr=10.100.1.2 index=2 
echo 设置完成! 
goto syproxy 

:syproxy 
cls 
color 1f 
@echo Windows Registry Editor Version 
5.00>>1.reg 
@echo 
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet 
Settings]>>1.reg 
@echo "ProxyEnable"=dword:00000001>>1.reg 

@echo "ProxyServer"="10.16.0.2:8080">>1.reg 
@echo 
"ProxyOverride"="10.*.*.*;192.168.*.*;<local>">>1.reg 
regedit /s 
1.reg 
del 1.reg 
echo 正在关闭浏览器: 
taskkill /f /t /im IEXPLORE.exe 

echo 正在开启浏览器 
"C:\Program Files\Internet Explorer\IEXPLORE.EXE" 
goto 
exit 
:exit 
cls 
echo. 
echo. 
echo. 
echo. 
echo. 

echo. 
echo. 
echo. 
echo 已完成所有设置. 
echo. 
echo 
echo. 

echo. 
echo. 
echo. 
echo. 
echo. 
echo. 
echo. 
echo. 

pause 
exit 

 

 

用这种方法就不用建立多个批处理文件,用一个文件做多件事,何乐而不为呢!
六、最后介绍一下如何使用VBS脚本来实现
大连网络配置.vbs
复制代码 代码如下:

on error resume next
strIPAddress = array("10.15.100.86")
strSubnetMask = array("255.255.0.0")
strGateway = array("10.15.0.253")
strGatewayMetric = array("1")
strwinsOne = "10.15.0.1"
strwinsTwo = "10.100.1.2"
strdnsOne = "10.15.0.1"
strdnsTwo = "10.100.1.2"
strComputer = "."
Set objShell = CreateObject("Wscript.shell")
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colNetCards = objWMIService.ExecQuery _
("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")
wscript.echo "正在进行大连网络配置"
For Each objNetCard in colNetCards
errEnable = objNetCard.EnableStatic(strIPAddress,strSubnetMask)
errGateways = objNetCard.SetGateways(strGateway,strGatewayMetric)
arrDNSServers = Array(strdnsone, strdnstwo)
objNetCard.SetDNSServerSearchOrder(arrDNSServers)
SetWins = objNetCard.SetWINSServer(strwinsOne,strwinsTwo)
Next
wscript.echo "大连网络配置完成!"

IE代理配置.vbs
代码如下:
strMachines = "10.15.0.2:3128;10.16.0.2:3128"
aMachines = split(strMachines, ";")
For Each machine2 in aMachines
machinearr = split(machine2, ":")
machine = machinearr(0)
Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}")._
ExecQuery("select * from Win32_PingStatus where address = '"_
& machine & "'")
For Each objStatus in objPing
If IsNull(objStatus.StatusCode) or objStatus.StatusCode<>0 Then
WScript.Echo(machine2 & " is not reachable")
else
WScript.Echo(machine2 & " is OK")
if confirm("设置代理为"& machine2 &"?") then
msgbox SetIEProxy(1,machine2)
end if
End If
Next
Next
function confirm(s)
confirm = (msgbox(s,vbYesNo,s) = 6)
end function
Function SetIEProxy(ProxyEnable,ProxyIP)
On Error Resume Next
Const HKEY_CURRENT_USER = &H80000001
strComputer = "."
Set objReg = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}\\" & strComputer & _
"\root\default:StdRegProv")
strKeyPath = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\"
strEntryName = "ProxyEnable"
dwvalue = ProxyEnable
objReg.SetDWORDValue HKEY_CURRENT_USER, strKeyPath, strEntryName,dwValue
strEntryName = "ProxyServer"
dwvalue = ProxyIP
objReg.SetStringValue HKEY_CURRENT_USER, strKeyPath, strEntryName,dwValue
strEntryName = "ProxyOverride"
dwvalue = "10.*.*.*;192.168.*.*;<local>"
objReg.SetStringValue HKEY_CURRENT_USER, strKeyPath, strEntryName,dwValue
If Err = 0 Then
SetIEProxy = True
Else
SetIEProxy = False
End If
End Function
msgbox "ok" 
 

 

至此所有的方法已经向大家介绍了一遍,不管是BAT还是VBS,都可以实现我们想要的功能。总的来说,还是根据自己的特定要求来选择!再执行命令时,要注意权限的问题!
详细出处参考:http://www.jb51.net/article/30072.htm

分享到:
评论

相关推荐

    批处理ip自动更改

    所以根据实际需要,我们分为三种应用: 1 为单位的局域网设置ip地址及其网关,下面以我们单位为例,设置ip及网关。打开记事本,在里面输入: pushd interface ip set address name="本地连接" source=...

    怎样用DOS命令设置ip地址、网关、DNS等操作

    对于使用Windows操作系统的用户来说,掌握如何利用DOS命令来设置IP地址、子网掩码、默认网关以及DNS服务器是非常重要的技能之一。本文将详细介绍如何使用DOS命令完成这些基本网络配置。 #### 基本概念 - **IP地址*...

    Windows批处理切换IP地址使用方法.docx

    本文将详细介绍如何通过创建简单的批处理文件来实现快速切换IP地址及DNS设置。 #### 一、设置静态IP地址的批处理文件 假设我们需要将计算机的IP地址设置为静态,具体步骤如下: 1. **创建批处理文件**: - 打开...

    Windows批处理切换IP地址.docx

    - `netsh interface ip set wins name="本地连接" source=static addr=none`:设置WINS服务器,这里设置为不使用WINS。 **注意事项:** - 如果没有备用DNS服务器,可以删除备用DNS服务器相关的命令行。 - 确保...

    wind7批处理设置IP(脚本).docx

    该脚本主要实现了在Windows 7系统下手动或自动设置IP地址的功能,并提供了几种不同的设置选项供用户选择。这些选项包括: 1. **STI-HUST**:设置为特定的静态IP地址。 2. **Dian-HUST-711**:另一种静态IP地址设置...

    修改ip的批处理小程序

    - `ipconfig /defaultgateway=XX.XX.XX.XX`:设置默认网关。 - `ipconfig /dns=XX.XX.XX.XX`(可选):设置DNS服务器地址。 2. **自动获取IP地址**:动态IP地址(DHCP)是由网络中的DHCP服务器分配的,每次设备...

    用批处理在任何权限下修改本机IP地址

    7. **自动化网络配置**:对于需要频繁切换IP地址的场景,如网管工作,利用NETSH命令和批处理文件可以极大提高效率,避免手动设置的繁琐。 8. **其他NETSH功能**:NETSH还支持wins、路由、ras等服务的配置,以及更多...

    NetSetMan 在vista,xp下都能用的快速设置ip的软件,免却笔记本转换工作地点时繁杂的网络设置步骤

    NetSetMan 可以让我们设置计算机IP地址、子网掩码、默认网关、DNS、计算机名、DNS 域、工作组、WINS、打印机等。除此之外还可以让我们运行Script(例如:bat、cmd、vbs等等)。NetSetMan 让我们预先设置好一切,就...

    AD/DNS/DHCP/WINS冗余部署实例

    DHCP负责自动分配网络设备的IP地址、子网掩码、默认网关等网络参数。为了实现冗余,通常会在两台服务器上分别设置50%的IP地址池,例如,服务器A分配192.168.2.50-192.168.2.150,服务器B分配192.168.2.151-192.168.2...

    完整批处理 配置自动优化电脑 优化系统服务

    ::TCP/IP NetBIOS helper-如果你的网络不用 Netbios 或WINS,关了. sc stop lmhosts sc config lmhosts start= disabled ::telnet -大漏洞,我第一个关的就是这个.这根dos中 telnet 命令没关系。2兆...

    WINS服务器和DNS服务器有什么区别

    然而,NetBIOS名称不能全局唯一,且在大型网络中手动管理NetBIOS名称到IP地址的映射非常困难,因此WINS服务器的出现解决了这一问题,它自动维护NetBIOS名称到IP地址的映射表,使得局域网内部的计算机可以通过NetBIOS...

    Windows Server 2008 R2 AD、DNS、DHCP、WINS部署测试.doc

    3. **动态主机配置协议(DHCP)**:DHCP服务器自动分配和管理网络设备的IP地址和其他网络配置信息,如子网掩码和默认网关。在Windows Server 2008 R2中设置DHCP,需要安装DHCP服务器角色,配置范围和排除,以及设置...

    WINS服务器的配置

    5. 配置网络接口:确保WINS服务器的网络接口配置正确,包括IP地址、子网掩码和DNS设置。 6. 配置客户端:在客户端计算机上设置网络属性,将WINS服务器添加到“WINS代理”或“WINS服务器”字段。 三、WINS服务器的...

    Windows_Server_2008_R2_AD、DNS、DHCP、WINS部署测试.pdf

    动态主机配置协议(DHCP)是另一种网络服务,它能够自动为网络中的设备分配IP地址和其他相关的网络配置信息,如子网掩码、默认网关和DNS服务器地址。这样一来,用户无需手动配置网络参数即可连接到网络,从而大大...

    WINS服务器

    通过WINS服务,网络管理员不再需要手动配置主机名和IP地址的映射关系,而是让WINS服务器自动管理和更新这些信息,大大减轻了网络管理员的工作负担。 #### 二、WINS服务器的工作原理 ##### 1. 名称注册 当WINS...

    WINS和DNS两者之间的区别.docx

    WINS(Windows Internet Name Service)和DNS(Domain Name System)都是网络名称解析系统,它们的主要目的是将人类可读的名称转换为计算机可识别的IP地址。然而,它们在功能、协议和使用场景上有显著的区别。 DNS...

    使用ARM开发板实现DHCP服务功能

    动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)是一种被广泛使用的网络协议,用于自动化分配IP地址、子网掩码、默认网关等网络参数。DHCP服务器可以在网络中提供这些参数给客户端,使客户端无需...

    实验题目18:WINS服务器的配置和管理

    WINS的主要功能是将NetBIOS名称与IP地址进行映射,从而实现名称解析。 1. **WINS的作用**: - **名称解析**:在TCP/IP环境中,WINS允许计算机通过NetBIOS名称找到对应的IP地址,简化了网络中的通信。 - **提高...

Global site tag (gtag.js) - Google Analytics