netsh命令的详解

来源:互联网 发布:java中的native关键字 编辑:程序博客网 时间:2024/04/29 05:58

                      

Netsh是本地或远程计算机的   Windows   2000   网络组件的命令行和脚本实用程序。为了存档或配置其他服务器,Netsh   实用程序也可以将配置脚本保存在文本文件中。  
   
  Netsh   实用程序是一个外壳,它通过附加的"Netsh   帮助   DLL",可以支持多个   Windows   2000   组件。"Netsh   帮助   DLL"提供用来监视或配置特定   Windows   2000   网络组件的其他命令,从而扩展了   Netsh   的功能。每个"Netsh   帮助   DLL"都为特定的网络组件提供了一个环境和一组命令。每个环境中都可以有子环境。例如,在路由环境中存在子环境   Ip   和   Ipx,它们将   IP   路由和   IPX   路由命令集中在一起。  
   
  Netsh   命令行选项包括下列各项:  
   
  用法:   netsh   [-a   AliasFile]   [-c   Context]   [-r   RemoteMachine]  
  [Command   |   -f   ScriptFile]  
   
  下列指令有效:  
   
  此上下文中的命令:  
  ?   -   显示命令列表。  
  aaaa   -   更改到   `aaaa'   上下文。  
  add   -   将一个配置项添加到项目列表中。  
  delete   -   在项目列表上删除一个配置项目。  
  dhcp   -   更改到   `dhcp'   上下文。  
  dump   0   -   显示一个配置脚本。  
  exec   -   运行一个脚本文件。  
  help   -   显示命令列表。  
  interface   -   更改到   `interface'   上下文。  
  ras   -   更改到   `ras'   上下文。  
  routing   -   更改到   `routing'   上下文。  
  set   -   更新配置设置。  
  show   -   显示信息  
  wins   -   更改到   `wins'   上下文。  
   
  下列的子上下文可用:  
  routing   interface   ras   dhcp   wins   aaaa  
   
  若需要命令的更多帮助信息,请键入命令,  
  后面跟   ?。  
  -a   AliasFile    
  指定使用了一个别名文件。别名文件包含   netsh   命令列表和一个别名版本,所以可以使用别名命令行替换   netsh   命令。可以使用别名文件将其他平台中更熟悉的命令映射到适当的   netsh   命令。  
   
  -c   Context    
  指定对应于已安装的支持   DLL   的命令环境。  
   
  命令    
  指定要执行的   netsh   命令。  
   
  -f   ScriptFile    
  指定运行   ScriptFile   文件中所有的   netsh   命令。  
   
  -r   RemoteMachine    
  指定在远程计算机上运行   netsh   命令,由名称或   IP   地址来指定远程计算机。  
   
  您可以将命令缩写为意义明确的最短的字符串。例如,发布   sh   ip   int   命令相当于发布   show   ip   interface。Netsh   命令可以是全局的或特定环境的。全局命令可以在任何环境中发布,并用于一般的   Netsh   实用程序功能。特定环境的命令随环境而变化。您可以将发布的命令记录在日志文件中,以创建   netsh   命令会话的审核踪迹。  
   
  列出了   netsh   全局命令。  
   
  命令   说明    
  ..   上移一个环境等级。    
  ?   或   help   显示命令行"帮助"。    
  show   version   显示   Windows   和   Netsh   实用程序的当前版本。    
  show   netdlls   显示已安装的"Netsh   帮助   DLL"的当前版本。    
  add   helper   添加"Netsh   帮助   DLL"。    
  delete   helper   删除"Netsh   帮助   DLL"。    
  show   helper   显示已安装的"Netsh   帮助   DLL"。    
  cmd   创建   Windows   2000   命令窗口。    
  online   将当前模式设置为联机。    
  offline   将当前模式设置为脱机。    
  set   mode   将当前模式设置为联机或脱机。    
  show   mode   显示当前模式。    
  flush   丢弃以脱机模式进行的任何更改。    
  commit   提交以脱机模式进行的更改。    
  set   audit-logging   打开或关闭记录工具。    
  show   audit-logging   显示当前的审核记录设置。    
  set   loglevel   设置记录信息的级别    
  show   loglevel   显示记录信息的级别。    
  set   machine   配置执行   netsh   命令的计算机。    
  show   machine   显示执行   netsh   命令的计算机。    
  exec   执行包括   netsh   命令的脚本文件。    
  quit   或   bye   或   exit   退出   Netsh   实用程序。    
  add   alias   向现有命令添加别名。    
  delete   alias   删除现有命令的别名。    
  show   alias   显示所有已定义的别名。    
  dump   将配置写入文本文件。    
  popd   从堆栈中弹出环境的脚本命令。    
  pushd   将当前的环境推入堆栈的脚本命令。    
   
  Netsh   实用程序有如下命令模式:  
   
  联机    
  联机模式下,在   Netsh   命令提示符下发布的命令被立即执行。  
   
  脱机    
  脱机模式下,将在   Netsh   命令提示符下积累发布的命令,并通过发布   commit   全局命令来按照批处理方式执行。可以通过发布   flush   全局命令来丢弃积累的命令。  
   
  脚本    
  使用   -f   命令行选项,或在   Netsh   命令提示符下发布   exec   全局命令,可以执行指定文件中所有的   netsh   命令。  
   
  要创建当前配置的脚本,请使用   dump   全局命令。dump   命令根据   netsh   命令输出当前运行的配置。可以使用该命令创建的脚本来配置新的服务器或重新配置现有的服务器。如果要对组件的配置作很大的更改,推荐您使用   dump   命令开始配置会话,以防在进行更改前需要还原配置。  
   
  Interface   命令  
  下表列出了可在   Windows   2000   命令提示符下键入的   netsh   命令,这些命令用于管理运行   Windows   2000   Server   及"路由和远程访问"服务的计算机上的接口设置。如果对某个特殊功能有多个命令,则在每个命令之间用斜线   (/)   分隔。  
   
  当在命令提示符下键入命令时,请在每个命令前加上   netsh。要获得每个命令的精确语法,可在命令之后键入   ?。选项例如,要获得   netsh   interface   命令的命令行"帮助",请在命令提示符下键入   netsh   interface?。  
   
  命令   说明    
  interface   set/show   interface   启用、禁用、连接、断开连接以及显示请求拨号接口的配置。    
  interface   set/show   credentials   在请求拨号接口上配置或显示用户名、密码和域名。    
   
  ………   (省略二、三千字)  
   
   
  言归正传,现在来看看WIN2000下的网络设置的配置。  
   
  D:/>netsh  
  netsh>interface  
  interface>dump  
  #========================  
  #   接口配置  
  #========================  
  pushd   interface  
   
  reset   all  
   
   
  popd  
  #   接口配置结束  
   
  #   ----------------------------------  
  #   接口   IP   配置  
  #   ----------------------------------  
  pushd   interface   ip  
   
   
  #   "本地连接   2"   的接口   IP   配置  
   
  set   address   name   =   "本地连接   2"   source   =   dhcp  
  set   dns   name   =   "本地连接   2"   source   =   dhcp  
  set   wins   name   =   "本地连接   2"   source   =   dhcp  
   
  #   "本地连接"   的接口   IP   配置  
   
  set   address   name   =   "本地连接"   source   =   static   addr   =   192.168.1.10   mask   =   255.255.255.0  
  set   address   name   =   "本地连接"   gateway   =   192.168.0.1   gwmetric   =   1  
  set   dns   name   =   "本地连接"   source   =   static   addr   =   192.168.0.1  
  set   wins   name   =   "本地连接"   source   =   static   addr   =   none  
   
   
  popd  
  #   接口   IP   配置结束  
   
   
  如果,你想快速修改一个本地IP地址。  
  你可以先用文本写入以下的内容:  
   
  interface   ip  
  set   address   本地连接   static   192.168.5.10   255.255.255.0   192.168.0.1   1  
  ^^^   ^^^   ^^^   ^^^   ^^  
  接口名称   IP地址   子网掩码   网关   接口跃点数  
   
  如上保存为   local.sh  
   
  D:/>netsh   exec   local.sh  
   
  即可。是不是十分简单呢。Netsh命令还有不少强劲功能,还没有发挥出来。有信心的你,自己来试试吧!

 
