0
내가 익스프레스 JS와 클라이언트의 IP 주소를 얻기 위해 노력하고 원격 클라이언트의 IP 주소 NodeJS를 가져 오기, 코드는 다음과 같습니다, ExpressJs
var ip;
if (req.headers['x-forwarded-for']) {
ip = req.headers['x-forwarded-for'].split(",")[0];
} else if (req.connection && req.connection.remoteAddress) {
ip = req.connection.remoteAddress;
} else {
ip = req.ip;
}
ip = (ip.length < 15 ? ip : (ip.substr(0, 7) === '::ffff:' ? ip.substr(7) : undefined));
console.log('ip address',ip);
하지만 때마다 내가 얻고 로컬 호스트의 IP 주소가 아닌 공용 IP 주소 , 그래서 어떻게 localhost IP 주소 대신 공인 IP 주소를 얻을 수 있습니까? 누구든지 나를 도와 줄 수 있습니까?
미리 감사드립니다.
검사 서버 인프라가로드 밸런서, 프록시 등이있는 클라이언트의 IP 주소입니다 ... 실제 서버 앞에서 위의 로컬 값은 클라이언트가 원래 연결 한 실제 공용 IP/포트가 아닌 로컬 서버를 반환 할 수 있습니다. –