|
发表于 2025-2-13 14:31:05
|
显示全部楼层
浙江省宁波市
这个脚本是一个 Windows 批处理文件,主要用于修改网络适配器的 MAC 地址 和 PnP 能力,并重新启用网络接口。以下是脚本的详细功能解析: 脚本的主要功能 1. 修改网络适配器的 MAC 地址: ◦ 脚本通过 wmic 命令获取所有物理网络适配器的设备 ID。 ◦ 调用 :MAC 子程序生成一个随机的 MAC 地址。 ◦ 使用 reg add 命令将生成的 MAC 地址写入注册表,修改网络适配器的 NetworkAddress 值。 2. 修改网络适配器的 PnP 能力: ◦ 脚本再次遍历所有物理网络适配器。 ◦ 使用 reg add 命令修改注册表中的 PnPCapabilities 值,将其设置为 24(十六进制)。 3. 重新启用网络接口: ◦ 脚本通过 wmic 获取所有网络连接的名称。 ◦ 使用 netsh 命令依次禁用和启用每个网络接口,以应用修改后的设置。 脚本的详细步骤 1. 设置标题和启用扩展功能 batch 复制 title baidu.com Net Cleaner (gentle)
@echo on
SETLOCAL ENABLEDELAYEDEXPANSION
SETLOCAL ENABLEEXTENSIONS • title:设置命令提示符窗口的标题。 • @echo on:显示执行的命令。 • SETLOCAL ENABLEDELAYEDEXPANSION:启用延迟变量扩展。 • SETLOCAL ENABLEEXTENSIONS:启用命令扩展。 2. 遍历物理网络适配器并修改 MAC 地址 batch 复制 FOR /F "tokens=1" %%a IN ('wmic nic where physicaladapter^=true get deviceid ^| findstr [0-9]') DO (
CALL :MAC
FOR %%b IN (0 00 000) DO (
REG QUERY HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\%%b%%a >NUL 2>NUL && REG ADD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\%%b%%a /v NetworkAddress /t REG_SZ /d !MAC! /f >NUL 2>NUL
)
) • 使用 wmic 获取物理网络适配器的设备 ID。 • 调用 :MAC 子程序生成随机 MAC 地址。 • 遍历可能的注册表路径(0、00、000),并将生成的 MAC 地址写入注册表。 3. 修改网络适配器的 PnP 能力 batch 复制 FOR /F "tokens=1" %%a IN ('wmic nic where physicaladapter^=true get deviceid ^| findstr [0-9]') DO (
FOR %%b IN (0 00 000) DO (
REG QUERY HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\%%b%%a >NUL 2>NUL && REG ADD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\%%b%%a /v PnPCapabilities /t REG_DWORD /d 24 /f >NUL 2>NUL
)
) • 再次遍历物理网络适配器。 • 修改注册表中的 PnPCapabilities 值为 24(十六进制),这可能用于禁用某些 PnP 功能。 4. 重新启用网络接口 batch 复制 FOR /F "tokens=2 delims=, skip=2" %%a IN ('"wmic nic where (netconnectionid like '%%') get netconnectionid,netconnectionstatus /format:csv"') DO (
netsh interface set interface name="%%a" disable >NUL 2>NUL
netsh interface set interface name="%%a" enable >NUL 2>NUL
) • 使用 wmic 获取所有网络连接的名称。 • 使用 netsh 命令禁用并重新启用每个网络接口,以应用修改后的设置。 5. 生成随机 MAC 地址 batch 复制 :MAC
SET COUNT=0
SET GEN=ABCDEF0123456789
SET GEN2=26AE
SET MAC=
:MACLOOP
SET /a COUNT+=1
SET RND=%random%
::%%n,
SET /A RND=RND%%16
SET RNDGEN=!GEN:~%RND%,1!
SET /A RND2=RND%%4
SET RNDGEN2=!GEN2:~%RND2%,1!
IF "!COUNT!" EQU "2" (SET MAC=!MAC!!RNDGEN2!) ELSE (SET MAC=!MAC!!RNDGEN!)
IF !COUNT! LEQ 11 GOTO MACLOOP • 生成一个随机的 MAC 地址。 • MAC 地址的格式为 XX:XX:XX:XX:XX:XX,其中第二个字符从 GEN2(26AE)中随机选择,其余字符从 GEN(ABCDEF0123456789)中随机选择。 脚本的作用 1. 修改 MAC 地址: ◦ 通过修改注册表中的 NetworkAddress 值,脚本可以更改网络适配器的 MAC 地址。 ◦ 这通常用于绕过网络限制或隐藏设备的真实身份。 2. 修改 PnP 能力: ◦ 修改 PnPCapabilities 值可能用于禁用某些即插即用功能,例如防止系统自动重新配置网络适配器。 3. 重新启用网络接口: ◦ 禁用并重新启用网络接口,以确保修改后的设置生效。 潜在风险 1. 修改注册表: ◦ 直接修改注册表可能会导致系统不稳定或网络功能异常。 ◦ 如果修改错误,可能导致网络适配器无法正常工作。 2. MAC 地址冲突: ◦ 随机生成的 MAC 地址可能与网络中的其他设备冲突,导致网络问题。 3. PnP 能力修改: ◦ 修改 PnPCapabilities 可能会影响系统的即插即用功能,导致设备无法正常识别或配置。 |
|