DOS命令下修改IP地址、DNS和网关

微软的Windows家族从Windows NT开始跨入了网络**作系统的市场,到现在的Windows 2000可以说网络功能在逐渐的完善,在这个成长过程中Windows融入了很多其他网络**作系统的功能,可以说是借鉴而来的,逐渐形成了一套功能完善的网络**作系统,这也是令SUN等各大公司所感觉到不服的原因,觉得不是微软完全自给研发的东西。不过Windows2000的功能确实是很强大的,它几乎可以象Unix和Linux一样在命令行下做很多的工作。 

下面我们看一下Windows上一个可以在命令行下更改ip地址的命令,看过这个命令后大家可能会觉得这个

命令很象Unix和Linux的命令,更象Cisco的路由器命令。下面是我在计算机上实际**作的回显,我会加

上一些注释:

C:\>ipconfig (首先用ipconfig这个命令看一下更改之前的ip地址)

Windows 2000 IP Configuration

Ethernet adapter 本地连接:

Connection-specific DNS Suffix . : 
IP Address. . . . . . . . . . . . : 192.168.0.250 (本地连接更改之前的ip) 
Subnet Mask . . . . . . . . . . . : 255.255.255.0 
Default Gateway . . . . . . . . . : 192.168.0.1

PPP adapter 拨号连接:

Connection-specific DNS Suffix . : 
IP Address. . . . . . . . . . . . : 211.149.128.147 
Subnet Mask . . . . . . . . . . . : 255.255.255.255 
Default Gateway . . . . . . . . . : 211.149.128.147

C:\>netsh (然后执行netsh这个命令) 
netsh>interface (netsh命令的子命令) 
interface>ip (interface命令的子命令) 
interface ip>set (interface ip命令的子命令)

下列指令有效:

此上下文中的命令: 
set address - 设置指定的接口的 IP 地址或默认网关。 
set dns - 设置 DNS 服务器模式和地址。 
set wins - 设置 WINS 服务器模式和地址。 
interface ip>set address "本地连接"(这个名称一定要与网络连接中的那个网卡连接名相同,否则将表示端口无效) static 192.168.0.2 255.255.255.0 192.168.0.1 1(IP后面这个1不要漏了,否则命令将无效) (设置ip地址)

设置静态IP完整命令:interface ip>set address "本地连接" static 192.168.0.2 255.255.255.0 192.168.0.1 1

确定。

设置动态IP完整命令:interface ip>set address name="本地连接" source=dhcp

(注释:上面一段象不象Cisco的命令。)

interface ip>exit


C:\>ipconfig (更改后再用ipconfig命令看一下ip地址,确认一下是否更改成功)

Windows 2000 IP Configuration

Ethernet adapter 本地连接:

Connection-specific DNS Suffix . : 
IP Address. . . . . . . . . . . . : 192.168.0.2 (更改后的ip说明成功了) 
Subnet Mask . . . . . . . . . . . : 255.255.255.0 
Default Gateway . . . . . . . . . : 192.168.0.1

PPP adapter 拨号连接:

Connection-specific DNS Suffix . : 
IP Address. . . . . . . . . . . . : 211.149.128.147 
Subnet Mask . . . . . . . . . . . : 255.255.255.255 
Default Gateway . . . . . . . . . : 211.149.128.147

C:\>

netsh这个命令还有好多强大的功能 如下:

C:\>netsh 
netsh>?

下列指令有效:

此上下文中的命令: 
.. - 移到上一层上下文级。 
? - 显示命令列表。 
aaaa - 更改到 `aaaa' 上下文。 
abort - 丢弃在脱机模式下所做的更改。 
add - 将一个配置项添加到项目列表中。 
alias - 添加一个别名 
bye - 退出程序。 
commit - 提交在脱机模式中所做的更改。 
delete - 在项目列表上删除一个配置项目。 
dhcp - 更改到 `dhcp' 上下文。 
dump - 显示一个配置脚本。 
exec - 运行一个脚本文件。

exit - 退出程序。 
help - 显示命令列表。 
interface - 更改到 `interface' 上下文。 
offline - 将当前模式设置成脱机。 
online - 将当前模式设置成联机。 
popd - 从堆栈上打开一个上下文。 
pushd - 将当前上下文放推入堆栈。 
quit - 退出程序。 
ras - 更改到 `ras' 上下文。 
routing - 更改到 `routing' 上下文。 
set - 更新配置设置。 
show - 显示信息 
unalias - 删除一个别名。 
wins - 更改到 `wins' 上下文。

