创建批处理文件仅更改子网掩码

时间:2016-12-02 17:11:54

标签: batch-file subnet netsh

我有大约500个静态设置IP的Windows服务器/系统。

我正准备通过将子网从/ 23转到/ 22来实施更改以增加网络容量。

实施此更改后,只会更改子网掩码。所有其他设定值将保持不变。我真的不想更改500个子网掩码地址。如果我可以创建批处理文件,我可以将该脚本部署到网络上的所有系统。我遇到的问题是,到目前为止我尝试使用的几种命令变量需要为IP地址添加一个值。我尝试了外卡值,但那些不起作用。

TL; DR?...我只需更改子网掩码而没有其他静态设置值,我想找到一种方法,使用我已经拥有的自动部署工具(PDQ Deploy)使用批处理文件。

任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可以直接在注册表中编辑子网掩码

结合使用for循环和reg.exe。对于子网掩码255.255.0.0:

@echo off
for /F %%G IN ('reg query HKLM\SYSTEM\CurrentControlSet\Services^|find "HKEY_LOCAL_MACHINE"^|find "{"') DO (
reg add "%%G\Parameters\Tcpip" /v SubnetMask /t REG_MULTI_SZ /d 255.255.0.0 /f
)

http://www.pctools.com/guides/registry/detail/269/说子网掩码是REG_BINARY,但我想它必须过时,因为它在我的机器上是REG_MULTI_SZ(Windows 8.1 x64)