NetSH使用方法

作者:ABScale

想在W2K下快速的改变IP,使用习惯性的Router、Switch命令行进行配置吗?那就使用NetSH吧,NetSH是什么?
Netsh是Windows 2000/XP/2003操作系统自身提供的命令行脚本实用工具,它允许用户在本地或远程显示或修改当前正在运行的计算机的网络配置。为了存档、备份或配置其他服务器,Netsh也可以将配置脚本保存在文本文件中。

运行Netsh命令有两种情况
1. 本地运行Netsh命令
点击”开始→运行”,在运行对话框中输入Cmd命令并点击[确定],然后在命令提示符后输入Netsh命令就可以了。
2. 远程运行Netsh命令
要在远程 Windows 2000 Server服务器上运行Netsh命令,首先要使用”远程桌面连接”连接到运行终端服务的Windows 2000 Server服务器上,之后的操作与在本地使用Netsh命令相同。

备份/恢复

服务器网络设置
谈到网络设置,您一定会想到IP地址、子网掩码、网关、DNS等(这些主要是接口IP配置参数)。对于普通计算机来说,网络设置只有接口IP配置参数; 而对于服务器而言,网络设置不仅仅包括前面所提到的接口IP配置参数,还有接口配置、端口代理配置、远程访问配置、路由配置、DNS 代理配置、NAT 配置、DHCP中继代理配置等等。上述的网络设置参数,根据服务器在网络中所起的特殊作用而有所不同,如:校园网中用Windows 2000 Server服务器负责连接外网,并且连接校内多个子网,那么在该服务器上必定要设置远程访问配置、路由配置、DNS 代理配置以及NAT 配置。
1. 备份服务器的网络设置
一个有经验的网络管理员所做的最频繁的工作就是备份。只有做了备份,当遇到毁灭性破坏时,才能迅速及时地恢复网络。网络设置备份操作:netsh dump >bak12.txt,通过该操作可将网络设置备份到bak12.txt文件中,该文件为一个文本文件。
对网络设置进行调整后,应即时进行备份。
2. 恢复服务器的网络设置
在进行网络设置调整时,如果发生了操作错误,或者服务器网络出现故障,可以利用备份快速恢复网络设置。操作方法:nesh exec bak12.txt。
通过Netsh命令对服务器网络设置进行备份,特别简单方便,而且快速有效,无需其他软件辅助,非常适合网络管理人员用来对服务器网络设置进行备份和恢复管理。

下面对如何操作NetSH进行操作,有些东西可能写得不太详细,需要自己实际操作一下

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

Windows 2000 IP Configuration
Ethernet adapter 本地连接:
Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 10.1.1.94 (本地连接更改之前的ip)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 10.1.1.254

C:\>netsh (进入设置模式)
netsh>interface
interface>ip
interface ip>set address “本地连接” static 10.1.1.111 255.255.255.0 10.1.1.254
interface ip>exit

上文中的set命令具体解释如下:

set address – 设置指定的接口的 IP 地址和默认网关。
set dns – 设置 DNS 服务器模式和地址。
set wins – 设置 WINS 服务器模式和地址。

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

Windows 2000 IP Configuration
Ethernet adapter 本地连接:
Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 10.1.1.111
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 10.1.1.254

我们来看一下NetSH命令一览(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` 上下文。

在工作过程中会遇到在不同的网段中进行网络调试的情况,经常需要将机器在几个不同的IP地址中进行切换。在Win2000操作系统中改变IP地址较之 Win98已经方便多了 因为改完IP地址后不需要重启计算机,但还要进入网络属性设置中进行操作。有没有再简便一点的方法呢,比如用鼠标双击一下快捷方 式就可以实现IP地址的切换?
答案是肯定的。在Win2000中用netsh命令就可以实现这个功能。首先进入命令行模式(在”开始→运 行”中键入”cmd”即可进入命令行模式),在提示符下键入netsh即可进入netsh的界面。再键入int ip进入接口IP的配置模式,键入dump则列出接口IP配置信息:
C:\Documents and Settings\Administrator>netsh
netsh>
netsh>int ip
interface ip>dump
# ———————————-
# 接口 IP 配置
# ———————————-
pushd interface ip
# ″本地连接″ 的接口IP 配置(注:以下显示视具体机器情况而定)
set address name = ″本地连接″ source = static addr = 192.168.0.5 mask = 255.255.255.0
set address name = ″本地连接″ gateway = 192.168.0.2 gwmetric = 1
set dns name = ″本地连接″ source = static addr = 61.237.17.181
add dns name = ″本地连接″ addr = 211.97.168.129
add dns name = ″本地连接″ addr = 211.98.4.1
set wins name = ″本地连接″ source = static addr = none
# ″本地连接 2″ 的接口 IP 配置
set address name = ″本地连接 2″ source = dhcp
set dns name = ″本地连接 2″ source = dhcp
set wins name = ″本地连接 2″ source = dhcp
popd
# 接口 IP 配置结束
现在我们可以大致了解到用netsh命令更改IP地址的方式,即通过”set address name =连接名称(连接名称要用引号括起来)source=static addr=IP地址 mask=子网掩码”来实现。
到命令行模式下用netsh直接试一下。比如要将本机的IP地址改为192.168.0.7,子网掩码为255.255.255.0,可以进行以下*作:
C:\Documents and Settings\Administrator>netsh
netsh>int ip
interface ip>set address name=”本地连接” source=static addr=192.168.0.7 mask=255.255.255.0
确认更改。
interface ip>exit
再用ipconfig命令核实一下:
C:\Documents and Settings\Administrator>ipconfig
Windows 2000 IP Configuration
Ethernet adapter 本地连接 2
Media State . . . . . . . . . . . Cable Disconnected
Ethernet adapter 本地连接
Connection-specific DNS Suffix .
IP Address. . . . . . . . . . . . 192.168.0.7
Subnet Mask . . . . . . . . . . . 255.255.255.0
Default Gateway . . . . . . . . . 192.168.0.2
从以上显示中可以看到已经成功实现了在Win2000中用命令行方式来改变IP地址。用这种方式改变IP地址甚至还没有在图形界面中操作来得快。不过我们再用脚本帮一下忙,离胜利目标就不远了。首先打开记事本,输入以下内容:
int ip
set address name=″本地连接″ source=static addr=192.168.0.7 mask=255.255.255.0
然后保存为一个名为”7.sh”的文件,放到C盘根目录下,再进入命令行模式,在C盘根目录下键入”netsh exec 7.sh”,好像没什么反应啊?不过再用ipconfig查看一下,会发现IP地址已经改过来了。
最后再用记事本写一个批处理文件,命名为”7.bat”,内容为”netsh exec 7.sh”。为该文件在桌面上创建一个快捷方式,这样双击该快捷方式即可实现IP地址的快速改变。如果要快速在192.168.0.5、 192.168.0.7等相同网段IP地址间进行切换的话,只需要改变”addr”后面的地址即可,但是要将IP地址改为如172.19.96.7之类不 同网段的IP地址,就需要将网关信息一起改变,也就是在脚本文件中加入一行关于网关的信息:
int ip
set address name=″本地连接″source=static addr=172.19.96.7 mask=255.255.255.0
set address name=″本地连接″gateway=172.19.96.1 gwmetric=1
同样地将以上内容存为脚本文件,再做成批处理文件执行一下,用ipconfig/all命令检测一下,发现包括网关在内的信息也修改过来了。

相关日志

抢楼还有机会... 抢座Rss 2.0或者 Trackback

  • cfc_boy

    很实用啊。学习了。好文章。

发表评论