FTP-Aktivmodus und Passivmodus – Warum kann ich keine Verbindung zum FTP-Server herstellen?

齐天大圣
Freigeben: 2020-11-23 14:16:51
Original
6085 Leute haben es durchsucht

FTP unterscheidet sich von normalen Diensten. Bei diesem Dienst müssen zwei Ports gleichzeitig geöffnet sein. Ein Port ist der Befehlskanal und der andere Port ist der Datenübertragungskanal. Entsprechend der unterschiedlichen Einrichtung von Datenübertragungskanälen wird dieser in einen aktiven Modus und einen passiven Modus unterteilt. Hier beschreiben wir ausführlich den Arbeitsablauf im aktiven Modus und wie man auftretende Probleme löst.

Aktivmodus-Prozess

Einrichtung eines Befehlskanals. Der Client wählt zufällig einen Port größer als 1024 aus, um eine Verbindung mit Port 21 des Servers herzustellen. Wenn die Verbindung hergestellt ist, kann der Client die Verbindung verwenden, um Befehle für den FTP-Dienst auszuführen, z. B. Dateinamen abfragen, Dateien hochladen oder herunterladen Dateien usw. Befehle werden über diesen Kanal ausgeführt.

Benachrichtigen Sie den Server, um den aktiven Modus zu verwenden. Port 21 wird nur zur Befehlsausführung verwendet. Für Dateien, die wirklich übertragen werden müssen, muss ein anderer Port geöffnet werden. Der Client öffnet nach dem Zufallsprinzip einen anderen Port für die Dateiübertragung und benachrichtigt den FTP-Server dann über Port 21 über zwei Informationen. Der Client verwendet den Port für die Dateiübertragung und den aktiven Modus für die Dateiübertragung.

Der FTP-Server baut aktiv eine Verbindung zum Client auf. Wenn der FTP-Server die beiden Informationen kennt, baut er über Port 20 aktiv eine Verbindung mit dem Client auf. Sobald die Verbindung hergestellt ist, können Dateien über die Verbindung übertragen werden.

Probleme, die im aktiven Modus auftreten können

Sie können im aktiven Modus keine Verbindung zum FTP-Server herstellen. Es kann folgende Situationen geben:

  • Der Server-Port ist nicht gestartet

  • Server-Firewall

  • Das LAN, in dem sich der Client befindet, verfügt über eine NAT-Konvertierung. Im aktiven Modus sind die allgemein geöffneten Ports 21 (Befehlskanal) und 20 (Dateiübertragungskanal). Beide Ports sind unverzichtbar. Darüber hinaus muss die Firewall auch diese beiden Ports zulassen. Für den Client-Host können Sie über Telnet testen, ob diese beiden Ports geöffnet sind.

  • Probleme mit Ports und Firewalls sind relativ einfach zu lösen, Probleme mit der NAT-Konvertierung sind jedoch schwierig zu lösen. Schauen wir uns an, wie die NAT-Konvertierung Probleme verursacht. Da die Einrichtung des Befehlskanals vom Client initiiert wird, kann der Kanal erfolgreich eingerichtet werden. Wenn der Server jedoch aktiv einen Datenkanal zum Client aufbaut, kennt der Server die NAT-IP, nicht die IP des Clients. Daher sendet der Server über Port 20 eine aktive Verbindungsanfrage an einen der NAT-Ports (z. B. Port 1042). Allerdings hat NAT diesen Port nicht geöffnet, sodass der aktive Verbindungsaufbau fehlgeschlagen ist. Wie kann man dieses Problem lösen? Verwenden Sie einfach den Passivmodus.

Prozess im passiven Modus

Einrichtung eines Befehlskanals. Diese Phase entspricht dem aktiven Modus.

Der Kunde gibt eine PASV-Link-Anfrage aus. Der Client sendet über den Befehlskanal eine PASV-Passivmodus-Anfrage an den Server und wartet auf die Antwort des Servers.

Der Server startet den Datenport und informiert den Client. Wenn der Server die PASV-Anfrage des Clients empfängt, startet er einen Port für die Datenübertragung. Dieser Port kann zufällig (1024~65535) oder spezifiziert sein. Informieren Sie dann den Client über den Befehlskanal.

Der Client startet den Datenport und baut eine Verbindung mit dem Server auf. Der Client empfängt die Informationen vom Server und kennt den vom Server für die Datenübertragung verwendeten Port. Zu diesem Zeitpunkt öffnet der Client zufällig einen Port größer als 1024 und stellt dann über diesen Port eine Verbindung mit dem Server her.

Weitere verwandte technische Artikel finden Sie in der Spalte „Linux-System-Tutorials“!

Das obige ist der detaillierte Inhalt vonFTP-Aktivmodus und Passivmodus – Warum kann ich keine Verbindung zum FTP-Server herstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
ftp
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!