通过QNetworkInterface可以获取所有网络接口的信息,什么是网络接口,这个概念我也描述不清楚,通过调用allInterfaces方法可以返回一个list,list里面包含了接口名称,接口对应的MAC地址,和与该MAC地址关联的所有IP地址信息(IPV6地址,IPV4地址,子网掩码,广播地址)。
假如电脑只有一个实际网卡,那么list里面就会包含两个接口,一个是实际的网卡接口,一个是回环接口(IP 127.0.0.1)。
假如电脑还安装了虚拟机,那list里面还会有虚拟的接口,接口里面包括虚拟MAC信息,虚拟IP信息等等。
一般list里面的第一个接口就是实际用来上网那个接口,如果有人想要请求本机的设备地址和IP地址,那只需要在list的第一个接口里面获取相关的MAC地址和IP信息就可以了。