最近想做一个小工具用于禁用启用和设置网卡成静态或者将网卡设置成动态获取,因为其他原因,网卡的名字改成了数字2,这是后发现用netsh无法设置静态地址和设置动态获取
def set_static_ip(adapter_name, ip_address, subnet_mask, gateway):
subprocess.Popen('netsh interface ip set address "{}" static {} {} {} '.format(adapter_name, ip_address, subnet_mask, gateway)
set_static_ip("2", "192.168.1.100", "255.255.255.0", "192.168.1.1")
不知道如何解决这个问题
以下回答参考GPT并且由Bony-整理:
可以尝试使用网卡的GUID代替网卡名称来进行设置。可以通过以下步骤获取网卡GUID:
打开CMD命令行窗口
输入“wmic nicconfig get caption,settingid”,回车执行
在结果列表中找到要设置的网卡名称,并复制其对应的settingid
然后将获取到的settingid代替网卡名称,修改代码如下:
可以尝试使用网卡的GUID代替网卡名称来进行设置。可以通过以下步骤获取网卡GUID:
打开CMD命令行窗口
输入“wmic nicconfig get caption,settingid”,回车执行
在结果列表中找到要设置的网卡名称,并复制其对应的settingid
然后将获取到的settingid代替网卡名称,修改代码如下:
将"{GUID}"替换成获取到的网卡GUID即可。