ftp被动模式报文分析
时间: 2023-10-15 07:05:58 浏览: 106
在FTP被动模式下,客户端发送PASV命令请求进入被动模式,服务器接收到请求后会打开一个随机的高端口,并将该端口号响应给客户端。客户端接收到响应后会尝试连接服务器的该端口。此时,数据传输的连接由客户端发起,服务器被动等待客户端的连接请求。
以下是FTP被动模式下的报文分析:
1. 客户端向服务器发送PASV命令请求进入被动模式:
```
PASV
```
2. 服务器收到PASV命令后,打开一个随机的高端口,并将该端口号响应给客户端:
```
227 Entering Passive Mode (192,168,1,100,10,10)
```
其中,227是响应码,表示服务器已经进入被动模式;括号中的192.168.1.100是服务器的IP地址;10,10是高端口号的十进制表示,实际上这个端口号是由10*256+10=2570计算得到的。
3. 客户端接收到服务器的响应后会尝试连接服务器的高端口,连接成功后发送STOR(上传文件)或RETR(下载文件)命令:
```
STOR test.txt
```
4. 服务器接收到客户端的STOR命令后开始进行文件上传,数据传输的连接由客户端发起,服务器被动等待客户端的连接请求。
在FTP被动模式下,数据传输的连接由客户端发起,因此服务器不需要打开任何端口,这样就解决了FTP主动模式下需要打开防火墙端口的问题。
相关问题
有FTP报文如下: • Transmission control protocol, src port: 51373, dst port:ftp(21) • File Transfer protocol(FTP) • PORT 192.168.0.1,200,174\r\n • Request command:PORT • Request arg: 192,168,0,1,200,174 • Active IP address: 192.168.0.1 • Active port: 51374 请问:数据传输是哪种模式 A 被动模式 B 主动模式
根据给出的FTP报文,客户端使用PORT命令告诉服务器自己的数据传输端口,其中IP地址为192.168.0.1,端口号为200*256+174=51374。因此,可以判断数据传输是主动模式,选项B是正确答案。
在FTP协议的主动模式中,客户端首先通过控制连接向服务器端发送PORT命令,告诉服务器端自己打算使用的数据连接端口。然后服务器端通过数据连接向客户端指定的端口发送数据。在本题中,客户端使用PORT命令告诉服务器自己的IP地址和端口号,因此是主动模式。在FTP协议的被动模式中,服务器端会向客户端发送PASV命令,告诉客户端自己打算使用的数据连接端口。客户端接收到PASV命令后,通过数据连接向服务器端指定的端口发送数据。
阅读全文