今天在处理网络问题时用了netsh命令,于是就在网上找了这个命令的详细用法。

Netsh是Windows 2000/XP/2003操作系统自身提供的命令行脚本实用工具,它允许用户在本地或远程显示或修改当前正在运行的计算机的网络配置。为了存档、备份或配置其他服务器,Netsh也可以将配置脚本保存在文本文件中。


    运行Netsh命令

    运行Netsh命令有两种情况。

    1.本地运行Netsh命令

点击“开始→运行”,在运行对话框中输入Cmd命令并点击[确定],然后在命令提示符后输入Netsh命令就可以了。

进入netsh>后:

下列指令有效:

此上下文中的命令:
..             - 移到上一层上下文级。
?              - 显示命令列表。
abort          - 丢弃在脱机模式下所做的更改。
add            - 在项目列表上添加一个配置项目。
alias          - 添加一个别名
bridge         - 更改到 `netsh bridge' 上下文。
bye            - 退出程序。
commit         - 提交在脱机模式中所做的更改。
delete         - 在项目列表上删除一个配置项目。
diag           - 更改到 `netsh diag' 上下文。
dump           - 显示一个配置脚本。
exec           - 运行一个脚本文件。
exit           - 退出程序。
firewall       - 更改到 `netsh firewall' 上下文。
help           - 显示命令列表。
interface      - 更改到 `netsh interface' 上下文。
offline        - 将当前模式设置成脱机。
online         - 将当前模式设置成联机。
popd           - 从堆栈上打开一个上下文。
pushd          - 将当前上下文放推入堆栈。
quit           - 退出程序。
ras            - 更改到 `netsh ras' 上下文。
routing        - 更改到 `netsh routing' 上下文。
set            - 更新配置设置。
show           - 显示信息
unalias        - 删除一个别名。

下列的子上下文可用:
 bridge diag firewall interface ras routing

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


    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命令对服务器网络设置进行备份,特别简单方便,而且快速有效,无需其他软件辅助,非常适合网络管理人员用来对服务器网络设置进行备份和恢复管理。


示例:

view plaincopy to clipboardprint?
@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