Batch file 如何使用WMIC在所有物理端口(包括断开连接的媒体端口)上强制DHCP

Batch file 如何使用WMIC在所有物理端口(包括断开连接的媒体端口)上强制DHCP,batch-file,cmd,command-line,wmic,Batch File,Cmd,Command Line,Wmic,有谁能帮我强制所有网络适配器都是DHCP,无论是连接的还是断开的 我是一个相对较新的新手,我一直在研究基于可变以太网适配器名称设置固定ipv4详细信息的方法。它是由其他人对这里各种问题的解决方案拼凑而成的。我相信有更多的雄辩和优雅的方式来做到这一点,我很高兴被指出的方式,但我想尝试,并找出这一点 这个想法是在OOBE windows机器的启动文件夹中有一个调用批处理脚本。搜索连接的适配器,与所述端口的名称无关,将IP地址设置为静态,其余细节已修复。我编写批处理的方式是使用变量创建各种IP配置文件

有谁能帮我强制所有网络适配器都是DHCP,无论是连接的还是断开的

我是一个相对较新的新手,我一直在研究基于可变以太网适配器名称设置固定ipv4详细信息的方法。它是由其他人对这里各种问题的解决方案拼凑而成的。我相信有更多的雄辩和优雅的方式来做到这一点,我很高兴被指出的方式,但我想尝试,并找出这一点

这个想法是在OOBE windows机器的启动文件夹中有一个调用批处理脚本。搜索连接的适配器,与所述端口的名称无关,将IP地址设置为静态,其余细节已修复。我编写批处理的方式是使用变量创建各种IP配置文件,以创建配置文件来设置固定的详细信息,即一个批来编写一个批

作为练习,我想如果我要移动机器并在同一台机器上插入不同的适配器。如何使用IP地址断开连接的适配器切换到DHCP。这将释放地址,以便按照脚本的其余部分搜索已连接的适配器。这就是脚本失败的地方。我可以连接适配器交换机tp DHCP,正确禁用和启用

WMIC NICConfig,其中“IPEnabled='True'和DHCPEnabled='FALSE'”调用EnableDHCP

这只在连接的适配器上起作用

但我正在尝试清除断开连接的适配器上的IP地址,以便在连接的适配器上使用。到目前为止我已经试过了

WMIC NICConfig其中NetConnectionID=7调用EnableDHCP

返回一个
“Description=无效查询”

WMIC NICConfig,其中“PhysicalAdapter='True'”调用EnableDHCP

返回一个
“Description=无效查询”

WMIC NICConfig,其中“DHCPEnabled='FALSE'”调用启用DHCP

返回
{ReturnValue=84;}我认为这将搜索不是DHCP的适配器并更改为DHCP,但我认为适配器必须连接

当我使用

WMIC NICConfig其中“physicaldapter='True'”调用/?

EnableDHCP
看起来是一个选项,但给出了一个
“Description=Invalid query”

有没有办法做我想做的事

我也可以张贴整个脚本,如果有人对它感兴趣,但会离开它,直到要求。提前感谢您的帮助。

我想明白了。
我完全走错了方向。 我试图通过“强制”物理适配器连接或断开DCHP来清除所有适配器的固定ip地址

但如果我说过

netsh int ip reset
wmic path win32_networkadapter where PhysicalAdapter=True call disable
wmic path win32_networkadapter where PhysicalAdapter=True call enable
这达到了我想要的。这将清除IP、子网和网关。有时,解决方案比预期的要容易得多

有没有一种方法可以清除所有物理适配器的DNS信息,而不知道它们的名称,这样,如果IPV4属性处于打开状态,就不会有任何信息

我知道了。
我完全走错了方向。 我试图通过“强制”物理适配器连接或断开DCHP来清除所有适配器的固定ip地址

但如果我说过

netsh int ip reset
wmic path win32_networkadapter where PhysicalAdapter=True call disable
wmic path win32_networkadapter where PhysicalAdapter=True call enable
这达到了我想要的。这将清除IP、子网和网关。有时,解决方案比预期的要容易得多


有没有一种方法可以清除所有物理适配器的DNS信息,而不知道它们的名称,这样,如果IPV4属性处于打开状态,就不会有任何信息

返回值
84
表示该适配器配置上没有启用IP,因此无法启用DHCP。然后,您指定了相同的命令,仅包括那些启用了IP的命令,并且没有收到错误消息。考虑到您的问题是,
搜索连接的端口,与所述端口的名称无关,并且您已经声明命令
工作,但仅在连接的端口上工作,可以解释您所说的
端口
?对不起,我指的是物理适配器。“返回值
84
表示IP未启用”适配器设置为静态IP,但不会插入电缆。
iEnabled
是否表示已连接?因此,处于当前状态的脚本可以找到已连接的适配器(比如adapter1),并应用固定设置并请求设置IP。但是,如果移动了计算机并插入了适配器2,脚本将再次运行。它将尝试执行相同的操作,但适配器1将具有该计算机所需的IP地址。我希望通过DHCPing来“清除”适配器1的详细信息。不,很抱歉没有,如果wmi找不到适配器,您希望它如何更改它的配置数据?很抱歉这篇令人费解的文章,感谢您的回复。有没有一种方法可以清除断开连接的适配器上的IP地址(我试图通过将其设置为DHCP来实现这一点)以释放IP地址,以便在连接的适配器上使用,这在脚本中会进一步发生。我认为这是最简单的说法。返回值
84
意味着该适配器配置上没有启用IP,因此无法启用DHCP。然后,您指定了相同的命令,仅包括那些启用了IP的命令,并且没有收到错误消息。考虑到您的问题是,
搜索连接的端口,与所述端口的名称无关,并且您已经声明命令
工作,但仅在连接的端口上工作,可以解释您所说的
端口
?对不起,我指的是物理适配器。“返回值
84
表示IP未启用”适配器设置为静态IP,但不会插入电缆。
iEnabled
是否表示已连接?所以里面的脚本是curre