J'essaie de faire en sorte que mon routeur transmette les demandes effectuées à mon DNS dynamique Noip vers mon ordinateur local sur lequel un nodjs est en cours d'exécution, en attente de demandes sur le port 14555.
J'ai les dns noip configurés pour qu'un netcat s'exécutant localement reçoive tous les appels effectués sur le port 14555 (c'est-à-dire avec un navigateur):
ncat -l -n -v -v -k -p 14555
Ncat: Version 5.59BETA1 ( http://nmap.org/ncat )
Ncat: Listening on 0.0.0.0:14555
Ncat: Connection from xxx.xxx.xxx.xxx:56409.
GET /socket.io/?EIO=3&transport=polling&t=1430939580269-4 HTTP/1.1
Host: someDomain.ddns.net:14555
Connection: keep-alive
...
NCAT DEBUG: Closing connection.
Ncat: Connection from 84.167.116.141:56411.
Cependant, bien que l'appel semble tout passer et arrive sur ma machine, le noeud ne l'écoute pas. Il ne reçoit rien:
HTTP server listening at 0.0.0.0:14555/
Mon serveur de réception est configuré comme ceci:
var self = this;
// Start the server
this.httpServer = http.createServer(function(req, res){
// Send HTML headers and message
res.writeHead(200,{ 'Content-Type': 'text/html' });
res.end('<h1>Hello Socket Lover!</h1>');
});
//Listen on the port for HTTP requests
this.httpServer.listen(cfg.port, '0.0.0.0');
console.log('HTTP server listening at 0.0.0.0:' + cfg.port + '/');
PS: Cette question a été posée à l'origine sur serverfault , mais on m'a demandé de la déplacer ici.
* edit 1: J'ai fait une autre expérience avec une écoute nginx sur le port 80 et le port de transfert 80, qui a eu le même résultat: un appel arrive sur le port 80 sur un ordinateur local mais nginx ne le reçoit pas.