Qt获取本机IP、MAC、IPV6子网掩码等网络信息

简介: Qt获取本机IP、MAC、IPV6子网掩码等网络信息

参考

Qt网路与通信(获取本机IP、MAC、IPV6子网掩码等网络信息)+ 源码

主要代码

    QString strHostName = QHostInfo::localHostName();//本地主机名
    QString strHostDomain = QHostInfo::localDomainName();//本地域名
    qInfo() <<tr("本地域名:")+strHostDomain;

    m_ptrLineEditHostName->setText(strHostName);

    QHostInfo hostInfo = QHostInfo::fromName(strHostName);
    qInfo() <<tr("addresses:");
    //在windows系统中可以获取全部的IP地址,但是在linux中仅能获取一个ip地址且ip地址为127.0.0.1
    //获取的ip地址可以在/etc/hosts中查到。
    QList<QHostAddress> list = hostInfo.addresses();
    foreach (auto item, list) {
        qInfo() <<item.toString();
    }
    qInfo() <<tr("----------------------------------------------------------");
    qInfo() <<tr("listAddress:");
    QList<QHostAddress> listAddress = QNetworkInterface::allAddresses();//获取本机所有IP
    foreach (auto item, listAddress) {
        qInfo() <<item.toString();
    }
    QList<QNetworkInterface> listNetworkInterface=QNetworkInterface::allInterfaces();//获取所有的网络接口
    qInfo() <<tr("----------------------------------------------------------");
    foreach (auto item, listNetworkInterface) {
        qInfo() << tr("网口设备:") + item.name();
        qInfo() << tr("硬件地址:") + item.hardwareAddress();

        foreach (auto item2, item.addressEntries()) {
            qInfo() << "    " + tr("ip地址:") + item2.ip().toString();
            qInfo() << "    " + tr("子网掩码:") + item2.netmask().toString();
            qInfo() << "    " + tr("广播地址:") + item2.broadcast().toString();
        }
    }
AI 代码解读

效果

image.png

目录
打赏
0
0
0
0
1
分享
相关文章
动态IP代理技术详解及网络性能优化
动态IP代理技术通过灵活更换IP地址,广泛应用于数据采集、网络安全测试等领域。本文详细解析其工作原理,涵盖HTTP、SOCKS代理及代理池的实现方法,并提供代码示例。同时探讨配置动态代理IP后如何通过智能调度、负载均衡、优化协议选择等方式提升网络性能,确保高效稳定的网络访问。
190 2
深入解析:Linux网络配置工具ifconfig与ip命令的全面对比
虽然 `ifconfig`作为一个经典的网络配置工具,简单易用,但其功能已经不能满足现代网络配置的需求。相比之下,`ip`命令不仅功能全面,而且提供了一致且简洁的语法,适用于各种网络配置场景。因此,在实际使用中,推荐逐步过渡到 `ip`命令,以更好地适应现代网络管理需求。
21 11
【网络原理】——带你认识IP~(长文~实在不知道取啥标题了)
IP协议详解,IP协议管理地址(NAT机制),IP地址分类、组成、特殊IP地址,MAC地址,数据帧格式,DNS域名解析系统
HTTP代理IP纯净度 提升用户网络体验的核心竞争力
随着互联网发展,使用HTTP动态代理IP的需求日益增加。高纯净度的代理IP在隐私与安全、网络体验和业务运营方面至关重要。它能保护用户信息、提高数据安全性、确保访问速度和连接稳定,并提升业务效率与信誉度。
54 2
【Azure 环境】从网络包中分析出TLS加密套件信息
An TLS 1.2 connection request was received from a remote client application, but non of the cipher suites supported by the client application are supported by the server. The connection request has failed. 从远程客户端应用程序收到 TLS 1.2 连接请求,但服务器不支持客户端应用程序支持的任何密码套件。连接请求失败。
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
244 5
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
68 4
java怎么设置代理ip:简单步骤,实现高效网络请求
本文介绍了在Java中设置代理IP的方法,包括使用系统属性设置HTTP和HTTPS代理、在URL连接中设置代理、设置身份验证代理,以及使用第三方库如Apache HttpClient进行更复杂的代理配置。这些方法有助于提高网络请求的安全性和灵活性。
101 0
Qt(C++)开发一款图片防盗用水印制作小工具
文本水印是一种常用的防盗用手段,可以将文本信息嵌入到图片、视频等文件中,用于识别和证明文件的版权归属。在数字化和网络化的时代,大量的原创作品容易被不法分子盗用或侵犯版权,因此加入文本水印成为了保护原创作品和维护知识产权的必要手段。 通常情况下,文本水印可以包含版权声明、制作者姓名、日期、网址等信息,以帮助识别文件的来源和版权归属。同时,为了增强防盗用效果,文本水印通常会采用字体、颜色、角度等多种组合方式,使得水印难以被删除或篡改,有效地降低了盗用意愿和风险。 开发人员可以使用图像处理技术和编程语言实现文本水印的功能,例如使用Qt的QPainter类进行文本绘制操作,将文本信息嵌入到图片中,
225 1
【qt】MDI多文档界面开发
【qt】MDI多文档界面开发
176 0

推荐镜像

更多