Если вы не укажете имя хоста, сервер запустится с 0.0.0.0. Таким образом, вы можете не получить желаемый результат [читай Макрейдинг]. Для HTTP вы можете использовать HTTP-заголовок « Host » [обязательный, начиная с HTTP / 1.1], который может оказаться полезным для вашего случая.
Тем не менее, вы можете попробовать:
socket.address()
Возвращает связанный адрес и порт сокета в соответствии с сообщением
операционная система. Возвращает объект с двумя свойствами, например
{"address": "192.168.57.1", "port": 62053}
Вот пример для tcp:
var netService = require('net').createServer(function(socket) {
address = netService.address();
console.log("Stream on %j", socket.address());
console.log("opened server on %j", address);
});
netService.listen(8001);
Пример для http:
var httpService = require('http').createServer(function(req, res){
console.log("Stream on %j", req.connection.address());
res.end("Hi");
});
httpService.listen(8000);