18 votes

Comment accéder à MacOS localhost (port 3000) à partir de Parallels IE ?

Sur mon Mac de travail (Sierra), je fais tourner un serveur web NodeJS sur localhost, port 3000. J'ai besoin d'y accéder à partir d'Internet Explorer fonctionnant dans Parallels à des fins de test.

J'ai beaucoup cherché, lu et expérimenté, mais je suis resté bloqué jusqu'à présent. Ma situation actuelle est la suivante :

J'ai un réseau Parallels "Host-Only" avec mon Mac à 10.37.129.2 et ma boîte virtuelle Windows à 10.37.129.3.

En pointant mon IE vers 10.37.129.2:3000 échoue.

J'ai fait tout ce que j'ai pu pour m'assurer que le port 3000 est ouvert entre les deux, mais nmap -p 3000 10.37.129.2 du côté Windows m'indique que le port 3000 reste fermé, tout comme le logiciel Network Utility Port Scan du Mac.

Malheureusement, tous les guides et conseils sur le sujet sont soit insuffisamment similaires, soit largement dépassés, soit tout simplement infructueux lorsqu'ils sont tentés.

Tout progrès que vous m'aiderez à réaliser sera grandement apprécié.


Les parties pertinentes de mon server.js sont :

const port = process.env.PORT || 3000;
const host = process.env.HOST || 'localhost';
const proxyTarget = process.env.PROXY || 'none';

20voto

sambua Points 251

Une des façons de l'utiliser est de trouver l'adresse IP4 locale fournie par le routeur.

De Mac system preferences > Network > IP Address: 192.168.x.xx

Et disons que si vous y accédez sous Mac avec http://localhost:3000 vous pouvez également le faire avec http://192.168.x.xx:3000 depuis le Mac lui-même et depuis un système d'exploitation Windows parallèle avec une configuration réseau partagée.

Cette adresse IP peut être modifiée chaque fois que vous redémarrez le routeur ou que vous choisissez un autre routeur, etc.

Actuellement, j'utilise Parallels Desktop 12

4voto

klanomath Points 63400

Le "contexte technique" du comportement particulier (au moins sur les Macs) de l'utilisation de localhost comme "constante d'hôte" est la nature spécifique de dns.js, qui lie évidemment le serveur http/https de node à l'interface qu'il résout en sens inverse à l'adresse const. hôte (= localhost) avec l'aide de mDNSResponder.

Il s'agit de localhost > 127.0.0.1 > lo0.

Toute autre interface comme en0/en1 comme interfaces physiques ou vnic0/vnic1 comme interfaces virtuelles de Parallels ne sera pas adressée/attachée.

Pour résoudre ce problème, vous pouvez soit

  • configurer un serveur DNS comme dnsmasq dans le réseau d'hôtes seulement de Parallels et utiliser le fqdn de l'hôte du serveur http du nœud en tant que host const
  • utiliser l'adresse IP du serveur http du nœud dans le réseau d'hôtes de Parallels en tant qu'adresse IP de l'hôte. host const
  • modifier les fichiers hosts de chaque hôte dans le réseau Host-only de Parallels et ajouter une ligne telle que 10.37.129.2 testserver.example.com et utiliser testserver.example.com comme host const

3voto

Donskikh Andrei Points 111

Il suffit de l'exécuter dans le terminal :

ifconfig

Et allez à vnic0 : inet address à partir du Parallels (comme http://1x.2xx.5x.2:3000/ par exemple)

2voto

Michael Plotke Points 223

La solution temporaire consiste à modifier le fichier server.js et à définir l'option host = '10.37.129.2' ou régler le HOST à la variable système 10.37.129.2 et le lire avec host = process.env.HOST || 'localhost' . Il peut également être possible de modifier /private/etc/hosts à la carte 10.37.129.2 à localhost mais mon test rapide a échoué.

Tout se passait exactement comme prévu. Le site localhost est mis en correspondance avec 127.0.0.1 et non à une adresse IP orientée vers le réseau. Ainsi, 10.37.129.2 qui était l'adresse IP de mon Mac sur le réseau virtuel partagé avec Windows fonctionnant dans Parallels, n'a jamais pu atteindre localhost . C'est correct et raisonnable.

Tout le mérite revient à klanomath . Merci !

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X