一、命令行的重要性
命令行是“CMD”的意思,即命令提示符。微软从 Windows 95 操作系统开始,向来就是标榜着以友善的操作接口来驾驭您的操作系统,但是您可能发现微软从Windows Server 2000 开始,一直到Windows Vista操作系统发展中,却陆陆续续的出现许多命令行接口命令工具,这些文字接口命令工具包含AD 管理命令工具、磁盘驱动器管理命令工具、DNS 管理命令工具等等。
其中管理者甚至可以使用这些命令工具来代替大部分的图形化接口操作,但这并不代表微软的操作系统正在走回头路,或是甚至想与UNIX 、Linux 的操作系统统一苗头,让管理者可以在微软的作业系统当中享受经由快速的敲击键盘来达到“操作”系统的快感,若是您这样想,那您就误会了。事实上,命令工具在某些管理应用上甚至会比图形接口还来得恰当,甚至方便快速,因为工具命令有其图形接口上无法取代的优点。
例如:工具命令较适合工作于低速网络连结环境中(如:Telnet )执行管理工作,或是应用在大量的批次化的作业需求时。因此,笔者将在本文中介绍一个让使用者设置防火墙的管理工具─Netsh 。
二、netsh的定义
netsh工具在Vista帮助文档中称作NetShell。NetShell提供了一个界面,或命令模式,具可配置的环境。 NetShell的功能和用途部分来源于它基于上下文的设计,新的上下文可由定制的DLLS提供,部分来源于提供的上下文,部分来源于脚本的使用。
netsh实用程序可工作于在线、离线、脚本三种模式下。要使用脚本模式,可用-f选项指定一个脚本文件,或者在netsh提示符下使用 exec命令执行脚本。netsh命令是一个基于命令行的脚本编写工具,你可以使用此命令配置和监视Windows系统,此外它还提供了交互式网络外壳程序接口,简单的说它是一个可以让网络服务器管理员用来在命令提示字符下设定并监视Vista下执行的程序。
除此之外,Netsh工具还可以用来管理及设定相关的网络服务,而Netsh 之所以能用来管理系统网络服务,它的原理是:Netsh 工具本身能将所输入的内容命令整合于现有的操作系统网络服务当中,而这样的原理其实是利用导向的功能;Netsh 能将所输入的命令参数藉由导向功能将相关参数导向至适当的协助程序当中,再由该「协助程序」来执行命令,Netsh 使用动态链接库 (DLL) 文件来与其他操作系统组件交互。每个 Netsh 帮助程序 DLL 都提供一组称为上下文的扩展功能,这是网络组件专用的一组命令。这些上下文通过为一个或多个服务、实用工具或协议提供配置和监视支持来扩展 netsh 的功能。例如,Dhcpmon.dll 将为 netsh 提供配置和管理 DHCP 服务器所必需的上下文和命令组。当您想利用 Netsh工具来协助管理 DHCP 这个网络服务时,Netsh 就会将管理者所输入的相关参数设定,经由 Netsh 的导向能力导向至 mdhcp.dll,以便可以让管理者管理相关的网络服务。
Netsh 工具到底可以协助网管人员哪些工作,大致包括如下:
1、设定网络卡接口上的TCP/IP 工作状态。
2、设定路由通讯协议。
3、设定筛选器。
4、设定路由。
5、设定Vista下执行的远程访问路由器的远程访问设定。
6、显示目前在任何计算机上执行路由器的设定。
7、设置Vista防火墙。