Netsh命令详解

 
当前笔记本的可移动性增强,我们需要在多个环境下接入网络开始工作,在没有路由器自动分配的情况下,就需要每次手动设置IP地址和网关等信息,相当烦琐,通过实践利用netsh命令用快捷方式实现了IP地址的快速切换。
A. 基本用法
  1,新建记事本,写入如下信息:(横线中间内容)
int ip
set address name="本地连接" source=static addr=192.168.0.107 mask=255.255.255.0
set address name="本地连接" gateway=192.168.0.1 gwmetric=1
  保存为218.sh,请注意后缀名为sh。解释一下,以上设置的addr是IP地址,mask是子网掩码,gateway是网关,gwmetric是默认网关的跃点数。
  2,再新建记事本,写入如下信息:(横线中间内容)
netsh exec 218.sh
  保存为218.bat批处理文件,这个很容易理解,就是通过netsh命令运行一个脚本文件。当运行此批处理时,就调用了218.sh文件,达到修改IP地址和网关的目的。
  把以上文件放在硬盘任何位置,再建立快捷方式指向218.bat,就很容易实现的了对IP地址的方便切换和控制。
B. 应用扩展
  以上情况只是更改了IP,掩码,网关,用样的道理,更改sh文件又有不同用法:
int ip
set address name="本地连接" source=dhcp //自动获取IP地址
set dns name="本地连接" source=dhcp //自动获取DNS
set dns "本地连接" static 192.168.0.1 primary //设置首选DNS为192.168.0.1
set dns "本地连接" static none //清除DNS列表
  其实刚才第一个例子可以简单的写为:
set address "本地连接" static 192.168.0.107 255.255.255.0 192.168.0.1 1
  "本地连接"为name连接名,192.168.0.107为addr待设定IP地址,255.255.255.0为mask子网掩码,192.168.0.1 1为gateway网关,1为gwmetric默认网关的跃点数
