3 votes

Node.js websocket "Erreur : écoute EADDRNOTAVAIL"

L'application fonctionne bien en local, mais lorsqu'elle se connecte au serveur, elle affiche une erreur. Je me connecte au serveur via le port 22

Mais mon application se connecte au serveur sur le port 80.

Voici l'erreur

Erreur: écoute EADDRNOTAVAIL Erreur: écoute EADDRNOTAVAIL
 à errnoException (net.js:904:11)
 à Server._listen2 (net.js:1023:19)
 à listen (net.js:1064:10)
 à net.js:1146:9
 à dns.js:72:18
 à process._tickCallback (node.js:419:13)
 à Function.Module.runMain (module.js:499:11)
 à démarrage (node.js:119:16)
 à node.js:906:3

Je lance netstat -tulpn | grep 22

Résultat :

 tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      683/sshd
 tcp6       0      0 :::22                   :::*                    LISTEN      683/sshd

Mais lorsque je lance netstat -tulpn | grep 80

Rien n'est affiché.

Une aide. Est-ce un problème du serveur ?

En cours d'exécution de netstat -nlt

     Connexions Internet actives (serveurs uniquement)
     Proto Recv-Q Send-Q Adresse locale           Adresse étrangère        État
     tcp        0      0 127.0.0.1:27017         0.0.0.0:*               LISTEN
     tcp        0      0 127.0.0.1:5901          0.0.0.0:*               LISTEN
     tcp        0      0 127.0.0.1:5902          0.0.0.0:*               LISTEN
     tcp        0      0 0.0.0.0:6001            0.0.0.0:*               LISTEN
     tcp        0      0 0.0.0.0:6002            0.0.0.0:*               LISTEN
     tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
     tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN
     tcp6       0      0 :::22                   :::*                    LISTEN
     tcp6       0      0 ::1:631                 :::*                    LISTEN

En cours d'exécution de netstat -anp | grep :80

     tcp        1      0 162.243.145.226:60728   91.189.94.25:80         CLOSE_WAIT  1726/ubuntu-geoip-p
     tcp        1      0 162.243.145.226:47842   74.125.239.148:80       CLOSE_WAIT  8104/epiphany-brows
     tcp        1      0 162.243.145.226:60727   91.189.94.25:80         CLOSE_WAIT  1417/ubuntu-geoip-p
     tcp        1      0 162.243.145.226:58818   198.41.30.199:80        CLOSE_WAIT  8104/epiphany-brows

Voici la source

source-link

0voto

ThoriumBR Points 5222

Exécutez-vous le programme en tant que root ?

Si vous n'exécutez pas en tant que root, vous ne pouvez pas lier de programme aux ports inférieurs à 1024. Ils sont considérés comme des ports privilégiés, et seul root peut les utiliser.

Si vous voulez exécuter en tant que root, ne le faites pas. Exécuter en tant que root peut créer des problèmes si quelqu'un exploite votre programme et obtient un shell, et découvre qu'il s'agit d'un shell root.

Exécutez en tant qu'utilisateur non privilégié, et changez le port de 80 à quelque chose au-dessus de 1024.

0 votes

Ok.alors j'utilise le port comme 3000. Mais je continue à recevoir une erreur. Je veux seulement changer le port dans une Appli?

0 votes

Je ne connais pas votre application, vous devrez donc découvrir dans les options de configuration ou les fichiers où changer le port.

0 votes

Oui. dans l'application je change le port. je reçois toujours cette erreur. dans le serveur, dois-je faire une configuration pour le port 3000?

0voto

Matthew Ife Points 22370

De man 7 ip

ERREURS
       ...

       EADDRNOTAVAIL
              Une interface inexistante a été demandée ou l'adresse source demandée n'était pas locale.

Vous avez probablement mal tapé l'adresse IP d'écoute à lier dans la configuration.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X