Windows 下使用脚本快速切换网络配置
# 鬼仔:这样用起来netsh更方便点,原作者是用来在不同的环境中切换网络设置用的。
作者:北极冰仔
在不同地方上网总要来回改网络配置,手敲一堆 IP、DNS 甚是麻烦,是否可以把常用的网络配置做成脚本?Google 后有收获。
(此处删节数百言,寡人表达能力待提升空间实在太大)
这篇写得非常好,特此推荐:《NetSH 使用方法》。文章内容有点多,为节约大家宝贵时间,下面贴个示例脚本抛砖引玉:
int ip
set address name=”Local Area Connection” source=static addr=192.168.2.226 mask=255.255.255.0
set address name=”Local Area Connection” gateway=192.168.2.254 gwmetric=0
set dns name=”Local Area Connection” source=static addr=208.67.222.222 register=PRIMARY
add dns name=”Local Area Connection” addr=202.114.xxx.xxx index=2
注解:
1. 以 .sh 扩展名保存脚本,如 D:\lab.sh。
2. name=”XXX” 中的 XXX 是待修改网络连接的名称。
3. 安全起见,我隐去了最后一行代码中的副 DNS 地址,请各位视实际情况修改。
4. 新建一 .bat 文件,如 lab.bat,写入
@echo off
netsh exec d:\lab.sh
5. 执行 lab.bat 即可将网络配置快速切换至 lab 环境。
这个xfocus的isno写过。
还在NT时代的时候,sinbad就已经出过了
我这里网络环境还要复杂一点,还要设置代理,我写了下面两个vbs脚本来启用禁用IE代理,偷懒配合NetSetMan使用的,XP下有效,Vista下不知道为什么不能在重启之前生效
‘ Enable IE Proxy Setting
On Error Resume Next
Dim WSHShell
Set WSHShell = WScript.CreateObject(“WScript.Shell”)
WSHShell.RegWrite “HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable”, &H00000001, “REG_DWORD”
Set WSHShell = Nothing
WScript.Quit(0)
‘ Disable IE Proxy Setting
On Error Resume Next
Dim WSHShell
Set WSHShell = WScript.CreateObject(“WScript.Shell”)
WSHShell.RegWrite “HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable”, &H00000000, “REG_DWORD”
Set WSHShell = Nothing
WScript.Quit(0)