Sie müssen Port 5000 auf einem Linksys-Router öffnen, um auf Heroku zuzugreifen


1

Ich versuche, diesen Befehl zum Laufen zu bringen:

telnet s1.runtime.heroku.com 5000

Wenn ich es ausführe, erhalte ich die folgende Fehlermeldung:

Trying 107.20.246.116... telnet: Unable to connect to remote host: No route to host

Ich weiß, dass ich die Portweiterleitung für Port 5000 einrichten muss, aber ich kann nicht herausfinden, welche Einstellungen verwendet werden sollen. Ich verwende Ubuntu 11.04 in einem drahtlosen Heimnetzwerk. Ich habe einen linksys wrt160nv2-Router und ich habe die Anwendungen & amp; Gaming-Tab öffnen. Was verwende ich als Anwendungsname? Ich habe "Heroku" ausprobiert, aber das schien nicht zu funktionieren. Ich habe die externen und internen Ports auf 5000, Protokoll "beide" und "IP-Adresse" 192.168.1.102 eingestellt. Gibt es eine einfache Lösung dafür?

Antworten:


1

heroku.com ist ein externer Dienst im Internet. Sie müssen Ihren Heimrouter nicht konfigurieren, um darauf zugreifen zu können.

Die Portweiterleitung wird verwendet, wenn Sie möchten, dass andere Standorte eine Verbindung zu Servern in Ihrem Heimnetzwerk herstellen können. Sie müssen keine Portweiterleitung verwenden, um eine Verbindung zu einem beliebigen Internet-Server herzustellen, unabhängig von der Portnummer.

Zur Diagnose versuchen

  ping s1.runtime.heroku.com

Das solltest du sehen

C:\>ping s1.runtime.heroku.com

Pinging ec2-107-20-246-116.compute-1.amazonaws.com [107.20.246.116] with 32 bytes of data:

Reply from 107.20.246.116: bytes=32 time=116ms TTL=52
Reply from 107.20.246.116: bytes=32 time=116ms TTL=52
Reply from 107.20.246.116: bytes=32 time=116ms TTL=52
Reply from 107.20.246.116: bytes=32 time=116ms TTL=52

Ping statistics for 107.20.246.116:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 116ms, Maximum = 116ms, Average = 116ms

Wenn Ping nicht erfolgreich ist, können Sie anhand von überprüfen, wo das Problem liegt tracert

C:\>tracert s1.runtime.heroku.com

Tracing route to ec2-107-20-246-116.compute-1.amazonaws.com [107.20.246.116]
over a maximum of 30 hops:

  1    <1 ms    <1 ms    <1 ms  your_local_home_router_name
  2    37 ms    35 ms    36 ms  your_isp_router_name
  3    36 ms    35 ms    35 ms  a_router_in_your_isp_network
  4    36 ms    37 ms    37 ms  a_different_router_in_your_isp_network
  5   120 ms   118 ms   117 ms  some_other_network_company_router
  6   116 ms   115 ms   115 ms  foo
  7   115 ms   115 ms   116 ms  bar
  8   121 ms   118 ms   119 ms  elsewhere
  9   116 ms   117 ms   117 ms  someplace
 10     *        *        *     Request timed out.
 11     *        *        *     Request timed out.
 12     *        *        *     Request timed out.
 13     *        *        *     Request timed out.
 14     *        *        *     Request timed out.
 15   118 ms   115 ms   116 ms  ec2-107-20-246-116.compute-1.amazonaws.com [107.20.246.116]

Trace complete.

Die Zeilen "Zeitüberschreitung bei Anfragen" geben lediglich einen Router an, der aus Sicherheitsgründen nicht auf Routenverfolgungsanfragen reagiert. Die letzte Zeile zeigt an, dass wir den Heroku-Dienst erreicht haben (der die Amazon-Infrastruktur nutzt).


Ich versuche, Befehle über die Befehlszeilenschnittstelle von Heroku auszuführen. Der Befehl telnet ist nur ein einfacher Befehl, um zu testen, ob der richtige Kommunikationskanal richtig eingerichtet ist. Dies ist die Nachverfolgung der Kommunikation mit dem Heroku-Support-Team, dass die erforderlichen Befehle nicht ausgeführt werden können.
japhyr

Ich kann erfolgreich pingen. Aber ich glaube, Heroku braucht Zugang zu meiner Maschine. Vorschläge, wie der eigentliche Telnet-Befehl funktioniert: telnet s1.runtime.heroku.com 5000?
japhyr

@japhyr: Ich kann eine Verbindung zu Herokus "Befehlszeilenschnittstelle" herstellen, indem ich diesen Telnet-Befehl eingebe. Ich musste keine Portweiterleitung einrichten oder meinen Router neu konfigurieren.
RedGrittyBrick

0

BEARBEITEN: Ich nahm an, Heroku ("Held" und ein japanisches Ende, komm schon :-)) war ein Spiel, für das du einen Server betreiben wolltest, aber die andere Antwort sagt, dass dies nicht der Fall ist.

Ignoriere alles unterhalb dieser Zeile (werde den Beitrag später entfernen, wollte nur klarstellen, dass ich den anderen Beitrag gesehen habe).


Klicken Sie auf "Single Port Forwarding". Eingeben

  • Anwendungsname: Heroku
  • Externer Port: 5000
  • Interner Port: 5000
  • Protokoll: Beide
  • Zur IP-Adresse: [Ihre interne IP-Adresse] (Stellen Sie sicher, dass Sie den Router so eingerichtet haben, dass Ihr lokaler Computer immer die gleiche interne IP-Adresse erhält.)
  • Aktiviert: Prüfen

Klicken Sie auf "Einstellungen speichern", und es sollte getan werden.

Wenn nicht: dann steht Ihrer Bewerbung noch etwas im Wege:

  • Eine lokale Software-Firewall (Sygate, Kerio, ZoneAlarm usw.)
  • Windows-interne Firewall (wird separat erwähnt, da dies so oft ein Problem darstellt. Stellen Sie dreimal sicher, dass dies nicht im Wege steht. Deaktivieren Sie sie für einen kurzen Testzeitraum, falls sie aktiv ist.)
  • einige übermäßig eifrige Antivirensoftware.

Es ist nicht nur der Router, der die Verbindung blockieren kann.


Ich denke, das Problem könnte die "zu IP-Adresse" sein. Wie finde ich die interne IP-Adresse meines Geräts?
japhyr

Inwiefern ist dies anders als die Kommunikation, die erforderlich ist, damit ein Spieleserver ordnungsgemäß funktioniert? Ist es nicht ein ähnliches Setup, was die Portkonfiguration betrifft?
japhyr

@japhyr: Starten, Ausführen, cmd, ipconfig.
RedGrittyBrick

Ich glaube, ich habe die Dinge richtig eingestellt. Unter Ubuntu lautet der Befehl ifconfig und ich habe die IP-Adresse meines Computers als 192.168.1.100 bestätigt. Also meine einstellungen sind anwendung 'heroku', externer und interner port 5000, protokoll beide, an ip adresse 192.168.1.100, aktiviert, gespeichert. Ich erhalte immer noch den gleichen Fehler "Keine Route zum Host". Ruft mein nächster Schritt meinen ISP an und fragt ihn, ob er etwas unternimmt, um diesen Port zu blockieren?
japhyr
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.