在windows中用netsh命令修改ip地址网关和DNS等

 下面是两个关于netsh的用法,将它们复制到文本文档中,将后缀名 .txt 改为 .cmd直接双击就可以执行:

  第一个是用netsh命令来修改电脑的IP地址,子网掩码,默认网关和DNS.


  @echo off

  netsh interface ip set address "本地连接" static 192.168.0.1 255.255.255.0 192.168.0.254 1

  netsh interface ip set dns "本地连接" static 202.194.40.1

  netsh interface ip add dns "本地连接" 202.194.40.2 2


  注意:上面用蓝色字体表出的部分是需要你修改的部分。其中第二,三,四行中 "本地连接" 一般不需要修改,这要看你的电脑中“控制面板--》网络和Internet--》网络和共享中心”,窗口中的连接名而定,一般的只有一个“本地连接”。

  第二行中的192.168.0.1 255.255.255.0 192.168.0.254 三个地址依次为IP地址,子网掩码和默认网关,把它们换成你要修改的地址。

  第三行中的 202.194.40.1 为DNS的地址,把它换成你要修改的DNS地址即可。

  第四行中的202.194.40.2 为辅助DNS地址,也就是第二个,把它换成你要修改的第二个DNS地址即可,如果没有的话,可以把第四行直接删除即可。


  第二个是用netsh命令来修改电脑的IP地址,子网掩码,默认网关和DNS为动态获取.


  @echo off

  netsh interface ip set address "本地连接" dhcp

  netsh interface ip set dns "本地连接" dhcp

  注意:这个比较简单,只需根据自己电脑的情况,修改一下蓝色字体标注的"本地连接" 即可,一般不需要修改。



  下面这篇文章是关于 netsh 命令的详细用法,看完后,你会明白它的其它一些用法。

  在 Windows 2000 中可以使用 netsh 命令为以下过程编写脚本:将计算机的静态 Internet 协议 (IP) 地址更改为动态主机配置协议 (DHCP) 地址或相反。netsh 命令无需重新启动计算机即可完成此任务。对于从一个环境移到另一个环境的便携式计算机,当它在一个位置中必须使用静态分配的 IP 地址,而在另一个位置必须使用 DHCP 分配的 IP 地址时,此功能尤其有用。

  本文所说的方法适应于Windows 2000,Windows XP和Windows Server 2003。

  要将指定适配器的静态地址切换为 DHCP 地址,请键入以下命令:

  netsh interface ip set address "本地连接" dhcp注意:键入此命令会将名为"本地连接"的接口更改为 DHCP。

  要显示计算机中的所有适配器及其当前 IP 地址,以确定正确的适配器名称,请键入以下命令: Netsh interface ip show config要更改为静态地址,请键入以下命令: netsh interface ip set address "本地连接" static  IP  掩码  网关  跃点数如:netsh interface ip set address "本地连接" static 192.168.0.10 255.255.255.0 192.168.0.1 1

  更改DNS为192.168.0.1:netsh interface ip set DNS   "本地连接" static 192.168.0.1删除网关:netsh interface ip delete address "本地连接" gateway=all删除DNS:

  netsh interface ip delete dns "本地连接" all

  如果执行配置时提示"指定了无效的接口",则请您开启系统的"Remote Registry Service"服务。

  控制面板-->管理工具-->服务-->开启Remote Registry Service

  修改ip,子网掩码,网关,dns。“网络连接名”是你机器上网络属性里看到的连接名,把下面改成自己的连接名。

  netsh interface ip set address "网络连接名" static 192.168.0.88 255.255.255.0 192.168.0.1 1

  netsh interface ip set dns "网络连接名" static 202.216.224.66

  netsh interface ip add dns "网络连接名" 202.216.224.67  如果要改成动态分配ip和自动获得dns使用下面命令。

  netsh interface ip set address "网络连接名" dhcp

  netsh interface ip set dns "网络连接名" dhcp由于我所处的地方要经常在不同的网络之间切换,比如局域网、系统内部网和外网(光是外网我要常常在3个ADSL网之间切换)。我之前一直用的方法是在本机上设置多个不同网段的IP,然后切换路由(Route),这样不同的网段通过不同的网关出去,就可以达到同时访问多个网络的目的。但是这样我发现经常可能出现一些问题,所以我决定用最原始的方法来解决,那就是在要使用某一个网段的时候就只用这个网段的IP,这样就需要不停的更换IP地址。当然,在Windows的“网络连接”属性中这样的更改是很麻烦的,不过还好的是,Windows的“netsh”命令提供了命令行下更改IP的功能,利用这一点,可以将它做成BAT的批处理文件,就方便多了。以下就是具体的方法和命令详解:首先进入命令提示行:“Win+R”>“cmd”,回车

  输入netsh,回车,出现:netsh>

  再输入interface,回车,出现netsh interface>

  再输入ip,回车,出现netsh interface ip>进入IP设置项了,我们要用到以下的命令:

  set address     - 添加一个 IP 地址到指定的接口。先看看关于此令的windows帮助:

  --------------------------------------------------------------------------

  用法: set address [name=]<string>

  [[source=]dhcp |

  [source=] static [addr=]IP address [mask=]IP subnet mask]

  [[gateway=]<IP address>|none [gwmetric=]integer]参数:      标记            值

  name          - 接口名称。

  source        - 下列值之一:

  dhcp: 对于指定接口,设置用 DHCP 配置 IP

  地址。

  static: 设置使用本地静态配置设置 IP

  地址。      gateway       - 下列值之一:

  <IP address>: 您设置的 IP 地址的指定默认

  网关。

  none: 不设置默认网关。

  gwmetric      - 默认网关的跃点数。如果网关设置为 'none',则

  不应设置此字段。

  只有在 'source' 为 'static' 时才设置下列选项:      addr          - 指定接口的 IP 地址。

  mask          - 指定 IP 地址的子网掩码。注释    : 用来将 IP 地址配置模式从 DHCP 模式改为 static,或从 static

  模式改为 DHCP。用静态 IP 地址在接口上添加 IP 地址,或添加

  默认网关。

  示例    :       set address name="Local Area Connection" source=dhcp

  set address local static 10.0.0.9 255.0.0.0 10.0.0.1 1

  ----------------------------------------------------------------------------了解了用法之后,我们就可以进行设置了:

  在netsh interface ip>之后输入

  set address "本地连接" static 192.168.4.23 255.255.255.192 192.168.4.1 1

  然后回车,稍候会显示“确定”,IP设置完毕。

  这里解释一下,“本地连接”是指Windows“网络属性”中看到的连接的名称,static表示要指定静态IP而非DHCP指派,后面三个分别是IP,子网掩码,网关,最后的“1”是指默认网关的跃点数,一般为“1”。至此,命令行下设置IP完成。

  同时你还可以在命令行下更改DNS设置,用的是set dns命令,你可以输入set dns /?查看使用方法。最后,我们将这些命令保存为一个BAT文件(setIP192168423.bat):

  @echo off

  rem eth //eth 为网卡名称,可在网络连接中查询,如"本地连接"

  set eth="本地连接"

  rem ip //ip 为你想更改的IP

  set ip=192.168.4.23

  rem gw //gw 为网关地址

  set gw=192.168.4.1

  rem netmasks //netmasks 为子网掩码

  set netmasks=255.255.255.192

  echo 正在将本机IP更改到: %ip%

  rem

  if %gw%==none netsh interface ip set address %eth% static %ip% %netmasks% %gw% > nul

  if not %gw%==none netsh interface ip set address %eth% static %ip% %netmasks% %gw% 1 > nul

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

  echo 检查当前本机IP:

  ipconfig

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

  echo 成功将本机IP更改为%ip%!

  pause

  close




  • 7
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值