Código de implementação:
A cópia do código é a seguinte:
var OS = requer ('OS');
função getLocalip () {
var map = [];
var ifaces = os.networkInterfaces ();
console.log (ifaces);
para (var dev em ifaces) {
if (dev.indexof ('eth0')! = -1) {
var tokens = dev.split (':');
var dev2 = nulo;
if (tokens.length == 2) {
dev2 = 'eth1:' + tokens [1];
} else if (tokens.length == 1) {
dev2 = 'eth1';
}
if (null == ifaces [dev2]) {
continuar;
}
// Encontre o IP de eth0 e eth1, respectivamente
var ip = null, ip2 = null;
ifaces [dev] .foreach (function (detalhes) {
if (detalhe.family == 'ipv4') {
ip = detalhe.address;
}
});
ifaces [dev2] .foreach (function (detalhes) {
if (detalhe.family == 'ipv4') {
ip2 = detalhe.address;
}
});
if (null == ip || null == ip2) {
continuar;
}
// Adicione o registro ao mapa
if (ip.indexof ('10. ') == 0 ||
ip.indexof ('172.') == 0 ||
ip.indexOf ('192.') == 0) {
map.push ({"intranet_ip": ip, "internet_ip": ip2});
} outro {
map.push ({"intranet_ip": ip2, "internet_ip": ip});
}
}
}
mapa de retorno;
}
console.log (getLocalip ());