netsh命令已经推出很长时间在Windows /XP/中均带有Netsh命令Windows Server 只是对netsh的参数项做了些扩展日常工作中很多管理员对netsh了解不多甚至不知道在Windows Server 中netsh增强了哪些功能通过阅读本文Windows管理员可以找到上面所列问题的答案 一什么是 Netsh? 微软Windows的netsh是一个命令行脚本实用工具使用netsh工具 可以查看或更改本地计算机或远程计算机的网络配置 不仅可以在本地计算机上运行这些命令而且可以在网络上的远程计算机上运行 可以手动运行Netsh命令或创建批处理文件或脚本实现过程的自动化netsh提供了脚本功能让您在批处理模式下针对指定的计算机运行一组命令利用netsh 可以将配置脚本保存为文本文件便于存档或用于配置其他的计算机 二Windows Server netsh 和 Windows XP netsh对比 即使在核心命令级别Windows XP版本的netsh和Windows Server 的netsh也存在着一些差别为了比较这些我们可以在每个操作系统中运行netsh /?虽然Windows XP比Windows Server 多了个routing选项但是Windows Server 比windows XP下的netsh的选择项多了更多的内容具体如下 * dhcp * dhcpclient * http * ipsec * lan * nap * netio * rpc * winhttp 从上面这个列表中可以看到在Windows Server 中有着更多的选择项 三管理员常用到的netsh 十大命令 接下来让我们开始介绍一些系统管理员常用到的netsh 命令 # –如何获得帮助信息 每个Windows管理员应该知道如何获得netsh的帮助信息 这其实很容易——只要使用/?选项例如要显示所有的netsh内容情况(选项类别) 只需输入netsh/?如图所示 *** 图: netsh /? 帮助选项执行结果 在上图中可以选择一个上下文通过上下文中的配置项引导下一步操作例如输入netsh lan/? 可以看到如图所示的界面 *** 图: netsh lan /?的执行结果 从上面显示的信息可以继续指导我们继续操作 netsh lan show /? 从返回信息中我们可以知道要显示网卡信息可以用以下命令 netsh lan show interfaces 通过多次使用带/? 的netsh命令能够引导使用许多netsh命令最终达到我们的操作目标 # –支持远程计算机的名称和登陆凭证 netsh命令的执行参数中支持提供远程计算机名称IP地址和密码凭据其中选项r表示机器名U表示用户名p表示密码 下面我们来看一个例子 netsh r WinXP u winxpadministrator p My!Pass interface ip show config 这个例子提供了远程计算机的名称远程用户名和密码以便通过网络远程执行命令只要远程计算机支持这一命令(不同的操作系统将使用各种不同的命令)都可以执行 # 在交互模式下或者脚本模式下运行 netsh命令既可以交互运行手动输入命令也可以在脚本中使用如果想在本地机器或远程机器通过手动方式一步一步输入命令的话只要在命令行中输入netsh你会看到以下界面 netsh> 在netsh>提示符下可以输入想调用的所有的netsh命令甚至告诉netsh连接到远程计算机 另一方面可以使用的netsh f 指定netsh所使用的脚本名称 # –打开防火墙的端口 netsh命令可以快速方便地打开一个防火墙的端口比如下面这个例子将打开端口 netsh firewall set portopening tcp smb enable 如果该命令执行成功将得到Ok的回应消息 # –当前的网络配置的导入与导出 netsh命令可以很轻松地导入和导出您的IP地址配置与GUI界面下操作不同的是如果要导出配置信息需要输入以下命令 netsh –c interface dump > testtxt *** 图: 导出并查看IP 地址的配置信息 稍后在同一台计算机上或者不同的机器上可以使用以下命令导入此配置文件 netsh –f testtxt # –尝试Netsh 命令最新的用法 Windows Server 中的许多新功能都涉及到了netsh命令 以下是Windows Server 系统中netsh命令的新类别 * dhcp * dhcpclient * http * ipsec * lan * nap * netio * rpc * winhttp 我们不仅可以设置DHCP客户端而且可以设置DHCP服务器还可以配置IPSec加密网络接入保护(NAP)客户端等等 当服务器上新增了些角色之后将会看到更多的上下文例如如果在Windows Server 增加了个网络策略服务器的角色netsh配置项的上下文将多了个nps # – TCP/IP问题排查和网卡修复 使用netsh可以排查和重置TCP/IP网卡我们看下面几个例子 * 重置所有IP协议栈的配置信息并输出日志文件——netsh int ipv reset resetlogtxt * 安装TCP / IP协议——netsh int ipv install * 卸载TCP / IP协议——netsh int ipv uninstall # –配置windows 高级防火墙 在Windows Server 和Windows Vista中可以使用新的advfirewall网络方面的设置来配置双向的Windows高级防火墙当然也可以设定为传统的Windows防火墙下面是一些例子 * 显示所有的防火墙规则 —— netsh advfirewall firewall show rule name=all * 删除与端口相关的所有高级防火墙规则 —— netsh advfirewall firewall delete name rule name=all protocol=tcp localport= * 导出Windows高级防火墙设置 —— netsh advfirewall export c:advfirewallwfw 也许最经常用到的命令是启用或禁用Windows防火墙可以使用以下命令 netsh firewall set opmode disable 或者是 netsh firewall set opmode enable # –配置无线设置 在Windows Server 和Windows Vista中可以利用netsh wlan命令来配置无线网络的配置文件连入无线网络下面我们来看几个例子 * 连接到一个已定义的无线网络—— netsh wlan connect ssid=mySSID name=WLANProfil * 查看当前的无线设置——netsh wlan show settings * 新增一个无线网络的配置文件——netsh wlan add profile filename=Wireless Network ConnectionBOWxml # – 配置IP地址和网络设置 正如netsh英文缩写(network shell)一样netsh的最初目的就是用来配置网络的基本参数下面我们看一些例子 * 查看网卡的IP地址—— netsh interface ip show config * 设置网卡的IP地址使用DHCP—— netsh interface ip set address name=Local Area Connection source=dhcp * 设置网卡的IP地址使用一个静态IP地址 netsh interface ip set address Local Area connection static * 增加DNS服务器设置 netsh interface ip add dnsserver Local Area Connection 四小结 netsh命令行实用工具一直是Windows系统管理员的一个功能非常强大的工具在Windows Server 和Windows Vista中随着新特性的增加netsh的功能将更为强大和灵活本文介绍的个命令对于管理员日常工作中遇到麻烦的时候应该有所帮助 |