Es gibt viele Fragen zur 'Portweiterleitung' , aber es scheint keine zu geben, die eindeutig angibt, was es ist und wofür es verwendet wird. Damit:
Was ist Portweiterleitung?
Wofür wird es verwendet und warum sollte ich es brauchen?
Es gibt viele Fragen zur 'Portweiterleitung' , aber es scheint keine zu geben, die eindeutig angibt, was es ist und wofür es verwendet wird. Damit:
Was ist Portweiterleitung?
Wofür wird es verwendet und warum sollte ich es brauchen?
Antworten:
Um die Portweiterleitung wirklich zu erläutern, müssen Sie zunächst etwas mehr über die Funktionsweise Ihres Routers erfahren. Ihr Internetdienstanbieter weist Ihrer Internetverbindung eine IP-Adresse zu. Alle Computer im Internet benötigen eine eindeutige IP-Adresse, Sie haben jedoch mehrere Computer in Ihrem Haus und nur eine Adresse. Wie funktioniert das?
Wenn Sie wissen, was es ist, und einfach wissen möchten, wie es geht : http://portforward.com/ enthält eine Anleitung mit Screenshots für buchstäblich Hunderte verschiedener Router. Die Dokumentation ist dort hinter einer Werbeseite für ihr automatisches Portconfig-Tool versteckt. (Klicken Sie einfach ein wenig herum und Sie werden es finden.)
In Ihrem Heimrouter ist eine Funktion namens Network Address Translation (NAT) integriert. In Ihrem Netzwerk haben Computer Adressen wie 192.168.1.100. Alle Adressen im Bereich 192.168. * (Oder im Bereich 10. *) sind " private " oder " reservierte " Adressen. Diese Adressen werden von IANA offiziell für die Verwendung in privaten Netzwerken vergeben. Ihr Router weist jedem über DHCP verbundenen Computer automatisch eine solche Adresse zu . Über diese Adressen kommunizieren die Computer in Ihrem Netzwerk mit dem Router und untereinander.
Ihr Router verfügt über eine separate Netzwerkschnittstelle, die ihn mit dem Internet verbindet. Diese Schnittstelle hat eine ganz andere Adresse, die von Ihrem Internetdienstanbieter zugewiesen wird. Dies ist die eine Adresse, die ich bereits erwähnt habe, und Ihr Router verwendet sie, um mit anderen Computern im Internet zu kommunizieren. Computer in Ihrem Netzwerk haben nicht routbare private IP-Adressen, dh, wenn sie Pakete direkt an das Internet senden, werden die Pakete automatisch verworfen (Pakete mit privaten Adressen dürfen aus Stabilitätsgründen nicht das Internet durchlaufen). Ihr Router hat jedoch eine routingfähige Adresse. Wie der Name schon sagt, übersetzt die Netzwerkadressübersetzung zwischen diesen beiden Arten von Adressen, sodass die mehreren Computer in Ihrem Netzwerk im Internet als ein Computer mit einer Adresse angezeigt werden.
Obwohl dies kompliziert klingen mag, ist es eigentlich ziemlich einfach, wie Ihr Router das macht. Jedes Mal, wenn ein Computer in Ihrem Netzwerk eine Verbindung zu einem Computer im Internet herstellen möchte, sendet er die Verbindungsanforderung an den Router (er weiß, dass er sie an den Router sendet, da sein Standard-Gateway- Parameter auf die Adresse des Routers festgelegt ist). Der Router nimmt dann diese Verbindungsanforderung (eine "SYN-Anforderung" in TCP / IP) entgegen und ändert die Quelladresse (die "Antwortadresse" oder die Rücksprungadresse) und ändert sie von der privaten IP des Computers in die öffentliche IP der Router, damit die Antwort an den Router gesendet wird. Anschließend wird in einer Datenbank (als NAT-Tabelle bezeichnet ) vermerkt, dass die Verbindung initiiert wurde, damit sie sich später daran erinnert.
Wenn die Antwort vom Remotecomputer zurückkommt (ein "SYN-ACK"), sieht der Router in seiner NAT-Tabelle nach, dass eine Verbindung zu diesem Host an diesem Port zuvor von einem privaten Computer in Ihrem Netzwerk initiiert wurde, und ändert das Ziel Adresse an die private Adresse des Computers und leitet sie innerhalb Ihres Netzwerks weiter. Auf diese Weise können Pakete weiterhin zwischen Netzwerken hin und her übertragen werden, wobei der Router die Adressen transparent ändert, damit dies funktioniert. Wenn die Verbindung beendet ist, entfernt der Router sie einfach aus der NAT-Tabelle.
Dies lässt sich möglicherweise mit einer Metapher leichter veranschaulichen. Nehmen wir an, Sie sind ein Spediteur in den USA, der mit chinesischen Kunden zusammenarbeitet. Sie müssen Pakete an viele Kunden in den USA senden, aber es ist aus Zoll- / Papiergründen einfacher, Pakete nur an einen Ort zu senden. Sie erhalten also ein Paket von einem Ihrer Kunden in China (in diesem Beispiel das private Netzwerk) mit einem tatsächlichen Ziel irgendwo in den USA (im Internet). Sie ändern das Adressetikett auf der Schachtel in die US-amerikanische (öffentliche) Adresse und die Rücksendeadresse in Ihre eigene öffentliche Adresse (da diese nicht direkt nach China zurückgesandt werden kann, ohne den Kunden zu belasten) und übergeben sie dem Postdienst . Wenn der Kunde das Produkt zurücksendet, kommt es zu Ihnen. Sie sehen in Ihren Unterlagen nach, von welcher Firma in China es stammt,
Das funktioniert gut, aber es gibt ein kleines Problem. Was ist, wenn ein Kunde etwas an das Unternehmen senden muss, lassen Sie uns eine Zahlungsanweisung für etwas sagen? Angenommen, ein Computer im Internet initiiert eine Verbindung mit dem Router (eine SYN-Anfrage), beispielsweise zu einem Webserver im Netzwerk. Der Brief / das Paket enthält nur die öffentliche Adresse des Routers, sodass der Router nicht weiß, wohin er es senden soll! Es kann für jeden Computer im privaten Netzwerk oder für keinen von ihnen bestimmt sein. Möglicherweise ist dieses Problem aufgetreten, wenn Sie bei jemandem zu Hause anrufen - wenn er Sie anruft, ist es kein Problem, aber wenn Sie ihn anrufen, kann er nicht wissen, für wen er angerufen wird, sodass möglicherweise die falsche Person antwortet.
Während es für Menschen einfach genug ist, dies zu klären, ist es für Computer viel schwieriger, da nicht jeder Computer in Ihrem Netzwerk alle anderen Computer kennt.
Mit der Portweiterleitung können wir dieses Problem beheben: Auf diese Weise können Sie Ihrem Router mitteilen, an welchen Computer im Netzwerk eingehende Verbindungen weitergeleitet werden sollen. Wir haben drei verschiedene Möglichkeiten, dies zu tun:
Schauen wir uns ein Anwendungsbeispiel an. Bei vielen Mehrspieler-Videospielen (z. B. Counter Strike) können Sie einen Spieleserver auf Ihrem Computer ausführen, mit dem andere Personen eine Verbindung herstellen können, um mit Ihnen zu spielen. Ihr Computer kennt nicht alle Personen, die spielen möchten, und kann daher keine Verbindung zu ihnen herstellen. Stattdessen müssen sie neue Verbindungsanfragen aus dem Internet an Ihren Computer senden.
Wenn Sie auf dem Router nichts eingerichtet hätten, würde er diese Verbindungsanfragen empfangen, aber nicht wissen, auf welchem Computer im Netzwerk der Spieleserver installiert ist, sodass er sie einfach ignoriert (oder genauer gesagt, sendet) ein Paket zurücksenden, das anzeigt, dass keine Verbindung hergestellt werden kann). Zum Glück kennen Sie die Portnummer, die bei Verbindungsanfragen für den Spieleserver angezeigt wird. Auf dem Router stellen Sie also einen Port für die Weiterleitung mit der vom Spieleserver erwarteten Portnummer (z. B. 27015) und der IP-Adresse des Computers mit dem Spieleserver (z. B. 192.168.1.105) ein.
Der Router kann die eingehenden Verbindungsanforderungen an 192.168.1.105 im Netzwerk weiterleiten, und Computer außerhalb können eine Verbindung herstellen.
Ein weiteres Beispiel wäre ein lokales Netzwerk mit zwei Computern, wobei der zweite mit der IP 192.168.1.10 eine Website mit Apache hostet. Daher sollte der Router eingehende Anforderungen von Port 80 an diesen Computer weiterleiten. Bei Verwendung der Portweiterleitung können beide Computer gleichzeitig im selben Netzwerk ausgeführt werden.
Videospiele sind vielleicht der häufigste Ort, an dem Benutzer im Alltag auf Portweiterleitung stoßen, obwohl die meisten modernen Spiele UPnP verwenden, sodass Sie dies nicht manuell tun müssen (stattdessen ist es vollautomatisch). Sie müssen dies immer dann tun, wenn Sie in der Lage sein möchten, eine direkte Verbindung zu etwas in Ihrem Netzwerk herzustellen (anstatt über einen Vermittler im Internet). Dies kann das Ausführen eines eigenen Webservers oder das Herstellen einer Verbindung über das Remotedesktopprotokoll mit einem Ihrer Computer umfassen.
Das Schöne an NAT ist, dass es eine mühelose, integrierte Sicherheit bietet. Viele Menschen suchen im Internet nach anfälligen Computern und versuchen dazu, Verbindungen mit verschiedenen Ports herzustellen. Da es sich um eingehende Verbindungen handelt, werden diese, wie oben erläutert, vom Router getrennt. Dies bedeutet, dass in einer NAT-Konfiguration nur der Router selbst für Angriffe mit eingehenden Verbindungen anfällig ist. Dies ist eine gute Sache, da der Router viel einfacher (und daher weniger anfällig) ist als ein Computer, auf dem ein vollständiges Betriebssystem mit viel Software ausgeführt wird. Beachten Sie also, dass Sie durch das DMZ-Speichern eines Computers in Ihrem Netzwerk (Festlegen eines DMZ-Ziels) diese Sicherheitsebene für diesen Computer verlieren: Sie ist jetzt für eingehende Verbindungen aus dem Internet vollständig offen. Sie müssen es also so sichern, als ob es direkt verbunden wäre. Wenn Sie einen Port weiterleiten, wird der Computer am empfangenden Ende natürlich an diesem bestimmten Port angreifbar. Stellen Sie also sicher, dass Sie eine aktuelle Software ausführen, die gut konfiguriert ist.