0 votes

Problèmes de traduction IP directe et de DNS sous OS X 10.6.8

Voici la situation :

J'ai un serveur web sur mon réseau local qui sert des versions bêta de ma documentation pour mon logiciel gratuit.

Ce serveur web, via mon routeur, répond à une adresse IP externe. IPs imaginaires pour les besoins de l'explication :

  • Mon serveur web se trouve sur mon réseau local à 192.168.10.100
  • Mon IP statique WAN est 200.100.50.25

En externe, le DNS est pas configuré de telle sorte qu'un certain nom se résout en 200.100.50.25 . Il ne le sera pas non plus. Donc vous ne pouvez pas y aller par le chemin habituel.

Je fournis donc les URL à mes bêta-testeurs sous cette forme :

http://200.100.50.25/mybetadocs/webpage.html

Cela fonctionne bien. Mes testeurs dans le monde entier peuvent accéder à mon serveur et tout va bien. Pour eux.

Voici le problème : sur mon si j'essaie d'accéder à cette URL, par exemple en cliquant sur un lien sur une page Web qui la contient, mon ordinateur dit au routeur d'effectuer la NAT vers 200.100.50.25 et c'est la fin de tout ça - ça ne mène nulle part.

Le routeur ne semble pas avoir de capacité de bouclage pour lui faire savoir qu'effectivement, 200.100.50.25 se trouve en fait sur mon réseau local (bien que, franchement, je pense qu'il devrait déjà le savoir, puisque c'est son IP externe et que c'est là que j'essaie de me rendre). Cela fonctionnait bien sur mon ancien routeur. Mais bon).

Donc, ce que je cherche, c'est un moyen de dire à OS X, ici sur ma machine locale, que lorsque je me connecte à 200.100.50.25 J'essaie en fait d'atteindre 192.168.10.100 pour que mon serveur web me réponde ici, sur ma machine, directement via le réseau local.


Pour faire simple, sur ma seule machine, j'ai besoin de ce qui suit,...

http://200.100.50.25/mybetadocs/webpage.html

...pour arriver ici :

http://192.168.10.100/mybetadocs/webpage.html

Auparavant, j'avais fait en sorte que mes utilisateurs créent une hosts entrée de fichier pour un nom de serveur imaginaire de la forme someweirdname.com, comme ceci...

200.100.50.25 someweirdname.com

...et ensuite mettre tous mes liens dans le formulaire...

http://someweirdname.com/mybetadocs/webpage.html

...ce qui fonctionne bien, mais j'ai rencontré un problème d'utilisateur assez grave où la mise en place d'une hosts était complètement hors de leur portée, d'où l'impossibilité d'accéder aux documents.

L'utilisation de l'IP ne nécessite rien d'autre de la part de l'utilisateur que de cliquer sur le lien, et comme je l'ai dit, cela fonctionne bien pour eux. Mais cela bloque moi Je ne peux pas suivre les URL d'autres serveurs web jusqu'à divers endroits de mes documents bêta sans sortir mon téléphone portable, désactiver son accès au wifi et aller chercher ces liens via la 4G pour que mon routeur voie la demande provenant de l'extérieur du réseau local.

Lorsque je ne fais que lire mes documents ici, j'utilise simplement someweirdname.com pour y accéder, et tout est relatif à partir de là, et cela fonctionne bien aussi.

Je n'arrive pas à les trouver sur les pages web d'autres serveurs sur le net. Et pour... des raisons... J'ai besoin de tester ces URL pour m'assurer qu'elles vont là où elles sont censées aller.

Existe-t-il une solution à cette énigme qui n'implique pas l'achat d'un autre nom de serveur, ce qui me coûterait encore plus cher pour exposer mes documents bêta locaux, et la gestion de la maintenance DNS qui en résulte ?

Je peux vivre avec tel qu'il est, et l'ai été, mais je le déteste.

2voto

klanomath Points 63400

Arpanet : Au travail depuis 1969 - modifier votre propre fichier hosts est la méthode de choix.

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1   localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost

->

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1       localhost
192.168.10.100  someweirdname.com www.someweirdname.com
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0     localhost

Il se peut que vous deviez vider le cache DNS en utilisant sudo killall -HUP mDNSResponder y sudo dscacheutil -flushcache .

0voto

Oskar Points 1242

Votre seul espoir me semble être de créer une route statique sur votre machine pour que 200.100.50.25 soit routé vers 192.168.10.100, mais je suppose que cela ne fonctionnera pas sans une certaine astuce réseau du côté du serveur web pour écouter les paquets au lieu de les router vers le routeur qui a des problèmes sur votre client.

En attendant, vous pouvez essayer de mettre en place un service DNS dynamique gratuit pour associer 200.100.50.25 à un nom d'hôte qui se résoudra pour tous vos testeurs externes à l'IP que vous aurez choisie pour le serveur.

Ensuite, vous pouvez vous prévaloir de l'édition normale de /etc/hosts une astuce pour que ce nom soit résolu vers l'IP interne de votre choix plutôt que vers les serveurs DNS en général.

En gros, s'éloigner du codage dur de l'adresse IP dans l'URL et utiliser un nom que vous pouvez remplacer plus facilement.

0voto

samh Points 3830

Ce n'est pas le idéal solution et ne résout aucun des problèmes actuels en soi, mais si tout ce que vous voulez est de laisser tout en l'état et d'avoir un moyen d'accéder à l'information tester les liens vous pouvez établir une connexion VPN. À ce stade, vous devriez pouvoir accéder à votre IP publique depuis l'extérieur et la redirection de port fonctionnera comme vous le souhaitez.

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