Question Quelle adresse IP écouter sur le serveur Web depuis un réseau local?


Bon, je suis à moitié nouveau en matière de réseautage et de développement Web back-end, et j'apprends actuellement Flask.

J'ai juste allumé un petit serveur HTTP de base sur mon ordinateur portable ("Hello World!") Et je l'exécute sur le port 5000. Si je passe à 127.0.0.1:5000 dans mon navigateur, je vois le message correctement.

Et si (sur un autre ordinateur de la maison) je passe à 192.168.1.40:5000, l'adresse IP privée de l'ordinateur utilisé pour le serveur, alors je peux le voir à partir de là aussi.

Mais que faire si je veux qu'un ami puisse y accéder depuis l'extérieur du réseau local, de loin? Comment le trouvent-ils?

J'ai demandé à Google ce qu'était mon IP (IPv4) et j'ai essayé de l'utiliser, mais comme je m'y attendais, cela ne fonctionnait pas, car (si j'ai bien compris) résout le routeur lui-même. Que fais-je mal ici?


2
2018-01-09 04:22


origine




Réponses:


Si vous utilisez votre Internet domestique et derrière votre routeur, vous devez configurer un transfert de port simple vers votre PC local. Ouvrez la configuration de votre routeur et spécifiez que le port 5000 doit vous conduire à votre adresse privée (192.168.1.40).

Il est également conseillé de basculer toute adresse privée de dynamique en statique pour les machines qui hébergent des services afin que leur adresse ne change pas et donc de casser le port. Cela peut se faire simplement en spécifiant une adresse pour la machine dans sa configuration réseau située en dehors du pool d'adresses dynamiques du routeur (peut être modifiée), puis en spécifiant l'adresse du routeur comme passerelle et serveur DNS.

Exemple d'espace de pool: 192.168.1.100 - 192.168.1.200
Exemple d'IP de routeur: 192.168.1.1
Exemple d'IP statique privé du serveur web: 192.168.1.2

Ensuite, quelqu'un d'autre doit se rendre à votre adresse IP publique (vous pouvez le vérifier par un service comme http://www.whatismyip.com/ ou similaire).

Votre adresse IP publique est généralement dynamique. Cela signifie que cela peut changer de temps en temps. Vous pouvez soit acheter une adresse IP statique (tous les FAI ne peuvent pas l’offrir) ou utiliser des services DNS spéciaux à ces fins (par exemple, http://www.no-ip.org/ , http://dyn.com et similaire).


5
2018-01-09 04:27



OH C'EST CE QUE LE PORT EN AVANT EST? Je me suis demandé ça pour toujours. - Aerovistae
Oui, c'est pour cela spécifiquement. Veuillez également noter que certains FAI bloquent certains ports (à savoir, 25, 80), mais si vous utilisez quelque chose comme 5000, cela devrait aller. - nochkin
Faire réal Les serveurs Web utilisent-ils le transfert de port ou ont-ils une configuration matérielle beaucoup plus complexe personnalisée configurée pour recevoir le trafic entrant? - Aerovistae
Ils ont généralement IP publique directement assignée afin qu'ils n'aient pas besoin de transmettre quoi que ce soit. Il existe également des équilibreurs de charge où ils utilisent quelque chose de similaire à la redirection de port mais plus complexe. - nochkin
Enfin, je n'ai pas besoin d'une adresse IP statique, non? Seulement si j'ai vraiment l'intention que cela se lève et soit utilisable à long terme. Si je ne fais que jouer ce soir, ce n'est pas grave, correct? Et qu'en est-il de cet autre gars à propos d'une règle de pare-feu? Désolé d'avoir autant de questions. - Aerovistae


Voir http://www.howtogeek.com/117371/how-to-find-your-computers-private-public-ip-addresses/ pour une bonne explication de vos adresses IP publiques et privées. De plus, vous aurez besoin d’une règle de pare-feu pour activer liste des adresses IP ou pour permettre tout Les adresses IP pour envoyer des messages entrants sur votre PC; vous pouvez restreindre le trafic à un port [par ex. 80 pour HTTP] ou un tableau de ports. Vous pouvez souhaiter supprimer cette règle de pare-feu lorsque vous avez terminé.

De plus, votre routeur peut également devoir être configuré pour activer le trafic entrant.


0
2018-01-09 04:36