3.5. 配置 FTP
文件传输协议(FTP)是一个古老而且复杂的多端口协议,会为 LVS 环境带来很多复杂的情况。要了解这些情况的实质,您必须首先了解有关 FTP 网络的一些关键问题。
3.5.1. FTP 是如何工作的?
和大多数其它服务器客户端关系一样,客户端会在某个特定端口打开一个到服务器的连接,然后服务器在那个端口对客户端进行响应。当 FTP 客户端连接到 FTP 服务器时,它会打开一个到控制端口 21 的连接。然后客户端会告知 FTP 服务器是建立主动连接还是被动连接。由客户端选择的连接类型决定服务器如何进行响应以及在什么端口进行传输。
数据连接有两种类型:
- 主动连接
- 当建立了主动连接,服务器会在客户端机器的端口 20 或者更高的端口打开一个到客户端的数据连接。所有来自服务器的数据都会通过此连接传输。
- 被动连接
- 当建立了被动连接时,客户端会要求服务器在高于 10,000 的端口中建立一个被动连接端口。接着服务器会为此次会话绑定到此高数值端口,并将此端口号转交会客户端。客户端的每个数据请求都会形成一个独立的数据连接。最先进的 FTP 客户端会在服务器发出数据请求时试图建立被动连接。
注意
客户端决定连接的类型,不是服务器。这就是说对于有效的群集 FTP 来说,您必须将 LVS 路由器配置为既可处理主动连接也可处理被动连接。
FTP 客户端/服务器关系有可能打开大量 Piranha Configuration Tool和 IPVS 都不了解的端口。