Programing

Node.js에서 로컬 IP 주소를 얻으려면 어떻게해야합니까?

crosscheck 2020. 11. 29. 09:54
반응형

Node.js에서 로컬 IP 주소를 얻으려면 어떻게해야합니까?


나는 언급하지 않는다

127.0.0.1

그러나 오히려 다른 컴퓨터가 시스템에 액세스하는 데 사용하는 것입니다.

192.168.1.6


http://nodejs.org/api/os.html#os_os_networkinterfaces

var os = require('os');

var interfaces = os.networkInterfaces();
var addresses = [];
for (var k in interfaces) {
    for (var k2 in interfaces[k]) {
        var address = interfaces[k][k2];
        if (address.family === 'IPv4' && !address.internal) {
            addresses.push(address.address);
        }
    }
}

console.log(addresses);

https://github.com/indutny/node-ip

var ip = require("ip");
console.dir ( ip.address() );

컴팩트하고 단일 파일 스크립트에 필요한 내 버전은 다른 사람들에게 유용하기를 바랍니다.

var ifs = require('os').networkInterfaces();
var result = Object.keys(ifs)
  .map(x => [x, ifs[x].filter(x => x.family === 'IPv4')[0]])
  .filter(x => x[1])
  .map(x => x[1].address);

또는 원래 질문에 답하려면 :

var ifs = require('os').networkInterfaces();
var result = Object.keys(ifs)
  .map(x => ifs[x].filter(x => x.family === 'IPv4' && !x.internal)[0])
  .filter(x => x)[0].address;

$ npm install --save quick-local-ip

에 의해

var myip = require('quick-local-ip');

//getting ip4 network address of local system
myip.getLocalIP4();

//getting ip6 network address of local system
myip.getLocalIP6();

https://github.com/dominictarr/my-local-ip

$ npm install -g my-local-ip
$ my-local-ip

또는

$ npm install --save my-local-ip
$ node
> console.log(require('my-local-ip')())

이 작업을 수행하는 아주 작은 모듈입니다.


Node 버전 0.9.6 이후로 각 요청에 따라 서버의 IP 주소를 얻는 간단한 방법이 있습니다. 컴퓨터에 여러 IP 주소가 있거나 로컬 호스트에서 작업을 수행하는 경우에도 중요 할 수 있습니다.

req.socket.localAddress 현재 연결을 기반으로 실행중인 머신 노드의 주소를 반환합니다.

If you have a public IP address of 1.2.3.4 and someone hits your node server from the outside then the value for req.socket.localAddress will be "1.2.3.4".

If you hit the same server from localhost then the address will be "127.0.0.1"

If your server has multiple public addresses then the value of req.socket.localAddress will be the correct address of the socket connection.

참고URL : https://stackoverflow.com/questions/10750303/how-can-i-get-the-local-ip-address-in-node-js

반응형