使用netsh interface ip set 命令实现快速切换IP地址及DNS地址

本文介绍了如何通过编写BAT脚本,利用DOS命令`netsh interface ip set address/dns`来快速切换Windows电脑的静态和动态IP及DNS。作者在实践中遇到了环境变量路径问题和中文乱码问题,并提供了解决方案。通过创建和运行BAT文件,用户可以根据自己的网络配置自定义IP和DNS,实现一键切换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于工作原因,公司电脑经常需要设置IP切换内外网,于是之前通过设置双网IP的方式,成功解决了每次切换都要手动一步步完成网络设置的痛点。然而最近网络环境做了变更,双IP居然不管用了!

本着懒是第一生产力的原则,在又学习了一遍netsh命令之后,决定还是通过用bat文件运行dos命令的方式来完成IP切换。代码很简单,但在实操中还是发现了不少问题,于是在这里做下整理和记录,以便后期忘了还有笔记可查。

 

本次用到的DOS命令是:netsh interface ip set (address/dns) ,可简写为 netsh  int ip set (address /dns)
用法格式:

切换静态ip及dns

pushd C:\WINDOWS\system32
#设置环境变量目录,如bat保存于桌面,无此命令可能无法调用环境变量

netsh interface ip set address name="以太网" source=static address=192.168.1.10 mask=255.255.255.0 gateway=192.168.1.1
#设置静态IP,更改网络连接名称为"以太网",ip设置为192.168.1.10,子网为255.255.255.0,网关为192.168.1.1

netsh interface ip add dns name="以太网" address=114.114.114.114
#设置静态dns为114.114.114.114

pause
#批处理最后加上pause,防止bat运行后自动闪退关闭,可以查看是否有运行错误信息

切换动态ip及dns

pushd C:\WINDOWS\system32

netsh interface ip set address name="以太网" source=dhcp
#设置动态IP,更改网络连接名称为"以太网",ip设置为dhcp

netsh interface ip add dns name="以太网" source=dhcp
#设置dns为dhcp

pause

上述代码直接复制到txt文本文件,另存为bat文件即可使用,IP地址,掩码,网关和DNS按需求自行更改即可;

执行bat文件时需以管理员权限身份运行;

 

实操遇见的问题如下:

首行如无添加pushd,且bat文件保存在C:\windows\system32目录之外的话,会出现那无法调用环境变量的问题,除了netsh interface ip set命令,部分命令也有这个问题;

bat文件无法运行时,末行加入pause方便查看运行情况;

bat文件命令行中如必须出现中文(如上文”以太网“),编写完成后需保存为ANSI编码格式,否则在dos窗口运行时会出现乱码,导致语法错误,如下图;

更改后运行正常

 

 

 END 


借鉴来自:

https://blog.csdn.net/yyxaf/article/details/7289073

https://zhidao.baidu.com/question/522584112.html

https://jingyan.baidu.com/article/a3f121e4d84a5dfc9152bb55.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值