FTP的两种工作模式

上一篇 / 下一篇  2007-11-28 10:59:31 / 个人分类:网络协议

51Testing软件测试网@#h%~;X3q%T^dh

FTP是一种文件传输协议,它支持两种模式,一种方式叫做Standard (也就是Active,主动方式),一种是Passive (也就是PASV,被动方式)Standard模式FTP的客户端发送PORT命令到FTPserverPassive模式FTP的客户端发送PASV命令到FTP Server

W8oT!]GE{7\I051Testing软件测试网IfQ HPQ v

下面介绍一个这两种方式的工作原理:51Testing软件测试网nT3WUFb(zgE
    Standard
模式FTP客户端首先和FTP ServerTCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口发送数据。FTP server必须和客户端建立一个新的连接用来传送数据。
51Testing软件测试网3@.VXlU\t3o"gD

WM(WzU j0WB mn0 

L,IgO,r9x0

\+_6y[vkI0recv   "220 ProFTPD1.2.5Server (ProFTPD Default Installation) [Admin]\r\n"51Testing软件测试网!y9i'l`&U*`4W L R

&d _!cMY?"I7q,c0send  "USER libh\r\n"51Testing软件测试网G4i8K-jz9i9j'[*It6C

51Testing软件测试网*z;p.bg-l4F

recv  "331 Password required for libh.\r\n"

9\+\)H sm+u0

yxm/MAXQ V VF0send  "PASS 1111\r\n"51Testing软件测试网iGc'wD d

51Testing软件测试网8w {r]]7E

recv  "230 User libh logged in.\r\n"51Testing软件测试网 I4Yl%zW'F)uj

51Testing软件测试网TdE+c f,cN{}

send  "PORT 192,168,0,116,94,141\r\n"51Testing软件测试网ph.MA'V6Zs,r"M!z

51Testing软件测试网 Odj3v8h d

//port=94*256+14151Testing软件测试网)v~b7tcsR,~a

51Testing软件测试网_-^8DFYq

 51Testing软件测试网_d'~/pf,NeQ%B2F#P

51Testing软件测试网nr Xsm4o W#V

recv  "200 PORT command successful.\r\n"51Testing软件测试网N6O2K1~3iY!m$H4U}

wR.o*oX0send  "STOR 100k.doc\r\n"

&f3YI y\0NlJ0

+Xb+tc M&v1h2@0recv  "150 Opening ASCII mode data connection for 100k.doc.\r\n"51Testing软件测试网*P&k%@P@"`%b-GT

$ir IqT5B0stPQa0 51Testing软件测试网9}t]A"X*mS6U}

51Testing软件测试网?6C _2gN

send  ………………………………51Testing软件测试网+DB'a K8p(N*Ya

oy!]*bs)o9o0recv  "226 Transfer complete.\r\n"

MDh CTwC0

f(I#O0Z%Z:F3[Z0send    "QUIT\r\n"

T0c%n C2E0

)B,iGq.ZPF0recv   "221 Goodbye.\r\n"

_Z N&]y\{051Testing软件测试网/t_L_]%K!IJj

51Testing软件测试网cY/QBc2H4k V
    Passive模式在建立控制通道的时候和Standard模式类似,当客户端通过这个通道发送PASV命令的时候,FTP server打开一个位于10245000之间的随机端口并且通知客户端在这个端口上传送数据的请求,然后FTP server将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。 

KF P2Ief(br_4B0

\IU7Q&?2K0recv  "220 ProFTPD1.2.5Server (ProFTPD Default Installation) [Admin]\r\n"51Testing软件测试网DKt tJU#]4X

51Testing软件测试网 G q6r0Dz4u9}Hb

send  "USER libh\r\n"

*E&D}~e)ExO0

8nqq3jh C'M(~0recv   "331 Password required for libh.\r\n"51Testing软件测试网6a3w:v(?:d~![

C j'N9\@0send  "PASS 1111\r\n"51Testing软件测试网 b:T4Q0x`%CX

$^w wqD0U,a+G0recv  "230 User libh logged in.\r\n"51Testing软件测试网,]^F&Xat

:[+k s1R X0send     "PASV\r\n"51Testing软件测试网@ q+|Bt2uc*^bOR-f

51Testing软件测试网Ne3sc${;he:C1v z

recv   "227 Entering Passive Mode (192,168,0,254,128,3).\r\n"

&~2^7sMYyl0

s{!\M |N0//port=128*256+3

1L9n"H;CHA&Q0

N;^M]+R%m {jZ;k0 51Testing软件测试网\!u7g-ax7e]7c$c

~'kXAW$q G0send  "STOR 100k.doc\r\n"51Testing软件测试网Fi `\(F

51Testing软件测试网0[9mb _!\-Y2Z R5m

recv  "150 Opening ASCII mode data connection for 100k.doc.\r\n"

;~c.T!W7A051Testing软件测试网T7Y7eXyZ

send  …………………………51Testing软件测试网.H"{b6YZ0kd R

51Testing软件测试网4F,Rl G |tMD G9Y

recv  "226 Transfer complete.\r\n"

5bM[Z~0

d ceTKX.G&P:q0send      "QUIT\r\n"recv          "221 Goodbye.\r\n"

:H1]'` j4]:F0{0

 

:G `Oo#x)Y0

TAG: ftp 网络协议

 

评分:0

我来说两句

Open Toolbar