C. netsh命令的基本和扩展用法
netsh>/?
下列指令有效:
此上下文中的命令:
.. - 移到上一层上下文级。
? - 显示命令列表。
aaaa - 更改到 `netsh aaaa' 上下文。
abort - 丢弃在脱机模式下所做的更改。
add - 在项目列表上添加一个配置项目。
alias - 添加一个别名
bridge - 更改到 `netsh bridge' 上下文。
bye - 退出程序。
commit - 提交在脱机模式中所做的更改。
delete - 在项目列表上删除一个配置项目。
dhcp - 更改到 `netsh dhcp' 上下文。
diag - 更改到 `netsh diag' 上下文。
dump - 显示一个配置脚本。
exec - 运行一个脚本文件。
exit - 退出程序。
help - 显示命令列表。
interface - 更改到 `netsh interface' 上下文。
ipsec - 更改到 `netsh ipsec' 上下文。
offline - 将当前模式设置成脱机。
online - 将当前模式设置成联机。
popd - 从堆栈上打开一个上下文。
pushd - 将当前上下文放入堆栈。
quit - 退出程序。
ras - 更改到 `netsh ras' 上下文。
routing - 更改到 `netsh routing' 上下文。
rpc - 更改到 `netsh rpc' 上下文。
set - 更新配置设置。
show - 显示信息。
unalias - 删除一个别名。
wins - 更改到 `netsh wins' 上下文。
下列的子上下文可用:
aaaa bridge dhcp diag interface ipsec ras routing rpc wins
若需要命令的更多帮助信息,请键入命令,接着是空格,后面跟 ?。
netsh>
--------------------
由以上可以看出,在netsh模式下,还可进入下级的操作模式:
aaaa
|-下列指令有效:
命令从 netsh 上下文继承:
show alias - 列出所有定义的别名。
show helper - 请列出所有顶层的助手。
show mode - 显示当前的模式。
此上下文中的命令:
show clients - 以脚本格式转储 aaaa 客户端设置。
show config - 以脚本格式转储 aaaa 配置信息。
show connection_request_policies - 以脚本格式转储 aaaa 连接请求策略设置。
show logging - 以脚本格式转储 aaaa 日志记录设置。
show remote_access_policies - 以脚本格式转储 aaaa 远程访问策略设置。
show server_settings - 以脚本格式转储 aaaa 服务器设置。
show version - 显示一个 aaaa 配置数据库的版本。
bridge
|-下列指令有效:
命令从 netsh 上下文继承:
show alias - 列出所有定义的别名。
show helper - 请列出所有顶层的助手。
show mode - 显示当前的模式。
此上下文中的命令:
show adapter - 显示配置为单桥的适配器。
dhcp
|-下列指令有效:
list - 列出所有可用的命令。
help - 显示帮助。
? - 显示帮助。
add server - 在目录服务上的授权服务器中添加服务器。
delete server - 从目录服务中的授权的服务器列表中删除一 DHCP 服务器。
show server - 为当前域显示所有在目录服务中的 DHCP 服务器
server [\\servername/ipaddress] - 将上下文切换到指定的服务器。
空值意味着是本地机器。
diag
|-下列指令有效:
命令从 netsh 上下文继承:
show alias - 列出所有定义的别名。
show helper - 请列出所有顶层的助手。
show mode - 显示当前的模式。
此上下文中的命令:
show adapter - 显示所有适配器。
show all - 显示所有类别。
show client - 显示所有网络客户端。
show computer - 显示计算机信息。
show dhcp - 显示每个适配器的 DHCP 服务器。
show dns - 显示每个适配器的 DNS 服务器。
show gateway - 显示每个适配器的默认网关服务器。
show ieproxy - 显示 Internet Explorer 的服务器名称和端口号。
show ip - 显示每个适配器的 IP 地址。
show mail - 显示邮件服务器名称和端口号。
show modem - 显示所有调制解调器。
show news - 显示新闻服务器名称和端口号。
show os - 显示操作系统信息。
show test - 显示所有类别并执行所有测试。
show version - 显示 Windows 和 WMI 版本。
show wins - 显示每个适配器的首选和辅助 WINS 服务器。
interface
|-下列指令有效:
命令从 netsh 上下文继承:
show alias - 列出所有定义的别名。
show helper - 请列出所有顶层的助手。
show mode - 显示当前的模式。
此上下文中的命令:
show credentials - 显示用于连接到接口的凭据。
show interface - 显示接口。
ipsec
|-下列指令有效:
下列指令有效:
此上下文中的命令:
show alias - 列出所有定义的别名。
show helper - 请列出所有顶层的助手。
show mode - 显示当前的模式。
ras
|-下列指令有效:
命令从 netsh 上下文继承:
show alias - 列出所有定义的别名。
show helper - 请列出所有顶层的助手。
show mode - 显示当前的模式。
此上下文中的命令:
show activeservers - 听远程访问服务器广告。
show authmode - 显示身份验证模式。
show authtype - 显示当前启用的身份验证类型。
show client - 显示连接到此计算机的远程访问客户端。
show link - 显示 PPP 要协商的链接属性
show multilink - 显示 PPP 要协商的多重链接
show registeredserver - 显示计算机是否注册为在给定的域中的
Active Directory 中的远程访问服务器。
show user - 为用户显示远程访问属性。
routing
|-下列指令有效:
此上下文中的命令:
show alias - 列出所有定义的别名。
show helper - 请列出所有顶层的助手。
show mode - 显示当前的模式。
rpc
|-下列指令有效:
此上下文中的命令:
? - 显示命令列表。
add - 创建子网的"添加"列表。
delete - 创建子网的"删除"列表。
dump - 显示一个配置脚本。
help - 显示命令列表。
reset - 将选择绑定设置重置为 'none' (监听所有界面)。
show - 在系统上显示每个子网的选择绑定状态。
wins
|-下列指令有效:
此上下文中的命令:
show alias - 列出所有定义的别名。
show helper - 请列出所有顶层的助手。
show mode - 显示当前的模式。
  netsh命令功能的强大,在这里就不深入讨论了,有兴趣的朋友可在cmd模式下,直接netsh回车进入netsh模式,提醒一点,回到上级用.或者..,退出netsh模式用bye或者exit。
