Ich kann meinen Server nicht extern anpingen

Ich kann meinen Server nicht extern anpingen

Ich habe einen Ubuntu-Server mit LAMP eingerichtet und versuche, extern darauf zuzugreifen.

Was ich getan habe:

  • Ich habe ein Konto bei no-ip.com eingerichtet,Dieser Artikel

  • Ich habe dem Server die lokale statische IP 192.168.1.127 zugewiesen und die Ports 80 und 22 (sowohl extern als auch lokal) an diese IP-Adresse weitergeleitet. Außerdem habe ich den externen Port 50005 an den internen Port 80 weitergeleitet.

  • Ich habe meine externe IP über Portcheckers gefunden. Meines Wissens ist die externe IP für alle Computer und Router in meinem Netzwerk dieselbe.

    Das Problem

  • Ich überprüfe die Ports 80, 22 und 50005 mitPortcheckerund von allen diesen Häfen (sowie von allen anderen großen Häfen) hieß es, sie seien nicht verfügbar.

  • Ich habe auch versucht, die externe IP meines Servers anzupingen vonPortcheckerund Ping Failed: TimedOut ich habe versucht, die IP-Adresse vom Terminal aus anzupingen, aber es ist eingefroren, PING myhost.no-ip.org (66.XXX.XXX.XX) 56(84) bytes of data.nachdem ich versucht habe, über meinen Browser eine Verbindung zum Server herzustellen, habe ich die Oops! Google Chrome could not connect to...folgende Meldung erhalten.

    Die Info

    Ich kann über SSH, SFTP und HTTP eine lokale Verbindung zu meinem Server (192.168.1.127) herstellen.

    Ich habe einen Linksys E320-Router und habe die Firewall deaktiviert.

    Bitte lassen Sie mich wissen, ob ich meine externe IP angeben muss. Danke für die Hilfe.

    BEARBEITEN

    Ich habe /etc/apache2/ports.conf so geändert, dass Port 50005 statt 80 abgehört wird. Listen 80Dazu habe ichlisten 50005

  • Antwort1

    Warum ich falsch liege

    Ich sage, der Grund, warum Sie keinen Ping ausführen können, ist: Der Router leitet die Echo-Anforderung niemals an Ihren Server weiter, aber das erklärt nicht, warum der Router selbst nicht auf die Echo-Anforderung antwortet. In meinem Heimnetzwerk kann ich meinen Router direkt anpingen (192.168.1.254), warum funktioniert es also nicht, wenn ich versuche, ihn extern anzupingen?

    Meine beste Vermutung

    Ich bin noch dabei, das zu lernen, daher sind diese Informationen möglicherweise nicht korrekt. Meine Antwort stammt größtenteils vonhttps://community.spiceworks.com/topic/85353-forward-pings-from-the-router-to-the-server-behind-it

    Dass Sie nicht pingen können, liegt nicht wirklich an Ihnen, sondern am eingeschränkten Design von IPv4. Ich gehe davon aus, dass Ihr Router eine zugewiesene IP-Adresse hat und dass Sie ihn so eingerichtet haben, dass die Ports 80, 22 und 50005 an einen Computer Ihrer Wahl weitergeleitet werden. Ihr Router verwendet Port Address Translation (PAT), eine bestimmte Art von Network Address Translation (NAT).

    Wenn Sie einen Ping-Befehl an einen Server senden, überträgt Ping eine ICMP-Echoanforderungsnachricht (Internet Control Message Protocol) und wartet auf eine Antwortnachricht.

    Das Problem besteht darin, dass ICMP so niedrig ist, dass es keine Ports hat. Ihr Router leitet die ICMP-Echoanforderungen also nicht an Ihren Server weiter, da Ihr Router nur Ports weiterleitet und daher keinen Ping ausgibt.

    Anstatt mit Ping zu prüfen, ob Ihr Server läuft, können Sie das Problem möglicherweise mit Telnet 25 umgehen. Ich habe das auf meinem Server noch nicht eingerichtet und bin mir daher nicht sicher, wie das geht.

    Habe ich es zum Laufen gebracht? Anstatt eine Portweiterleitung durchzuführen, ging ich zu Firewall > IP-Passthrough und änderte meinen Zuweisungsmodus von „Passthrough“ auf „Standardserver“ und legte den Standardserver auf die interne IP fest, die mein Laptop-Server verwendet (192.168.1.99).

    Jetzt funktioniert der Ping. Ich bin mir ehrlich gesagt nicht sicher, ob meine Situation Ihrer ähnlich ist, daher hoffe ich, bald eine Antwort von Ihnen zu bekommen.

    verwandte Informationen