我只是想检查一下我对ftp的理解是否正确。ftp 服务器侦听端口 21。客户端使用连接到 ftp 服务器端口 21 的本地临时端口建立到 ftp 服务器的连接。当 ftp 服务器向客户端发送文件时,它从端口 20 将其发送到客户端计算机上的一个临时端口,与用于连接到端口 21 的端口不同。
那是对的吗?另外,如果多台计算机同时尝试联系 ftp 服务器会发生什么?它们都连接到端口 21 吗?一个端口可以同时打开的连接数是否有限制?
小智 14
你的理解是正确的。
一个服务器端口总是可以被多个客户端访问,因为一个 TCP 会话由 4 个元素标识:客户端 IP 地址 + 客户端端口 + 服务器 IP 地址 + 服务器端口,而不仅仅是服务器端口。
还有一种 FTP 被动模式,在这种模式下,客户端向服务器上的临时端口发起数据连接。这允许通过某些防火墙或 NATting 设备传递 FTP 流量。