网工 FTP

FTP(File Transfer Protocol)是一种用于在网络上传输文件的标准协议。FTP有两种主要的工作模式:主动模式(Active Mode)和被动模式(Passive Mode)。这两种模式的区别主要在于客户端和服务器之间如何建立数据连接。

主动模式(Active Mode)

  1. 控制连接:客户端发起一个控制连接到服务器的默认端口21。
  2. 数据连接:当客户端请求数据传输时,服务器会尝试打开一个临时端口(通常大于1024),并通过控制连接告诉客户端该端口号。
  3. 服务器监听:服务器开始监听这个临时端口以接收客户端的数据连接。
  4. 客户端发起连接:客户端连接到服务器指定的临时端口以传输数据。
  5. 数据传输:数据传输完成后,数据连接关闭。

如果客户端和服务器之间有防火墙,主动模式下服务器是无法连接客户端的。需要在防火墙上开户ftp 穿越。

被动模式(Passive Mode)

  1. 控制连接:客户端发起一个控制连接到服务器的默认端口21。
  2. 数据连接:当客户端请求数据传输时,服务器会在一个随机的临时端口上监听,并通过控制连接告诉客户端该端口号。
  3. 客户端监听:客户端监听一个端口等待服务器连接。
  4. 服务器发起连接:服务器连接到客户端的指定端口以建立数据连接。
  5. 数据传输:数据传输完成后,数据连接关闭。

被动模式下不受防火墙的限制 。

区别总结

  • 主动模式:服务器尝试连接客户端的随机端口。
  • 被动模式:服务器监听一个临时端口,客户端连接到该端口。

选择模式的原因

  • 主动模式通常在客户端位于可以接受外部连接的网络环境中使用。
  • 被动模式通常用于客户端位于防火墙后面或者NAT(Network Address Translation)环境中的情况,因为客户端可以发起连接,而服务器不能从外部直接连接到客户端。

注意事项

  • 在使用FTP时,被动模式可能需要在防火墙上开放额外的端口范围。
  • 许多现代FTP客户端和服务器支持自动检测并选择最合适的模式。
Index