欢迎来到天天文库
浏览记录
ID:59255186
大小:14.09 KB
页数:5页
时间:2020-09-08
《FTP的Port模式和Port模式的实例分析.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Port模式是client端打开一个端口连接ftpServer的20端口下面的东西详细讲解了FTP的port模式>>2.0<>2.1FTPPort模式Port模式的FTP步骤如下:1、客户端发送一个TCPSYN(TCP同步)包给服务器段众所周知的FTP控制端口
2、21,客户端使用暂时的端口作为它的源端口;2、服务器端发送SYN ACK(同步确认)包给客户端,源端口为21,目的端口为客户端上使用的暂时端口;3、客户端发送一个ACK(确认)包;客户端使用这个连接来发送FTP命令,服务器端使用这个连接来发送FTP应答;4、当用户请求一个列表(List)请求或者发起一个要求发送或者接受文件的请求,客户端软件使用PORT命令,这个命令包含了一个暂时的端口,客户端希望服务器在打开一个数据连接时候使用这个暂时端口;PORT命令也包含了一个IP地址,这个IP地址通常是客户自己的IP地址,而且FTP也支持第三方(third-party)模式,第三方模式是客户端告诉
3、服务器端打开与另台主机的连接;5、服务器端发送一个SYN包给客户端的暂时端口,源端口为20,暂时端口为客户端在PORT命令中发送给服务器端的暂时端口号;6、客户端以源端口为暂时端口,目的端口为20发送一个SYNACK包;7、服务器端发送一个ACK包;8、发送数据的主机以这个连接来发送数据,数据以TCP段(注:segment,第4层的PDU)形式发送(一些命令,如STOR表示客户端要发送数据,RETR表示服务器段发送数据),这些TCP段都需要对方进行ACK确认(注:因为TCP协议是一个面向连接的协议)9、当数据传输完成以后,发送数据的主机以一个FIN命令来结束数据连接,这个FIN命令需要另
4、一台主机以ACK确认,另一台主机也发送一个FIN命令,这个FIN命令同样需要发送数据的主机以ACK确认;10、客户端能在控制连接上发送更多的命令,这可以打开和关闭另外的数据连接;有时候客户端结束后,客户端以FIN命令来关闭一个控制连接,服务器端以ACK包来确认客户端的FIN,服务器同样也发送它的FIN,客户端用ACK来确认。下图图示了FTPPORT模式前几步步骤:/====================================================================
5、
6、
7、[ftpClient][ftpServer]
8、
9、
10、
11、(TCP:21连接初始化,控制
12、端口)
13、
14、SYN
15、
16、Portxxxx---------------------->Port21[TCP]
17、
18、SYN+ACK
19、
20、Portxxxx<----------------------Port21
21、
22、ACK
23、
24、Portxxxx---------------------->Port21
25、
26、
27、
28、(控制操作:用户列目录或传输文件)
29、
30、
31、
32、Port,IP,Portyyyy
33、
34、Portxxxx<----------------------Port21
35、
36、PortSeccussful
37、
38、Portxxxx<----------------------Port21
39、
40、List,RetrorStor
41、
42、
43、Portxxxx---------------------->Port21
44、
45、
46、
47、
48、
49、(TCP:20连接初始化,数据端口)
50、
51、SYN
52、
53、Portyyyy<----------------------Port20
54、
55、SYN+ACK
56、
57、Portyyyy---------------------->Port20
58、
59、ACK
60、
61、Portyyyy<----------------------Port20
62、
63、
64、
65、
66、
67、(数据操作:数据传输)
68、
69、Data+ACK
70、
71、Portyyyy<--------------------->Port20
72、
73、.
74、
75、.
76、
77、.
78、
79、
80、====================
81、================================================/FTPPort模式会给网络管理人员在许多方面带来很多问题,首先,在PORT命令消息中的IP地址和端口号的编码不是直白地显示。另外,应用层的协议命令理论上不应该包含网络地址信息(注:IP地址),因为这打破了协议层的原则并且可能导致协同性和安全性方面的问题。下图是WildPacketsEtherPeek协议分析仪解码了PORT命令的地址参数
此文档下载收益归作者所有