安装模块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结束'

python之修改本地Ip地址的更多相关文章

  1. 一个自动修改本地IP地址的BAT

    set /a num1=%random%%%200+1+1  //生成随机数set ip=192.168.1.//ip 主体set ip1=%ip%%num1% //拼接两部分cmd /c netsh ...

  2. python获取本地ip地址的方法

    #_*_coding:utf8_*_ #以下两种方法可以在ubuntu下或者windows下获得本地的IP地址 import socket # 方法一 localIP = socket.gethost ...

  3. Oracle LISTENER 主机名修改为IP地址后LISTENER无法监听到实例 oracle监听错误与hosts文件配置

    为什么listener.ora文件里面HOST后面到底应该输入IP地址还是主机名.我的经验告诉我,这边最好使用主机名.很多的时候,一个机器绑定的不只一个IP地址,如HOST后面是IP地址,那么ORAC ...

  4. 获取本地ip地址 C#

    与ipconfig获取的所有信息一致的方法: private void GetIp() { System.Diagnostics.Process cmdp= new System.Diagnostic ...

  5. Python之实用的IP地址处理模块IPy

    实用的IP地址处理模块IPy 在IP地址规划中,涉及到计算大量的IP地址,包括网段.网络掩码.广播地址.子网数.IP类型等 别担心,Ipy模块拯救你.Ipy模块可以很好的辅助我们高效的完成IP的规划工 ...

  6. 获取本地IP地址信息

    2012-06-05    /// <summary>         /// 获取本地IP地址信息         /// </summary>         void G ...

  7. 获取Mac、CPUID、硬盘序列号、本地IP地址、外网IP地址OCX控件

    提供获取Mac.CPUID.硬盘序列号.本地IP地址.外网IP地址OCX控件 开发语言:vc++ 可应用与WEB程序开发应用 <HTML><HEAD><TITLE> ...

  8. c、c++混编实现查询本地IP地址

    一.思路 1.要想得到本地IP地址,可以通过本机名来查询,所以首先得得到本机名. 2.牵涉到IP地址,首先想到牵涉到网络协议,因此得加载套接字协议,所以先使用WSAStartup函数完成对Winsoc ...

  9. CentOS 网络设置修改 指定IP地址 DNS 网关(转)

    CentOS 网络设置修改 指定IP地址 DNS 网关(实测 笔记)   环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Centos-6.5-x86_64 ...

  10. Oracle 11g RAC 修改各类IP地址

    Oracle 11g RAC 修改各类IP地址 首先,我们都知道Oracle 11g RAC中的IP主要有:Public IP.VIP.SCAN VIP.Private IP这几种. 一般这类改IP地 ...

随机推荐

  1. login_while

    # -*- coding: utf-8 -*- # @Time : 2020/7/25 22:45 # @Author : Breeze # @FileName: login_while.py use ...

  2. [整理]String用法/转换substring

    substring(a)从a开始 substring(a,b) [a,b] s=123456789 s.substring(3):456789 s.substring(0,3):1234

  3. Post 大小超出允许的限制

    原因大体找到了: 除了项目最外层有web.config, 在 Pages页面下还有一个web.config配置文件, 遍历顺序为 :aspx 页面同级目录-->逐级父级目录-->根目录-- ...

  4. circos plot in R

    FIN=read.table(IN,header=TRUE) circos.clear() circos.par("start.degree" = 90) circos.initi ...

  5. 【Beat】Scrum Meeting 4

    时间:2021年6月29日 1.各个成员今日完成的任务以及贡献小时数 姓名 今日完成任务 贡献小时数 鑫 继续进行bug的修改 4 荣娟 继续进行bug的修改 4 亚楠 继续进行bug的修改 4 桂婷 ...

  6. objectarx调用python注意点

    1. 用conda先装好虚拟环境,为了兼容cad2010,最高只能用python3.5(已经不维护了), 如果cad高版本建议python3.6+ 2. 能用pip安装的就用pip安装, 不能用pip ...

  7. leetcode medium 记录 51-100

      # Title Solution Acceptance Difficulty Frequency     92 Reverse Linked List II       40.3% Medium ...

  8. keras图片数字识别入门AI机器学习

    通过使用mnist(AI界的helloworld)手写数字模型训练集,了解下AI工作的基本流程. 本例子,要基于mnist数据集(该数据集包含了[0-9]的模型训练数据集和测试数据集)来完成一个手写数 ...

  9. Python学习笔记--文件的相关操作

    文件的读取操作 读操作 实现: read()--读完 read(10)--读取10个字节 readline()--将所有行并到一行输出 readlines()--一次读取一行 文件的关闭: 实现: 上 ...

  10. python调用方法或者变量时出现未定义异常的原因,可能会是没有正确实例化

    当引用某个某块时 例如 Testpython import test class test(object): def __init__(): -- self.mimi = test def test1 ...