通过节点或电子找出哪个网络接口

时间:2018-12-07 18:32:06

标签: javascript node.js electron

我使用一个电子应用程序,该应用程序需要将其活动IP地址(在LAN中)发送到我的服务器以进行持续通信。为此,我使用了一个很棒的脚本,它在这里很好用:

function getIPs() {
    let ifaces = os.networkInterfaces();
    console.log(ifaces);
    let ipAdresse = '';
    Object.keys(ifaces).forEach(function (ifname) {
        let alias = 0;
        ifaces[ifname].forEach(function (iface) {
            if ('IPv4' !== iface.family || iface.internal !== false) {
                return;
            }
            if (alias >= 1) {
                console.log(ifname + ':' + alias, iface.address);
            } else {
                console.log(ifname, iface.address);
                ipAdress = iface.address;
            }
            ++alias;
        });
    });
    return ipAdress;
}

我遇到的问题是:如果此客户端连接到多个网络(有时用户也连接到WIFI以具有互联网),则我无法确定哪个是我的LAN,哪个属于WIFI。由于我无法控制使用的WIFI,因此无法通过其IP范围来区分它们。

是否可以(在Node或Electron中)告诉网络接口是否属于Cable或WIFI?

0 个答案:

没有答案