系统学习 Windows 学习路径:从 CMD 到 PowerShell、系统网络,再到 WSL 与 Server

netsh

按上下文查询和修改 IP、DNS、防火墙与 WLAN 配置。

补充说明

netsh 是上下文式网络配置工具:netsh interface ipv4 管地址和 DNS,netsh advfirewall 管防火墙,netsh wlan 管无线配置,netsh interface portproxy 做 TCP 端口转发。进入上下文后可用 show 查询、set/add/delete 修改;多数修改需要管理员权限。

边界:它是传统工具,输出是本地化文本,不适合脚本解析;PowerShell 的 Get-NetIPConfiguration、New-NetFirewallRule、Get-NetFirewallRule 等更结构化。netsh advfirewall 与旧的 netsh firewall 不是一回事,后者已不推荐。netsh interface ip reset 和 netsh winsock reset 属于破坏性修复,会重置网络栈并要求重启。

Windows 10/11 都保留 netsh,但不同版本支持的上下文和参数有差异;netsh wlan 依赖 WLAN AutoConfig 服务,portproxy 依赖 IP Helper 服务。修改前先用 show 记录现状;修改后用同样的 show 验证,不要只看命令有没有报错。

涉及 netsh advfirewall 的修改时,必须先确认远程管理通道,避免把自己锁在外面:确认 RDP/SSH/WinRM 已有放行规则、当前有控制台或带外管理、并先执行 netsh advfirewall export 备份策略。影响范围可能覆盖所有配置文件;回滚用 netsh advfirewall import 导入备份,或删除刚加的规则。不要远程执行 netsh advfirewall set allprofiles state off。

常用示例

# 1. 查看指定网卡的地址、网关和 DNS,先记录现状
C:\> netsh interface ipv4 show config name="Ethernet"

# 2. 列出接口名称和索引,确认要改哪块网卡
C:\> netsh interface ipv4 show interfaces

# 3. 受控修改:设静态地址和首选 DNS;回滚见下一条
C:\> netsh interface ipv4 set address name="Ethernet" static 192.168.1.10 255.255.255.0 192.168.1.1
C:\> netsh interface ipv4 set dnsservers name="Ethernet" static 1.1.1.1 primary

# 4. 回滚到 DHCP 地址和自动 DNS
C:\> netsh interface ipv4 set address name="Ethernet" source=dhcp
C:\> netsh interface ipv4 set dnsservers name="Ethernet" source=dhcp

# 5. 查看防火墙三个配置文件状态,并导出策略备份
C:\> netsh advfirewall show allprofiles
C:\> netsh advfirewall export "C:\backup\firewall.wfw"

# 6. 放行 SSH 入站,仅限专用网络;修改前先确认远程管理通道,避免把自己锁在外面
C:\> netsh advfirewall firewall add rule name="Allow SSH 22" dir=in action=allow protocol=TCP localport=22 profile=private

# 7. 本机 8080 转发到内网 80,查询规则并确认 IP Helper 已运行
C:\> netsh interface portproxy add v4tov4 listenaddress=127.0.0.1 listenport=8080 connectaddress=192.168.1.20 connectport=80
C:\> netsh interface portproxy show v4tov4
C:\> sc query iphlpsvc

# 8. 查看已保存的 Wi-Fi 配置;key=clear 会显示明文密码,注意终端记录
C:\> netsh wlan show profile name="MyWiFi" key=clear

易错点与排错

相关命令

参考链接

读完自测

合上页面,先回答,再展开对照。

  1. 修改 netsh advfirewall 前必须做哪三件事来避免把自己锁在外面?
  2. netsh interface ip reset 和 netsh winsock reset 各有什么影响?为什么都要先备份?
  3. portproxy 为什么不是安全边界?它还依赖哪个服务?
答案
  1. 确认远程管理通道和带外控制、确认已有放行规则、导出 .wfw 策略备份并准备 import/删除规则回滚。
  2. ip reset 重写 TCP/IP 设置并可能清掉静态地址/路由,winsock reset 重置 Winsock 目录并影响第三方网络组件;两者都需重启,先建还原点或导出配置。
  3. 它只做 TCP 转发,不提供认证和访问控制,暴露后仍需防火墙限制;依赖 IP Helper(iphlpsvc)服务。
微信小程序码:扫码打开命令速查小程序

小程序版

微信扫码,随时查命令