ZY71 发表于 2016-9-11 12:38:15

WIN7下如何用批处理设置IP地址和DNS?

       希望用批处理实现一个功能,就是当使用有线网络时(此时无线网络已断开),自动将无线网络设置为自动获取,然后将有线网络的IP和DNS设置为固定的参数。反过来当使用无线网络时(此时有线已断开),自动将有线网络设置为自动获取,然后将无线网络的IP和DNS设置为固定参数。
        以下是使用有线网络时的批处理:
@echo off

        netsh interface ipv4 set address name="无线网络连接" source=dhcp
        netsh interface ipv4 set dns name="无线网络连接" source=dhcp

        echo 正在配置本地连接IP地址,请稍候...
        netsh interface ipv4 set address "本地连接" static 192.168.0.103 255.255.255.0 192.168.0.1
        echo 正在配置本地连接主DNS,请稍候...
        netsh interface ip set dns name="本地连接" source=static addr=8.8.8.8
        echo 正在配置本地连接备用DNS,请稍候...
        netsh interface ip add dns name="本地连接" addr=192.168.0.1 index=2

        pause
       以下是使用无线网络时的批处理:
@echo off

        netsh interface ipv4 set address name="本地连接" source=dhcp
        netsh interface ipv4 set dns name="本地连接" source=dhcp

        echo 正在配置无线网络连接IP地址,请稍候...
        netsh interface ipv4 set address "无线网络连接" static 192.168.0.103 255.255.255.0 192.168.0.1
        echo 正在配置无线网络连接主DNS,请稍候...
        netsh interface ip set dns name="无线网络连接" source=static addr=8.8.8.8
        echo 正在配置无线网络连接备用DNS,请稍候...
        netsh interface ip add dns name="无线网络连接" addr=192.168.0.1 index=2

        pause

        以上功能如果有线网络插着,无线连接也正常时功能是正常的。
        但是当使用有线网络时,无线网络是断开的,那么将无线网络设置为自动获取这一步就会不成功,只能清除DNS的内容,IP地址是清不掉的。反之使用无线网络时也是一样的效果。
        分析后觉得可能是当某一个网卡不在使用状态时,DHCP发出去的包会不成功,所以就无法设置成功。
        不知道有没有坛友对这块比较熟悉呢?谢谢

kydl2345 发表于 2016-9-11 13:14:17

以前用批处理 后来用NetSetMan

ZY71 发表于 2016-9-11 13:15:42

刚试了一下先把不用的网卡关掉,再开,然后再设置为自动获取就可以了

jimlovecat 发表于 2016-9-11 14:08:40

可以试试 IPsettER_Pro.exe

justdomyself 发表于 2016-9-11 15:38:19

我一块网卡这样用好好的

mcu5i51 发表于 2016-9-11 17:00:04

不明白要做什么?
IPX属性中有一个备用选项,把这个填好,自动IP时如果没有DHCP的话就会用这个设置;
页: [1]
查看完整版本: WIN7下如何用批处理设置IP地址和DNS?