教你干掉ICS防火墙
作者:中国知音 日期:2007-07-31
字体大小: 小 中 大 
 现在越来越多的服务器用的是ICS防火墙,配合ipsec来管理远程登陆和端口安全
搞的真是要天下无黑了
很多服务器直接打下来却连不上3389,仔细分析完也没找到什么防火墙或者新鲜软件,ipsec服务关闭以后也没效果。着实郁闷了一翻
想一想就是自带ICS搞的鬼吧
服务中显示:
Windows Firewall/InteHerozyf's Blog WwW.Herozyf.Cn提醒您該文出自: http://www.herozyf.cn/read.php/189.htmrnet Connection Sharing (ICS)
我们可以用
net stop "Windows Firewall/InteHerozyf's Blog WwW.Herozyf.Cn提醒您該文出自: http://www.herozyf.cn/read.php/189.htmrnet Connection Sharing (ICS)"直接关闭,但是并未给提示,而且也没有起到效果,3389依然连接不上
net start之时却提示服务启动~~~郁闷ing
请教n多朋友,有的说停止服务,有的说kill进程,均告失败。终于在俺哥那里找到了答案,现分享出来
C:\>netsh
netsh>firewall
netsh firewall>show
下列指令有效:
命令从 netsh 上下文继承:
show alias - 列出所有定义过的别名。
show helper - 请列出所有头等助手。
show mode - 显示当前的模式。
此上下文中的命令:
show allowedprogram - 显示防火墙允许的程序配置。
show config - 显示防火墙配置。
show currentprofile - 显示当前防火墙配置文件。
show icmpsetting - 显示防火墙 ICMP 配置。
show logging - 显示防火墙记录配置。
show multicastbroadcastresponse - 显示防火墙多播/广播响应配置。
show notifications - 显示防火墙操作配置。
show opmode - 显示防火墙端口配置。
show portopening - 显示防火墙端口配置。
show service - 显示防火墙服务配置。
show state - 显示当前防火墙状态。 
 
================================================================
 
有朋友问我,“能不能在命令行下直接修改Windows2000的IP地址?”。
呵呵,当然是可以的了。不仅可以修改IP地址,和相关的每个细节都可以用命令行方式进行配置。
只不过一般大家不太习惯罢了。
方法就是使用系统中提供的一个很牛B的命令行工具“netsh”:
首先,察看自己现在的ip地址:
look:
r_1211.gif
呵呵,列出了两块网卡,其中接口名为“本地连接”的这块网卡配置情况:
使用了固定IP,其中ip地址为192.168.0.4,其他信息略(自己不会看啊)
好了,我们来修改这个IP
呵呵,改成什么呢,稍微改一点点吧:
r_1222.gif
呵呵,现在ip就是192.168.0.5了。
其实刚才改IP的时候并没有把命令写完整,完整的看这个:
r_1233.gif
呵呵,一堆命令吧,呵呵,现在的IP地址已经修改成10.0.0.13了。
呵呵
当然,命令行下修改IP也可以只用1条命令
r_1244.gif
到这里,netsh的最最最简单的功能,命令行下修改IP地址
已经说完了


看到一个朋友是做网管的,管理着公司几个不同的,每次都要抱着笔记本修改成不同的ip地址、不同的
子网掩码、、、其实,只要能够充分的发挥Netsh脚本的功能,就可以最快捷的修改自身的配置。
OK,开始
首先,显示一个配置脚本
look:
r_12255.gif
我们进入Netsh环境,切换到interface ip环境
通过dump命令将当前配置情况显示了出来。
第二步,导出一个配置脚本
look:
r_1266.gif
这样,我们就把刚才显示的配置脚本保存成了一个文件c:interface.txt
第三步,复制一个脚本拷贝interface2.txt并修改它
呵呵,原因?简单嘛,为了更方便的切换环境啊
r_1277.gif
注意哦,我们已经把所需要修改的ip地址、子网掩码、网关和dns做了修改。
最后,再把新的配置文件直接导入系统。
r_fgjhfghfgh.gif
到这里,已经把配置部分修改了
r_1288.gif
总结:
通过Netsh里面的dump命令可以直接显示配置脚本。
而通过netsh -c interface ip dump >c:interface.txt的方式可以导出配置脚本。
然后再netsh -f c:interface.txt的方式又可以把导出的配置脚本再导回去。
一来一去间,就可以轻松的实现方便的修改配置。
Netsh里面还有很多很多命令,诸如可以进入netsh环境后,在根级目录用exec命令
也可以加载一个配置脚本。
另外还有对wins、路由、ras等服务的配置也可以通过Netsh的内置命令直接操作。
Windows的帮助里面都有相关的介绍。
=================================================================
 
