رمز التنفيذ:
نسخة الكود كما يلي:
var os = required ('OS') ؛
وظيفة getLocalip () {
خريطة var = [] ؛
var ifaces = os.networkIndFaces () ؛
console.log (إذا كانت) ؛
لـ (var dev in if efaces) {
if (dev.indexof ('eth0')! = -1) {
var tokens = dev.split (':') ؛
var dev2 = null ؛
if (tokens.length == 2) {
dev2 = 'eth1:' + الرموز [1] ؛
} آخر إذا (Tokens.Length == 1) {
dev2 = 'eth1' ؛
}
if (null == ife [dev2]) {
يكمل؛
}
// ابحث عن IP لـ eth0 و eth1 على التوالي
var ip = null ، ip2 = null ؛
إذا كان [dev]. for (وظيفة (تفاصيل) {
إذا (التفاصيل. family == 'ipv4') {
IP = التفاصيل.
}
}) ؛
إذا كان [dev2]. foreach (وظيفة (تفاصيل) {
إذا (التفاصيل. family == 'ipv4') {
IP2 = التفاصيل.
}
}) ؛
if (null == ip || null == ip2) {
يكمل؛
}
// أضف السجل إلى الخريطة
if (ip.indexof ('10. ') == 0 ||
ip.indexof ('172.') == 0 ||
ip.indexof ('192.') == 0) {
map.push ({"intranet_ip": ip ، "internet_ip": ip2}) ؛
} آخر {
map.push ({"intranet_ip": ip2 ، "internet_ip": ip}) ؛
}
}
}
خريطة العودة
}
console.log (getLocalip ()) ؛