1234567891011121314151617181920212223242526272829303132333435363738394041 |
- 'use strict';
- var os = require('os');
- var type = {
- v4: {
- def: '127.0.0.1',
- family: 'IPv4'
- },
- v6: {
- def: '::1',
- family: 'IPv6'
- }
- };
- function internalIp(version) {
- var options = type[version];
- var ret = options.def;
- var interfaces = os.networkInterfaces();
- Object.keys(interfaces).forEach(function (el) {
- interfaces[el].forEach(function (el2) {
- if (!el2.internal && el2.family === options.family) {
- ret = el2.address;
- }
- });
- });
- return ret;
- }
- function v4() {
- return internalIp('v4');
- }
- function v6() {
- return internalIp('v6');
- }
- module.exports = v4;
- module.exports.v4 = v4;
- module.exports.v6 = v6;
|