在命令行下实验FTP的PASV传输模式
来源:互联网 发布:淘宝店铺导航栏在哪里 编辑:程序博客网 时间:2024/06/05 07:44
FTP的PASV传输模式也叫被动传输模式。
众所周知,标准FTP传输需要两个TCP/IP连接,有一个命令连接,用于FTP客户端与FTP服务器端之间传递命令和执行结果的信息。还有一个是数据连接,在执行上传文件或下载文件的操作用于传输文件的数据。
命令连接的端口是固定的,连接是持续的,一般是21号端口。而数据连接的端口是随机的,是临时产生的,而且连接是随连随断的。
rfc959的标准协议文档里的一个简易的例图,展现了这个构架。
------------- |/---------\| || User || -------- ||Interface|<--->| User | |\----^----/| -------- ---------- | | | |/------\| FTP Commands |/----V----\| ||Server|<---------------->| User || || PI || FTP Replies || PI || |\--^---/| |\----^----/| | | | | | | -------- |/--V---\| Data |/----V----\| -------- | File |<--->|Server|<---------------->| User |<--->| File | |System| || DTP || Connection || DTP || |System| -------- |\------/| |\---------/| -------- ---------- ------------- Server-FTP USER-FTP
基于客户端主动发起数据端口,还是服务器端主动发起数据端口的不同,定义了FTP的两种传输模式,PORT和PASV。
PORT模式,是客户端通过PORT命令告诉服务器端要使用的数据端口号,然后在客户端主动建立起这个端口的TCP/IP监听。在进行文件传输的操作时,服务器来连接客户端的这个数据端口,进行数据传输。
PASV模式,是客户端通过PASV命令来告诉服务器端,想使用PASV方式传输数据。服务器收到命令之后,主动在服务器端建立一个数据端口的TCP/IP监听,并把这个数据端口号返回客户端。在进行文件传输的操作时,客户端去连接服务器端的这个数据端口,进行数据传输。
为了更进一步的了解PASV传输模式,我在命令行下模拟了FTP的TCP/IP连接。
在实验中,我使用的是IIS里面自带的FTP服务器(任何一款FTP服务器软件都可以,只要是支持PASV模式)。
模拟FTP连接时,我用的是 telnet loalhost 21这样的方法来进行模拟TCP/IP连接。
1. 在ftp服务器根目录(一般是C:\Inetpub\ftproot),创建一个叫test.txt的文件,随便往里面写点东西。
2. 在命令行(CMD)窗口中开启命令端口的连接,输入命令的步骤如下
(1)telnet localhost 21
(2)user XXXX <-这个XXXX是window用户名
(3)pass XXXX <-这个XXXX是该用户的登录密码
3. 执行PASV命令,告诉服务器端要使用PASV模式传输数据。服务器端会返回数据端口的端口号。
服务器端返回的数据是127,0,0,1,5,20,包括了服务器端IP和数据端口号
服务器IP:127.0.0.1
数据端口号: 5×256+20=1300
4. 再打开一个命令行(CMD)窗口,创建与服务器数据端口的连接,使用刚才得到的端口号。
telnet 127.0.0.1 1300
5.在命令端口里输入下载test.txt的命令。
RETR test.txt
6. test.txt文件的内容,通过数据端口的传输,显示在数据连接的命令行窗口中。
以上完成了PASV模式的文件传输。
心亦注:此处的文件传输并没有真正的将文件存入客户端的磁盘,只是将数据发送至了客户端接收缓冲区。因为此处发送的是文本,所以命令行会将文本显示出来。
本文转自:http://www.cnblogs.com/zh2000g/archive/2010/03/02/1676653.html
- 在命令行下实验FTP的PASV传输模式
- FTP传输之PORT、PASV模式辨析
- ftp 的port/pasv模式
- FTP 命令模式下 PASV OR PORT
- FTP 命令模式下 PASV OR PORT
- FTP 命令模式下 PASV OR PORT
- Ftp的port模式和pasv模式
- ftp的port和pasv模式比较
- ftp的port和pasv模式
- ftp的port和pasv模式
- ftp的port和pasv模式比较
- 图解FTP的PORT和PASV模式
- IIS FTP PASV模式下更改端口范围
- IIS FTP PASV模式下更改端口范围
- ftp的主动模式(port)与被动模式(PASV)
- ftp 的port与pasv两种模式的认识
- FTP的port和pasv模式的工作方式
- ftp的port与pasv模式的异同
- linux进程间通信
- 再发 行转列通用过程
- Android ormlite 框架介绍
- 通向架构师的道路(第五天)之tomcat集群-群猫乱舞
- 无线网卡作为路由器
- 在命令行下实验FTP的PASV传输模式
- SMC已成为世界级的气动元件研发、制造、销售商
- 招数据库管理系统测试工程师一名
- 基于Predictive Parsing的ABNF语法分析器(四)——准备单元测试代码
- 程序员,爱情的烦恼
- 进销存业务的自定义分解
- DataImport(译)
- dedecms取得三级分类及子分类
- glog Notes for Windows users