FTP主动模式和被动模式在VRP上实现(实验、报文和理论解析)

嗯~点关注不迷路

1.简述主动模式的FTP建立连接的主要步骤


图1-19 FTP主动模式示意图
基本原理
FTP(文件传输协议)的特殊性:
大多数的TCP服务是使用单个的连接,一般是客户向服务器的一个周知端口发起连接,然后使用这个连接进行通讯。但是,FTP协议却有所不同,它使用双向的多个连接,而且使用的端口很难预计。一般,FTP连接包括:
一个控制连接(control connection) ,它使用服务器的21端口,生存期是整个FTP会话时间;另外一个传输数据为工作在端口20的连接
主动模式
PORT模式即主动模式,工作原理以及步骤:1)FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录;2)登录成功后使用命令查看或者准备索取数据;3)客户端随机开放一个端口(1024以上),发送 PORT命令到FTP服务器,告诉服务器客户端采用主动模式并开放端口;4)FTP服务器收到PORT主动模式命令和端口号后,通过服务器的20端口和客户端开放的端口连接,发送数据。该工作工程如图1-19所示。在华为设备上实现FTP也是该模式,我们在华为设备上实现一个基本的FTP文件传输(很多时候用于备份或者升级VRP系统文件的场景,本位置拓扑可参考图1-13)
服务器端(地址为12.1.1.2):

ftp server enable
aaa
 local-user ftp1 password cipher %$%$h;oSNQ<7#B2!>vNyIO;T7Ucl%$%$
 local-user ftp1 privilege level 15
 local-user ftp1 ftp-directory flash:
 local-user ftp1 service-type ftp
客户端测试:
<AR1>ftp 12.1.1.2
Trying 12.1.1.2 ...
Press CTRL+K to abort
Connected to 12.1.1.2.
220 FTP service ready.
User(12.1.1.2:(none)):ftp1
331 Password required for ftp1
Enter password:
230 User logged in.

[AR1-ftp]
[AR1-ftp]get ssl***.zip #从R2下载文件

如上的例子我们可以查看报文可以清晰的看到FTP21端口的控制命令和FTP 20端口的FTP数据传输

图1-20 FTP主动模式工作在端口21的控制连接

图1-21 FTP主动模式工作在端口20的数据传输
小技巧:FTP的主动模式是传统的FTP方式。在此,考生可以参考图解向考官表明该过程。另外给大家分享一个乾颐堂作业体系中一名学员针对FTP作业的故事:FTP的21端口号就像员工的老大,老大让做什么就做什么,而FTP的20端口号就像下面的员工一样,照做就是。这也是一个很生动的例子
为了保持完整性,我们在此也简要描述一下FTP的被动模式,即PASV模式,是Passive的缩写,工作原理:FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录,登录成功后要list列表或者读取数据时,发送PASV命令到FTP服务器, 服务器在本地随机开放一个端口(1024以上),然后把开放的端口告诉客户端, 客户端再连接到服务器开放的端口进行数据传输。区别就在于是服务器开放了一个随机端口(而非20)。

2.简述被动FTP的主要步骤

实际上FTP的主动模式或者被动模式可以在FTP软件定义
一个华为VRP上被动FTP的例子

[R1]ftp server enable  //服务器地址10.0.0.1
aaa
 local-user ender password cipher %$%$BdT"SX\el/M~v\YVt;%%C1D{%$%$
 local-user ender privilege level 15
 local-user ender ftp-directory flash:
 local-user ender service-type ftp
客户端测试(客户端地址10.0.0.3)
<SW1>ftp 10.0.0.1
Trying 10.0.0.1 ...
Press CTRL+K to abort
Connected to 10.0.0.1.
220 FTP service ready.
User(10.0.0.1:(none)):ender
331 Password required for ender.
Enter password:
230 User logged in.

[ftp]
[ftp]
[ftp]
[ftp]pass
[ftp]passive //切换到被动模式
Info: Succeeded in switching passive on.

[ftp]dir
227 Entering Passive Mode (10,0,0,1,198,23).
125 ASCII mode data connection already open, transfer starting for *.
drwxrwxrwx   1 noone    nogroup         0 Sep 28 12:46 dhcp
-rwxrwxrwx   1 noone    nogroup    121802 May 26  2014 portalpage.zip
-rwxrwxrwx   1 noone    nogroup      2263 Sep 28 12:44 statemach.efs
-rwxrwxrwx   1 noone    nogroup    828482 May 26  2014 ssl***.zip
drwxrwxrwx   1 noone    nogroup         0 Sep 28 12:46 .
226 Transfer complete.
[ftp]get  statemach.efs
Warning: The size of file statemach.efs is as same as the remote one. Overwrite it? [Y/N]:y
227 Entering Passive Mode (10,0,0,1,194,182).
125 ASCII mode data connection already open, transfer starting for statemach.efs.
226 Transfer complete.
FTP: 2263 byte(s) received in 11.830 second(s) 191.29byte(s)/sec.

[ftp]quit

主动方式是指在建立数据连接时由服务器主动发起连接请求,并要求客户端和服务器端同时打开端口以建立连接;被动方式是指在建立数据连接时由客户端主动发起连接请求,且只要求服务器端产生一个连接相应端口的进程
通过报文理解被动模式

原文地址:http://blog.51cto.com/enderjoe/2287361

时间: 2024-10-14 06:28:45

FTP主动模式和被动模式在VRP上实现(实验、报文和理论解析)的相关文章

FTP主动模式和被动模式的区别

