Forum général.général Sortir du réseau local

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
9
oct.
2023

Bonjour à tous,

Je développe une application sous Electron. J'ai besoin de faire des requêtes Ajax.

Lorsque je fais des tests en local, tout fonctionne, mais je suis confronté au problème des CORS. Lorsque je consulte les logs de Nginx, je vois que mes requêtes locales ne sortent pas de mon réseau local (IP du routeur 192.168.0.254).
Comment forcer une application à sortir du réseau local et à venir toquer sur mon routeur comme si elle provenait de l'extérieur?

Merci.

  • # Il faut créer un tunnel

    Posté par  (site web personnel) . Évalué à 2.

    Si j'ai bien compris, tu veux probablement utiliser qq chose comme ngrok.

    Voilà une liste de solutions.

    • [^] # Re: Il faut créer un tunnel

      Posté par  . Évalué à 1.

      Merci amden pour ta réponse. Mais ce n'est apparemment pas ce genre d'outil qu'il me faut.

      Je ne cherche pas à ce que mon appli soit accessible de l'extérieur, puisqu'elle l'est déjà, mais je cherche ceci :
      - Mon appli envoie des requêtes Ajax sur mon serveur
      - L'url des requêtes pointent vers mon routeur (box) côté internet (adresse du genre 111.222.333.444)
      - Lorsque je test en local, les logs de nginx dit que l'adresse IP du client est 192.168.0.254
      - Lorsque je teste chez quelqu'un, j'ai bien l'adresse IP de cette personne.

      Donc, ma question est :
      Comment forcer le routeur/serveur/appli à me faire sortir de mon réseau local et faire croire que je viens de l'extérieur ?

      A moins d'avoir mal compris le rôle de ngrock…

  • # utiliser l'IP externe de ton routeur

    Posté par  . Évalué à 4. Dernière modification le 10 octobre 2023 à 10:16.

    • une premiere solution serait d'utiliser l'IP externe de ton routeur, qui va renvoyer un port vers ton "serveur" interne, sur un autre port
      bon parfois la box ou le routeur ne permet pas cela (çà porte un nom, mais je ne l'ai plus en tete)

    • une seconde serait d'avoir un PC exterieur à ton routeur, qui se comporter comme n'importe quel "client" de ton serveur.
      parfois ton PC de test pourrait faire cela, en se connectant par exemple via ton telephone en 4G sur ton IP publique du routeur, qui renvoie ensuite en interne, etc
      Tu peux alors avoir une patte en wifi sur le telephone pour internet et une patte en RJ45
      en IP fixe, sans passerelle, sur le LAN pour diag ton serveur pendant que le client/wifi se connecte dessus

    • une autre piste serait d'utiliser un proxy, heberger dehors, qui lui aussi viendrait sur l'ip externe de ton routeur pour acceder à la ressource qui se trouve dedans

    • [^] # Re: utiliser l'IP externe de ton routeur

      Posté par  . Évalué à 2.

      Ca doit être du NAT dont tu parles (Network Address Translation).

      Autre solution : rajouter une ligne dans le fichier host avec l'adresse IP local. Les requetes ne proviendront pas réellement de l'extérieur, mais le serveur web les verra comme adressées à un autre site que locahost.

      D'ailleurs, c'est quoi le probleme CORS constaté ?

      • [^] # Re: utiliser l'IP externe de ton routeur

        Posté par  . Évalué à 4. Dernière modification le 10 octobre 2023 à 11:32.

        Non, le NAT c'est quand tu caches ton IP interne à des sites externes, derriere l'IP publique de ton routeur

        Tous les routeurs/parefeux font du NAT pour masquer les IPs privées du reseau interne.

        Le terme que je cherche c'est celui qui autorise un flux interne, à contacter l'IP publique du routeur, pour rerentrer comme s'il venait de l'exterieur

        et ce dernier cas, tous les routeurs ne le font pas

        • [^] # Re: utiliser l'IP externe de ton routeur

          Posté par  . Évalué à 3.

          Salut,

          Du nat loopback.

        • [^] # Re: utiliser l'IP externe de ton routeur

          Posté par  . Évalué à 2.

          port forwarding/port mapping/redirection de port/transfert de port ?

        • [^] # Re: utiliser l'IP externe de ton routeur

          Posté par  (Mastodon) . Évalué à 3. Dernière modification le 11 octobre 2023 à 12:11.

          Le terme que je cherche c'est celui qui autorise un flux interne, à contacter l'IP publique du routeur, pour rerentrer comme s'il venait de l'exterieur

          Ok je crois que je comprends.

          Par exemple chez moi j'ai la box, qui renvoie tout (DMZ) sur mon routeur (pfSense) qui redirige le port 80 sur un serveur local.

          Ce que tu veux c'est par exemple que depuis mon browser dans mon réseau local je tape mon adresse IP publique et je peux voir mon site web (donc rerentrer dans la box, puis dans le routeur, puis sur le serveur interne). C'est bien ça ?

          Bon bin avec pfSense ça marche.

          En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.

      • [^] # Re: utiliser l'IP externe de ton routeur

        Posté par  . Évalué à 2.

        Pour le problème CORS, je ferai un post dédié pour ne pas embrouiller la conversation.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.