安装模块pip install wmi
# -*- coding: cp936 -*-
#
# FileName: ModifyIP.py
# Date : 2008-01-15
#
import wmi
print'正在修改IP,请稍候...'
wmiService = wmi.WMI()
colNicConfigs = wmiService.Win32_NetworkAdapterConfiguration(IPEnabled=True)
#for objNicConfig in colNicConfigs:
# print objNicConfig.Index
# print objNicConfig.SettingID
# print objNicConfig.Description.encode("cp936")
# print objNicConfig.IPAddress
# print objNicConfig.IPSubnet
# print objNicConfig.DefaultIPGateway
# print objNicConfig.DNSServerSearchOrder
if len(colNicConfigs)<1:
print'没有找到可用的网络适配器'
exit()
objNicConfig = colNicConfigs[0]
#for method_name in objNicConfig.methods:
# method = getattr(objNicConfig, method_name)
# print method
arrIPAddresses =['172.16.151.147']
arrSubnetMasks =['255.255.255.0']
arrDefaultGateways =['172.16.151.1']
arrGatewayCostMetrics =[1]
arrDNSServers =['172.16.151.10']
intReboot =0
returnValue = objNicConfig.EnableStatic(IPAddress= arrIPAddresses,SubnetMask= arrSubnetMasks)
if returnValue[0]==0:
print'设置IP成功'
elif returnValue[0]==1:
print'设置IP成功'
intReboot +=1
else:
print'修改IP失败: IP设置发生错误'
exit()
returnValue = objNicConfig.SetGateways(DefaultIPGateway= arrDefaultGateways,GatewayCostMetric= arrGatewayCostMetrics)
if returnValue[0]==0:
print'设置网关成功'
elif returnValue[0]==1:
print'设置网关成功'
intReboot +=1
else:
print'修改IP失败: 网关设置发生错误'
exit()
returnValue = objNicConfig.SetDNSServerSearchOrder(DNSServerSearchOrder= arrDNSServers)
if returnValue[0]==0:
print'设置DNS成功'
elif returnValue[0]==1:
print'设置DNS成功'
intReboot +=1
else:
print'修改IP失败: DNS设置发生错误'
exit()
if intReboot >0:
print'需要重新启动计算机'
else:
print''
print'修改后的配置为:'
print'IP: ',', '.join(objNicConfig.IPAddress)
print'掩码: ',', '.join(objNicConfig.IPSubnet)
print'网关: ',', '.join(objNicConfig.DefaultIPGateway)
print'DNS: ',', '.join(objNicConfig.DNSServerSearchOrder)
print'修改IP结束'
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了