[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[原创] 【续】[一日一教学](39)配置计算机网络信息:netsh

本帖最后由 Hello123World 于 2025-4-21 15:22 编辑

【原】[一日一教学]批处理系列帖子索引 http://bbs.bathome.net/thread-2576-1-1.html
【续】[一日一教学]批处理系列帖子索引 http://bbs.bathome.net/thread-13798-1-1.html
零、概述
netsh(Network Shell)是 Windows 系统内置的网络配置命令行工具,支持通过脚本或交互式命令管理网络接口、防火墙、路由、无线网络等。
这个命令的分支庞杂,单拎出来1个分支都可以单开一个帖子,掌握这个命令的核心是记住每个主要分支(官方帮助把“分支”定义为“上下文”)负责哪块的功能。
基本语法:
  1. netsh [上下文] [子命令] [参数]
复制代码
一、帮助信息
1、以下是通过 netsh /? 获取到官方帮助信息:
  1. C:\Users\HelloWorld>netsh /?
  2. 用法: netsh [-a AliasFile] [-c Context] [-r RemoteMachine] [-u [DomainName\]UserName] [-p Password | *]
  3.              [Command | -f ScriptFile]
  4. 下列指令有效:
  5. 此上下文中的命令:
  6. ?              - 显示命令列表。
  7. add            - 在项目列表上添加一个配置项目。
  8. advfirewall    - 更改到 `netsh advfirewall' 上下文。
  9. branchcache    - 更改到 `netsh branchcache' 上下文。
  10. bridge         - 更改到 `netsh bridge' 上下文。
  11. delete         - 在项目列表上删除一个配置项目。
  12. dhcpclient     - 更改到 `netsh dhcpclient' 上下文。
  13. dnsclient      - 更改到 `netsh dnsclient' 上下文。
  14. dump           - 显示一个配置脚本。
  15. exec           - 运行一个脚本文件。
  16. firewall       - 更改到 `netsh firewall' 上下文。
  17. help           - 显示命令列表。
  18. http           - 更改到 `netsh http' 上下文。
  19. interface      - 更改到 `netsh interface' 上下文。
  20. ipsec          - 更改到 `netsh ipsec' 上下文。
  21. lan            - 更改到 `netsh lan' 上下文。
  22. mbn            - 更改到 `netsh mbn' 上下文。
  23. namespace      - 更改到 `netsh namespace' 上下文。
  24. netio          - 更改到 `netsh netio' 上下文。
  25. nlm            - 更改到 `netsh nlm' 上下文。
  26. p2p            - 更改到 `netsh p2p' 上下文。
  27. ras            - 更改到 `netsh ras' 上下文。
  28. rpc            - 更改到 `netsh rpc' 上下文。
  29. set            - 更新配置设置。
  30. show           - 显示信息。
  31. trace          - 更改到 `netsh trace' 上下文。
  32. wcn            - 更改到 `netsh wcn' 上下文。
  33. wfp            - 更改到 `netsh wfp' 上下文。
  34. winhttp        - 更改到 `netsh winhttp' 上下文。
  35. winsock        - 更改到 `netsh winsock' 上下文。
  36. wlan           - 更改到 `netsh wlan' 上下文。
  37. 下列的子上下文可用:
  38. advfirewall branchcache bridge dhcpclient dnsclient firewall http interface ipsec lan mbn namespace netio nlm p2p ras rpc trace wcn wfp winhttp winsock wlan
  39. 若需要命令的更多帮助信息,请键入命令,接着是空格,
  40. 后面跟 ?。
复制代码
2、以下是通过 netsh interface /? 获取到官方帮助信息:
  1. C:\Users\HelloWorld>netsh interface /?
  2. 下列指令有效:
  3. 此上下文中的命令:
  4. 6to4           - 更改到 `netsh interface 6to4' 上下文。
  5. ?              - 显示命令列表。
  6. dump           - 显示一个配置脚本。
  7. help           - 显示命令列表。
  8. httpstunnel    - 更改到 `netsh interface httpstunnel' 上下文。
  9. ipv4           - 更改到 `netsh interface ipv4' 上下文。
  10. ipv6           - 更改到 `netsh interface ipv6' 上下文。
  11. isatap         - 更改到 `netsh interface isatap' 上下文。
  12. portproxy      - 更改到 `netsh interface portproxy' 上下文。
  13. set            - 设置配置信息。
  14. show           - 显示信息。
  15. tcp            - 更改到 `netsh interface tcp' 上下文。
  16. teredo         - 更改到 `netsh interface teredo' 上下文。
  17. udp            - 更改到 `netsh interface udp' 上下文。
  18. 下列的子上下文可用:
  19. 6to4 httpstunnel ipv4 ipv6 isatap portproxy tcp teredo udp
  20. 若需要命令的更多帮助信息,请键入命令,接着是空格,
  21. 后面跟 ?。
复制代码
3、以下是通过 netsh interface show /? 获取到官方帮助信息:
  1. C:\Users\HelloWorld>netsh interface show /?
  2. 下列指令有效:
  3. 此上下文中的命令:
  4. show interface - 显示接口。
复制代码
二、上下文、子命令、参数详解
(一)网络接口(网卡)管理
1、显示网络接口(网卡)
从上面帮助的三条信息中,我们最终得到一条完整的命令,执行看看:
  1. C:\Users\HelloWorld>netsh interface show interface
  2. 管理员状态     状态           类型             接口名称
  3. -------------------------------------------------------------------------
  4. 已启用            已连接            专用               VMware Network Adapter VMnet1
  5. 已启用            已连接            专用               VMware Network Adapter VMnet8
  6. 已启用            已断开连接          专用               以太网
  7. 已启用            已连接            专用               WLAN
复制代码
这里得到4个接口信息,对应的在 控制面板\网络和 Internet\网络连接  有4个接口的配置选择。
按照前面提到的基本语法:
  1. 基本语法:
  2. netsh [上下文] [子命令] [参数]
复制代码
  1. netsh interface show interface
复制代码
对这个命令进行解构:netsh 是根命令,第一个interface 是1个 上下文,show是子命令,第二个interface是参数。

掌握这个命令的核心是记住每个主要分支(官方帮助把“分支”定义为“上下文”)负责哪块的功能,那么我们先吃透第一个分支(上下文):netsh interface。根据前面的信息,interface这个分支是对接口的操作,可以show(显示),可以set(设置),接口在个人电脑上可以理解为网卡,个人电脑的网卡一般是1卡1口(区别于服务器网卡的1卡多口),所以在个人电脑这个环境下,interface这个分支是对网卡的操作!

2、关闭、启用网络接口(网卡)
2.1关闭网络接口(网卡)
  1. netsh interface set interface "以太网" admin=disable # 禁用
复制代码
2.2启用网络接口(网卡)
  1. netsh interface set interface "以太网" admin=enable  # 启用
复制代码
这里对 "以太网" 接口启停,对应的在 控制面板\网络和 Internet\网络连接  也能看到执行结果。

3、设置dhcp或者静态ip
3.1设置dhcp
  1. netsh interface ip set address "以太网" dhcp
复制代码
3.2设置静态ip(固定ip)
  1. netsh interface ip set address "以太网" static 192.168.1.100 255.255.255.0 192.168.1.1
复制代码
这里对 "以太网" 接口设置动态、静态ip,对应的在 控制面板\网络和 Internet\网络连接\以太网  也能看到执行结果。
这里的“以太网”网卡,实际就是个人电脑的有线网卡。

官方的帮助信息(ip默认就是ipv4):
  1. C:\Users\HelloWorld>netsh interface ip /?
  2. 下列指令有效:
  3. 此上下文中的命令:
  4. ?              - 显示命令列表。
  5. add            - 在一个表格中添加一个配置项。
  6. delete         - 从一个表格中删除一个配置项。
  7. dump           - 显示一个配置脚本。
  8. help           - 显示命令列表。
  9. install        - 安装 IP 协议。
  10. reset          - 重置 IP 配置。
  11. set            - 设置配置信息。
  12. show           - 显示信息。
  13. uninstall      - 卸载 IP 协议。
  14. 若需要命令的更多帮助信息,请键入命令,接着是空格,
  15. 后面跟 ?。
  16. C:\Users\HelloWorld>netsh interface ipv4 /?
  17. 下列指令有效:
  18. 此上下文中的命令:
  19. ?              - 显示命令列表。
  20. add            - 在一个表格中添加一个配置项。
  21. delete         - 从一个表格中删除一个配置项。
  22. dump           - 显示一个配置脚本。
  23. help           - 显示命令列表。
  24. install        - 安装 IP 协议。
  25. reset          - 重置 IP 配置。
  26. set            - 设置配置信息。
  27. show           - 显示信息。
  28. uninstall      - 卸载 IP 协议。
  29. 若需要命令的更多帮助信息,请键入命令,接着是空格,
  30. 后面跟 ?。
复制代码
  1. C:\Users\HelloWorld>netsh interface ipv4 set address /?
  2. 用法: set address [name=]<字符串>
  3.              [[source=]dhcp|static]
  4.              [[address=]<IPv4 地址>[/<整数>] [[mask=]<IPv4 掩码>]
  5.              [[gateway=]<IPv4 地址>|none [gwmetric=]<整数>]
  6.              [[type=]unicast|anycast]
  7.              [[subinterface=]<字符串>]
  8.              [[store=]active|persistent]
  9. 参数:
  10.        标记            值
  11.        name         - 接口名称或索引。
  12.        source       - 下列值之一:
  13.                       dhcp: 启用 DHCP,以便为指定的接口
  14.                             配置 IP 地址。
  15.                       static: 禁用 DHCP,以便为指定的接口
  16.                             配置 IP 地址。如果配置了
  17.                             地址或网关,则必须指定
  18.                             该值。
  19.        address      - 要添加或修改的 IPv4 地址,
  20.                       后边也可以加上子网前缀长度。
  21.        mask         - 指定的 IP 地址的 IP 子网掩码。
  22.        gateway      - 下列值之一:
  23.                       <IPv4 address>: 正在设置的静态 IP 地址的
  24.                                       特定默认网关。
  25.                       none: 未设置任何默认网关。此为默认值。
  26.        gwmetric     - 默认网关的跃点数。仅在指定了网关时
  27.                       才应设置该字段。
  28.        type         - 下列值之一:
  29.                       unicast: 将地址标记为单播地址。
  30.                                此为默认值。
  31.                       anycast: 将地址标记为任意广播地址。
  32.        subinterface - 默认网关存在于其上的子接口的 LUID。
  33.                       此参数仅用于带有
  34.                       多个子接口的接口。
  35.        store        - 下列值之一:
  36.                       active: 设置仅持续到下一次启动。
  37.                       persistent: 设置永久有效。此为默认值。
  38. 备注: 用来启用或禁用 IP 地址配置的 DHCP。
  39.       同时删除所有以前的静态 IP 地址和默认网关,
  40.       并可以添加新的静态 IP 地址和默认网关。
  41. 示例:
  42.        set address name="Wired Ethernet Connection" source=dhcp
  43.        set address "Wired Ethernet Connection" static 10.0.0.9 255.0.0.0 10.0.0.1 1
复制代码
本章节梳理清楚了 netsh interface这个分支,即网络接口(网卡)管理。

三楼、四楼有
(二)防火墙管理
(三)无线网络管理

厉害了 ,这么久了还在更新

TOP

(二)防火墙管理
1、关闭、启用防火墙
1.1关闭防火墙
  1. netsh advfirewall set allprofiles state off  # 禁用
复制代码
1.2启用防火墙
  1. netsh advfirewall set allprofiles state on   # 启用
复制代码
控制面板\所有控制面板项\Windows Defender 防火墙\自定义设置 会跟随设置变化。

以上是在windows家用版环境。
在windows server系统(服务器版)的环境下需要将allprofiles拆分成下面三个参数执行,以下是禁用(启用操作,将off替换成on)。
  1. netsh advfirewall set domainprofile state off
  2. netsh advfirewall set privateprofile state off
  3. netsh advfirewall set publicprofile state off
复制代码
2、新建或删除 入站规则
2.1新建 入站规则
  1. netsh advfirewall firewall add rule name="开放80端口" dir=in action=allow protocol=TCP localport=80
复制代码
开放80端口的入站规则。

2.2删除 入站规则
  1. netsh advfirewall firewall delete rule name="开放80端口"
复制代码
删除名称为“开放80端口”的入站规则。

在对应的控制面板中也能根据cmd命令行执行看到变化, 控制面板\所有控制面板项\Windows Defender 防火墙\高级\入站规则

TOP

(三)无线网络管理
1、扫描可用 Wi-Fi
  1. netsh wlan show networks mode=bssid
复制代码
可以查看当前范围内所有的无线WIFI信息。

2、连接 Wi-Fi
  1. netsh wlan connect name="SSID名称"
复制代码
netsh wlan connect name="小米手机" 连接名称为 “小米手机”的WiFi。

3、导出 Wi-Fi 配置文件
  1. mkdir C:\backup
  2. netsh wlan export profile name="小米手机" folder=C:\backup
复制代码
将小米手机的WiFi信息导出到文件中:
  1. C:\Users\HelloWorld>netsh wlan export profile name="小米手机" folder=C:\backup
  2. 接口配置文件“小米手机”已成功保存在文件“C:\backup\WLAN-小米手机.xml”中。
复制代码

TOP

返回列表