基础知识: FTP只通过TCP连接,没有用于FTP的UDP组件.FTP不同于其他服务的是它使用了两个端口, 一个数据端口和一个命令端口(或称为控制端口).通常21端口是命令端口,20端口是数据端口.当混入主动/被动模式的概念时,数据端口就有可能不是20了. 主动模式FTP: 主动模式下,FTP客户端从任意的非特殊的端口(N > 1023)连入到FTP服务器的命令端口--21端口.然后客户端在N+1(N+1 >= 1024)端口监听,并且通过N+1(N+1 >= 1024)端口发送命令给F

[转] FTP主动模式和被动模式的区别

转自原文FTP主动模式和被动模式的区别 基础知识: FTP只通过TCP连接,没有用于FTP的UDP组件.FTP不同于其他服务的是它使用了两个端口, 一个数据端口和一个命令端口(或称为控制端口).通常21端口是命令端口,20端口是数据端口.当混入主动/被动模式的概念时,数据端口就有可能不是20了. 主动模式FTP: 主动模式下,FTP客户端从任意的非特殊的端口(N > 1023)连入到FTP服务器的命令端口--21端口.然后客户端在N+1(N+1 >= 1024)端口监听,并且通过N+1(N+1

[服务]ftp主动模式和被动模式

经常忘记这个东西.于是总结下这东西感受下这个协议. FTP连接方式 控制连接:标准端口为21,用于发送FTP命令信息 数据连接:标准端口为20,用于上传.下载数据 数据连接的建立类型: 主动模式:服务端从20端口主动向客户端发起连接 被动模式:服务端在指定范围内的某个端口被动等待客户端发起连接 FTP传输模式 文本模式:ASCII模式,以文本序列传输数据 二进制模式:Binary模式,以二进制序列传输数据 总结: 一 两个阶段:控制连接  tcp 21(client发起,三次握手过程) ?  

FTP主动模式和被动模式的区别【转】

转自:http://www.cnblogs.com/xiaohh/p/4789813.html 基础知识: FTP只通过TCP连接,没有用于FTP的UDP组件.FTP不同于其他服务的是它使用了两个端口, 一个数据端口和一个命令端口(或称为控制端口).通常21端口是命令端口,20端口是数据端口.当混入主动/被动模式的概念时,数据端口就有可能不是20了. 主动模式FTP: 主动模式下,FTP客户端从任意的非特殊的端口(N > 1023)连入到FTP服务器的命令端口--21端口.然后客户端在N+1(N

【转】FTP主动模式和被动模式的比较

总是记不住FTP主动和被动模式的区别.放在这里,以备日后查阅. FTP是仅基于TCP的服务,不支持UDP.与众不同的是FTP使用2个端口,一个数据端口和一个命令端口(也可叫做控制端口).通常来说这两个端口是21(命令端口)和20(数据端口).但FTP工作方式的不同,数据端口并不总是20.这就是主动与被动FTP的最大不同之处. (一)主动FTP          主动方式的FTP是这样的:客户端从一个任意的非特权端口N(N>1024)连接到FTP服务器的命令端口,也就是21端口.然后客户端开始监听

FTP 传输中的主动模式和被动模式

最近做一个项目用到FTP和其它系统进行文件传输,结果在FTP网络连接的问题上花了很多时间,由于太久没搞多FTP,忘记了FTP不单单开放21端口,客户端采用不同连接模式对网络有不同.在此重温一下FTP的主动模式和被动模式的相关知识. 在使用FTP时,如果客户端机器和FTP服务器双方之间的所有端口都是开放的,那连接不存在问题.如果客户端与服务器之间有防火墙,如果没配置好防火策略和采用合适的连接模式,会导致登录成功,但无法List列表的问题.要避免出现这样的问题,首先要了解FTP的工作模式.  1.F

FTP的主动模式和被动模式

摘自http://blog.csdn.net/love_gaohz/article/details/50723164 http://my.oschina.net/binny/blog/17469 FTP的主动模式和被动模式 主动模式:客户端通过控制链接发送PORT <address>(IP 地址和两字节的端口 ID)给服务器,然后bind之后对发送的端口进行监听.服务器收到后通过端口20和客户端建链,发送数据. 被动模式:客户端通过发送PASV 请求服务器等待链接.服务器返回.这意味着在服务器

FTP的主动模式与被动模式

1.FTP的主动模式与被动模式 FTP服务器使用20和21两个网络端口与FTP客户端进行通信. FTP服务器的21端口用于传输FTP的控制命令,20端口用于传输文件数据. 1.1FTP主动模式: FTP客户端向服务器的FTP控制端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路;当需要传送数据时,客户端在命令链路上用PORT的命令告诉服务器我开放了某端口,你过来连接我.于是服务器从20端口向客户端的该端口发送连接请求,建立一条数据链路来传送数据.在数据链路建立过程中是服务器主动请求

FTP的主动模式和被动模式的相关知识

FTP的主动模式和被动模式的相关知识. 在使用FTP时,如果客户端机器和FTP服务器双方之间的所有端口都是开放的,那连接不存在问题.如果客户端与服务器之间有防火墙,如果没配置好防火策略和采用合适的连接模式,会导致登录成功,但无法List列表的问题.要避免出现这样的问题,首先要了解FTP的工作模式. 1.FTP的PORT(主动模式)和PASV(被动模式) (1) PORT(主动模式) PORT中文称为主动模式,工作的原理: FTP客户端连接到FTP服务器的21端口, 发送用户名和密码登录,登录成功