利用netsh编写网卡动态配置的脚本

王朝other·作者佚名  2006-04-07
窄屏简体版  字體: |||超大  

当年华为和思科闹的沸沸扬扬的官司里,有一项是起诉华为的CLI和思科的雷同。其实,CLI这东西,不仅仅是华为这么干,其他的CLI大抵类似,这不,windowsXP和2000都有个netsh.exe程序,就是微软版本的网络配置CLI。

正好有个朋友问我,能不能写个程序切换网卡配置?要求能够在两种配置下切换:一是动态获取网址,二是静态配置。我一想,netsh不正好干这事情吗?打开netsh,好多年没有摆弄过路由器了,netsh的风格还是不由得让我想起了不少往事。

干这件事其实很简单。我的机器是DHCP分配地址的,先看看配置是什么,直接键入:

interface ip

dump

去掉注释,得到下面配置:

pushd interface ip

reset name="本地连接" #这行是我加的

set address name="本地连接" source=dhcp

set dns name="本地连接" source=dhcp register=PRIMARY

set wins name="本地连接" source=static addr=192.168.100.10

add wins name="本地连接" addr=192.168.100.11 index=2

popd

存到dhcp.cfg文件里,再写一个dhcp.bat,里面只有一句话:netsh exec dhcp.cfg。

再通过控制面板,去静态配置IP,重复前面的动作,又得到一份配置:

pushd interface ip

reset name="本地连接" #这行是我加的

set address name="本地连接" source=static addr=192.168.66.149 mask=255.255.255.0

set address name="本地连接" gateway=192.168.66.1 gwmetric=0

set dns name="本地连接" source=static addr=192.168.100.10 register=PRIMARY

add dns name="本地连接" addr=192.168.100.11 index=2

set wins name="本地连接" source=static addr=192.168.100.10

add wins name="本地连接" addr=192.168.100.11 index=2

popd

同样,建一个static.bat文件,里面也只有一句话:netsh exec static.cfg

现在,要切换配置的话,只要双击相应的bat文件就是了。如果有多份配置,做法雷同。

netsh是强大的,全功能的工具。如果你想把机器变成一台路由器也可以通过它来完成,对于那些熟悉路由器的人来说,这简直是小菜一碟。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航