下列的子上下文可用: 
routing interface ras dhcp wins aaaa

若需要命令的更多帮助信息,请键入命令, 
后面跟 ?。

 

===============

netsh interface ip dump 查看现有的IP设置,也就可以提供设置IP做参考 
结果如: 
# ---------------------------------- 
# 接口 IP 配置 
# ---------------------------------- 
pushd interface ip 


# "本地连接" 的接口 IP 配置 

set address name="本地连接" source=static addr=10.1.103.10 mask=255.255.255.0 
set address name="本地连接" gateway=10.1.103.1 gwmetric=0 
set dns name="本地连接" source=static addr=192.168.0.222 register=PRIMARY 
add dns name="本地连接" addr=192.168.0.236 index=2 
set wins name="本地连接" source=static addr=192.168.0.222 

所以修改地址就可以如下: 
netsh interface ip set address name="本地连接" source=static addr=10.1.103.11 mask=255.255.255.0 


一般我使用netsh都是如下步骤: 
1、netsh interface ip dump >ip.txt (导出设置) 
2、修改ip.txt (修改设置) 
3、netsh exec ip.txt (导入设置)

 

动态的表内容如下:

如:
# ---------------------------------- 
# 接口 IP 配置         
# ---------------------------------- 
pushd interface ip


# "本地连接" 的接口 IP 配置

set address name="本地连接" source=dhcp 
set dns name="本地连接" source=static addr=202.96.128.86 register=PRIMARY
add dns name="本地连接" addr=202.96.128.166 index=2
set wins name="本地连接" source=dhcp


popd
# 接口 IP 配置结束

 

 

================

1、更改静态IP地址:

命令:etsh interface ip set address "本地连接" static  IP  掩码  网关  跃点数

如: netsh interface ip set address "本地连接" static 192.168.0.10 255.255.255.0 192.168.0.1

2、更改DNS:

命令:netsh     iterface ip set dns "本地连接" static DNS地址 pimary

如:netsh interface ip set dns     "本地连接"     static 202.96.128.143     primary


DOS命令不仅可以修改IP地址,和网络相关的每个细节都可以用命令行方式进行配置。

只不过一般大家不太习惯罢了。

方法就是使用系统中提供的一个很牛B的命令行工具“netsh”:

首先,察看自己现在的ip地址:

look:

呵呵,列出了两块网卡,其中接口名为“本地连接”的这块网卡配置情况:

使用了固定IP,其中ip地址为192.168.0.4,其他信息略

好了,我们来修改这个IP

呵呵,改成什么呢,稍微改一点点吧:



呵呵,现在ip就是192.168.0.5了。

其实刚才改IP的时候并没有把命令写完整,完整的看这个:


呵呵,一堆命令吧,呵呵,现在的IP地址已经修改成10.0.0.13了。

当然,命令行下修改IP也可以只用1条命令


到这里,netsh的最最最简单的功能,命令行下修改IP地址

已经说完了

看到一个朋友是做网管的,管理着公司几个不同的网络,每次都要抱着笔记本修改成不同的ip地址、不同的

子网掩码、、、其实,只要能够充分的发挥Netsh脚本的功能,就可以最快捷的修改自身的网络配置。

OK,开始

首先,显示一个配置脚本

look:



我们进入Netsh环境,切换到interface ip环境

通过dump命令将当前配置情况显示了出来。

第二步,导出一个配置脚本

look:


这样,我蔷桶迅詹畔允镜呐渲媒疟颈4娉闪艘桓鑫募 :\interface.txt

第三步,复制一个脚本拷贝interface2.txt并修改它

呵呵,原因?简单嘛,为了更方便的切换网络环境啊

注意哦,我们已经把所需要修改的ip地址、子网掩码、网关和dns做了修改。

最后,再把新的配置文件直接导入系统。

look:

到这里,已经把网络配置部分修改了




总结:

通过Netsh里面的dump命令可以直接显示配置脚本。

而通过netsh -c interface ip dump >c:\interface.txt的方式可以导出配置脚本。

然后再netsh -f c:\interface.txt的方式又可以把导出的配置脚本再导回去。

一来一去间,就可以轻松的实现方便的修改网络配置。

Netsh里面还有很多很多命令,诸如可以进入netsh环境后,在根级目录用exec命令

也可以加载一个配置脚本。

 



经本人 验证,此方法不适用于XP,可以根据提示自行变动。如果需要管理员权限的话,可以以管理员权限运行cmd.exe。