如图所示有多个网卡

本地网卡配置了多个IP

class Public_IPOp:
@staticmethod
def GetLocalIP():
rt = [False]
# 根节点
reg_root = win32con.HKEY_LOCAL_MACHINE
# 网卡设备键的路径
reg_path = r"SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}"
# 权限和参数设置
reg_flags = win32con.WRITE_OWNER | win32con.KEY_WOW64_64KEY | win32con.KEY_ALL_ACCESS
# 网卡IP信息地址
IP_Path = r"SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces"
try:
key = win32api.RegOpenKeyEx(reg_root, reg_path, 0, reg_flags)
for item in win32api.RegEnumKeyEx(key):
# 先判断是否是PCI设备
try:
subPath = reg_path + '\\' + item[0]
subkey = win32api.RegOpenKey(reg_root, subPath, 0, reg_flags)
except:
pass
# rt.clear()
# rt.append(False)
# rt.append(subPath+'拒绝访问')
try:
if 0 == win32api.RegQueryValueEx(subkey, 'DeviceInstanceID')[0].find('PCI'):
# 判断是否是ethernet
LowerRangePath = reg_path + '\\' + item[0] + '\\Ndi\\Interfaces'
LowerRangekey = win32api.RegOpenKey(reg_root, LowerRangePath, 0, reg_flags)
if 'ethernet' == win32api.RegQueryValueEx(LowerRangekey, 'LowerRange')[0]:
ip_path = IP_Path + '\\' + win32api.RegQueryValueEx(subkey, 'NetCfgInstanceId')[0]
# print(ip_path)
IpKey = win32api.RegOpenKey(reg_root, ip_path, 0, reg_flags)
if len(win32api.RegQueryValueEx(IpKey, 'IPAddress')) > 0:
if len(win32api.RegQueryValueEx(IpKey, 'IPAddress')[0]) > 0:
# print(win32api.RegQueryValueEx(IpKey, 'IPAddress')[0][0])
rt.clear()
rt.append(True)
rt.append(win32api.RegQueryValueEx(IpKey, 'IPAddress')[0][0]) except:
pass
# rt.clear()
# rt.append(False)
# rt.append(item[0]+'系统找不到DeviceInstanceID')
# 关闭键
win32api.RegCloseKey(key)
except Exception as e:
rt.clear()
rt.append(False)
rt.append("注册表拒绝访问,请检查路径%s是否存在或以管理员身份运行" % (reg_path)) return rt

在有多个网卡,配置了多个IP的情况下,python 获取本地网卡的主IP的更多相关文章

  1. ioctl()获取本地网卡设备信息

    获得eth0接口所有信息: #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #inclu ...

  2. VC获取物理网卡的MAC地址

    获取网卡的MAC地址的方法很多,如:Netbios,SNMP,GetAdaptersInfo等.经过测试发现 Netbios 方法在网线拔出的情况下获取不到MAC,而 SNMP 方法有时会获取多个重复 ...

  3. 烂泥:VMWare Workation双网卡配置IP地址

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 前几天给一个客户做远程项目实施,客户那边的服务器是Windows OS的,我们这边的业务 ...

  4. Linux网卡配置及学习linux的注意事项

    一.网卡配置 1.ifconfig网卡信息,配置IP ifconfig eth0 192.168.2.102 2.修改网卡配置(连接不了可能是IP给占用了) 进入编辑界面命令:vi /etc/sysc ...

  5. centos网卡配置和防火墙停止和启动

    Linux 设置网卡配置ip vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=static ...

  6. 【转】Ubuntu网卡配置

    一.网卡地址配置Ubuntu的网络配置文件是:/etc/network/interfaces1.以DHCP 方式配置网卡   auto eth0   iface eth0 inet dhcp用sudo ...

  7. Ubuntu 为网卡配置静态IP地址

    为网卡配置静态IP地址编辑文件/etc/network/interfaces:sudo vi /etc/network/interfaces并用下面的行来替换有关eth0的行:# The primar ...

  8. 给网卡配置10个临时ip地址,但是不配置192.168.17.15这个ip

    给网卡配置10个临时ip地址,但是不配置192.168.17.15这个ip #!/bin/bash `;do ];then continue fi ifconfig eth0:$i .$i netma ...

  9. linux学习之centos(三):网卡配置

    Linux系统版本:Centos 6.5 在linux学习之centos(二):虚拟网络三种连接方式和SecureCRT的使用中,使用远程工具SecureCRT,通过“ifconfig eth0 + ...

随机推荐

  1. Hadoop(五)—— HDFS NameNode、DataNode工作机制

    一.NN与2NN工作机制 NameNode(NN) 1.当HDFS启动时,会加载日志(edits)和镜像文件(fsImage)到内存中. 2-4.当元数据的增删改查请求进来时,NameNode会先将操 ...

  2. IE安全限制

    在安全级别下面设置置进行如下调整: A.ActiveX控件自动提示:启用 B.对标记为可安全执行脚本的ActiveX控件执行脚本:启用 C.对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本 ...

  3. golang调用 exec命令 出现too many open files

    systemd 启动的服务, 跟系统的ulimit 没有关系. 大概的意思就是通过systemd启动的服务,不会使用ulimit中的配置,需要在systemd中或者service配置文件中定义,可以通 ...

  4. 2019年java全栈工程师学习大全

    技术更新日新月异,对于初入职场的同学来说,经常会困惑该往那个方向发展,这一点我是深有体会的. 我刚开始学习 Java 那会,最大的问题就是不知道该学什么,以及学习的顺序,我相信这也是很多初学者经常面临 ...

  5. 工具系列 | 使用Lodop进行WEB打印程序开发

    Lodop(标音:劳道谱,俗称:露肚皮)是专业WEB控件,用它既可裁剪输出页面内容,又可用程序代码直接实现 复杂打印.控件功能强大,却简单易用,所有调用如同JavaScript扩展语句. WEB套打可 ...

  6. 软件定义网络基础---REST API的设计规范

    一:REST API的设计 REST API是基于HTTP协议进行设计的,由HTTP动词+URI组成 (一)HTTP动词 (二)资源的原型 文档(Document): 文档是资源的单一表现形式: 集合 ...

  7. Bladex使用代码生成器操作步骤

    一.从私服上下载BladeX和Saber 二.运行BladeX所有服务 三.运行Saber 四.数据库创建自己需要使用的表(建议表名和字段名为:bldex_xxxx,xxx_xxxx,不要使用驼峰命名 ...

  8. base64方式显示控件

    data:,文本数据 data:text/plain,文本数据 data:text/html,HTML代码 data:text/html;base64,base64编码的HTML代码 data:tex ...

  9. [LeetCode] 313. Super Ugly Number 超级丑陋数

    Write a program to find the nth super ugly number. Super ugly numbers are positive numbers whose all ...

  10. V8世界探险 (1) - v8 API概览

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/lusing/article/detai ...