Je suis sur mac ElCapitan 10.11.6 (15G31) et j'exécute une simple application de rack. rackup -p 5004
. Je peux m'y connecter avec http://localhost:5004/
y http://[::1]:5004/
Mais je ne peux pas me connecter avec http://127.0.0.1:5004/
y http://192.168.0.111:5004/
.
Cela ressemble à une mauvaise configuration sur ma machine. J'obtiens des erreurs différentes lorsque j'essaie de me connecter avec IPv4 et IPv6.
$ nc -v -4 192.168.0.111 5004 # and nc -v -4 127.0.0.1 5004 and nc -v -4 localhost 5004
nc: connectx to 192.168.0.111 port 5004 (tcp) failed: Connection refused
$ nc -v -6 192.168.0.111 5004 # and nc -v -6 127.0.0.1 5004
nc: getaddrinfo: nodename nor servname provided, or not known
Mais je peux me connecter avec nc -v -6 localhost 5004
Mon fichier hosts est assez simple :
$ cat /etc/hosts
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
Je dois le faire fonctionner avec l'adresse IP de ma machine hôte. 192.168.0.111
pour que je puisse me connecter dans le conteneur Docker. Comment résoudre ce problème ?
Informations supplémentaires que j'ai trouvées sur différents sujets
-
scutil
$ scutil -r 192.168.0.111 Reachable, Local Address, Directly Reachable Address $ scutil -r 127.0.0.1 Reachable, Local Address, Directly Reachable Address $ scutil -r localhost Reachable $ scutil -r ::1 Reachable, Local Address, Directly Reachable Address # but note, ??? $ scutil -r qwerty Reachable
-
utilisation du port lsof
lsof
montre le portage par l'exécutable ruby et la partie intéressante est localhost:avt-profile-1
. Vérifier ce que avt-profile-1
is donne des résultats pour "Real-time Transport Protocol media data". Plus d'informations ici . Ce qui est également intéressant, c'est que lorsque j'arrête le rackup
il n'y a pas d'utilisation de port, donc ce n'est pas un service/daemon qui tourne sur ma machine.
lsof -i :5004
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ruby 12167 kode 16u IPv6 0xf3c39e30b59c5321 0t0 TCP localhost:avt-profile-1 (LISTEN)
Ici, j'ai une application différente qui fonctionne sur le port 5000. Elle est joignable via l'IP de l'hôte à 192.168.0.111:5000
. Notez le NOM *:commplex-main
. En outre, j'aimerais savoir à quoi cela sert.
lsof -i :5000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ruby 12889 kode 14u IPv4 0xf3c39e30b22fcbe9 0t0 TCP *:commplex-main (LISTEN)
-
nom de l'adresse de l'hôte
host 192.168.0.111 111.0.168.192.in-addr.arpa has no PTR record
-
arp
$ arp 192.168.0.111 ? (192.168.0.111) at a0:99:9b:17:16:1d on en0 ifscope permanent [ethernet]
-
nslookup
$ nslookup localhost Server: 192.168.0.1 Address: 192.168.0.1#53 Name: localhost Address: 127.0.0.1 $ nslookup 127.0.0.1 Server: 192.168.0.1 Address: 192.168.0.1#53 1.0.0.127.in-addr.arpa name = localhost. $ nslookup 192.168.0.111 Server: 192.168.0.1 Address: 192.168.0.1#53 ** server can't find 111.0.168.192.in-addr.arpa.: NXDOMAIN