2016-09-02 6 views
1

Ich habe einen einfachen Webserver auf 0.0.0.0:3000 auf meiner Maschine gebunden, die wie vorgesehen in lokalen Netzwerken funktioniert. Mit lokalem Netzwerk möchte ich sagen, wenn mein Handy oder ein anderes Gerät im selben Netzwerk ist, kann es auf den lokalen Webserver zugreifen, indem es zu der IP zugreift, die meinem Computer zugewiesen ist, und Port 3000 hinzufügen. ZB 192.168.1.4:3000.lokalen Webserver hinter dynamischer IP freilegen

Jetzt muss ich es im Internet verfügbar machen, aber nicht durch irgendeine Art von Drittanbieter-Anwendung wie ngrok, localtunnel oder browserSync. Ich weiß, dass diese Anwendungen perfekt funktionieren, aber da ich mein eigenes Lieblingsprojekt zur Steuerung von Haushaltsgeräten habe, möchte ich mich nicht auf die Verfügbarkeit von Drittanbieterdiensten verlassen. Der aktuelle Zustand ist also, ich kann es nicht über das Internet kontrollieren. Wenn ich daran denke, dass ich keine statische IP habe, wäre das einfacher gewesen.

Ich habe bereits einen vps und einen Domain-Namen zugewiesen. Ich kann meine momentan zugewiesene IP-Adresse (da es dynamisch ist) an meinen Server senden, indem ich getifaddrs benutze, und den Überblick behalten. Aber wie stelle ich meinen lokalen Server damit dem Internet aus? Diese Anwendungen von Drittanbietern weisen jedem freigelegten Server irgendeine Art von Subdomains zu, und ich kann auch Subdomains zuweisen, aber ich bekomme immer noch keine Möglichkeit, den lokalen Webserver verfügbar zu machen. Jede Hilfe wäre willkommen, danke :)

Antwort

2

Schritt eins, müssen Sie Ihren Webserver an Ihrem Internet-Zugangs-Router freilegen. dies erfordert, dass Sie Typischerweise Port-Forwarding für (in Ihrem Fall) Port 3000. damit fertig zu konfigurieren, jeder Client Ihren Dienst über (aktuelle externe dynamische ip) zugreifen kann: 3000

Schritt zwei, müssen Sie Ordnen Sie Ihrer aktuellen dynamischen IP dynamisch einen festen DNS-Namen zu. Es gibt natürlich Dienste von Drittanbietern (z. B. DynDNS), die Ihnen helfen würden, Ihre favoritenamen.dyndns.org der sich ständig ändernden IP-Adresse zuzuordnen.

Wenn Sie letztere ohne 3rd-Party machen wollen, müssen Sie einige statische (Web) Server irgendwo haben und gehen könnte wie folgt aussehen:

Kunden besuchen http://www.yourstaticserver.example/ und dieser Server leitet sie an (aktuelle dynamische ip): 3000. Damit dies geschieht, muss Ihr statischer Server natürlich die dynamische IP kennen und muss keine Änderungen erfahren. Zu diesem Zweck könnte Ihr interner Server in regelmäßigen Abständen (z. B. einmal pro Minute) den statischen Server kontaktieren, z. B. auf http://www.yourstaticserver.example/some-secret-special-page zugreifen und der statische Server speichert REMOTE_ADDR einer solchen Anfrage (vorzugsweise mit einer gewissen Berechtigung) !) für seine zukünftigen Weiterleitungen.


Eigentlich gibt es einen Schritt Null vor dem Schritt eins: Seien Sie sich bewusst, dass der Server mit dem Internet ausgesetzt wird, bedeutet, dass Sie Ihren Server mit dem Internet aussetzen . Ich hoffe, Sie haben genug Gedanken in die Sicherheit investiert.

+0

Ich mache den Schritt 2 selbst, indem ich dynamische IP-Adressen im Auge behalte und mich auf die aktuell zugewiesene umadressiere. Das Problem, mit dem ich konfrontiert bin, ist mit Schritt 1, diese Anwendungen fordern mich nicht auf, einige manuelle Einstellungen mit meinem Internet-Router vorzunehmen. Sie arbeiten einfach. Das versuche ich zu erreichen. –

Verwandte Themen