1>查看网络配置
netsh interface ip show {选项}

{选项}可以是:
address   - 显示 IP 地址配置。
config    - 显示 IP 地址和更多信息。
dns       - 显示 DNS 服务器地址。
icmp      - 显示 ICMP 统计。
interface - 显示 IP 接口统计。
ipaddress - 显示当前 IP 地址
ipnet     - 显示 IP 的网络到媒体的映射。
ipstats   - 显示 IP 统计。
joins     - 显示加入的多播组。
offload   - 显示卸载信息。
tcpconn   - 显示 TCP 连接。
tcpstats  - 显示 TCP 统计。
udpconn   - 显示 UDP 连接。
udpstats  - 显示 UDP 统计。
wins      - 显示 WINS 服务器地址。

2>配置接口IP/网关IP
netsh interface ip set address "本地连接" static 10.1.2.90 255.255.255.0 10.1.2.254 1

C:> netsh interface ip show config


接口 "本地连接" 的配置
    DHCP enabled:                         否
    IP 地址:                             10.1.2.90
    子网掩码:                             255.255.255.0
    默认网关:                             10.1.2.254
    GatewayMetric:                        1
    InterfaceMetric:                      0
    静态配置的 DNS 服务器:                202.99.160.68
                                       202.99.166.4
    静态配置的 WINS 服务器:                  无
    用哪个前缀注册:                        只是主要



3>配置自动换取IP地址,DNS地址及wins地址
netsh interface ip set address "本地连接" dhcp
netsh interface ip set dns "本地连接" dhcp
netsh interface ip set wins "本地连接" dhcp

4>配置静态IP地址,DNS地址及wins地址
netsh interface ip set address "本地连接" static 10.1.2.90
netsh interface ip set dns "本地连接" static 202.99.160.68
netsh interface ip set wins "本地连接" static 10.1.2.200


5>查看网络配置文件
C:> netsh -c interface dump

#========================
# 接口配置
#========================
pushd interface

reset all


popd
# 接口配置结束

#========================
# 接口配置
#========================
pushd interface ipv6

uninstall


popd
# 接口配置结束



# ----------------------------------
# ISATAP 配置
# ----------------------------------
pushd interface ipv6 isatap



popd
# ISATAP 配置结束



# ----------------------------------
# 6to4 配置
# ----------------------------------
pushd interface ipv6 6to4

reset



popd
# 6to4 配置结束

#=============
# 端口代理配置
#=============
pushd interface portproxy

reset


popd
# 端口代理配置结束



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


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

set address name="本地连接" source=static addr=10.1.2.90 mask=255.255.255.0
set address name="本地连接" gateway=10.1.2.254 gwmetric=1
set dns name="本地连接" source=static addr=202.99.160.68 register=PRIMARY
add dns name="本地连接" addr=202.99.166.4 index=2
set wins name="本地连接" source=static addr=none


popd
# 接口 IP 配置结束


6>导出网络配置文件
netsh -c interface dump > d:\1.txt

7>导入网络配置文件
netsh -f  d:\1.txt
netsh exec d:\2.txt
 
===============================================================
 
现在来看看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命令还有不少强劲功能,还没有发挥出来。有信心的你,自己来试试吧!

转载于:https://blog.51cto.com/enchen/157176

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值