搜索 社区服务 统计排行 帮助
  • 1319阅读
  • 4回复

FTP的PSAV模式和PORT模式  

楼层直达
级别: 元老
注册时间:
2001-11-21
在线时间:
0小时
发帖:
398
FTP 的工作方式有两种,标准 (PORT)方式式和 passive 方式。
以下假设 ftp server 的命令通道端口是 21。

标准方式:

1. FTP client 使用一个大于 1024 的 port 呼叫 FTP server 的端口 21 建立命令通道的连接。
2. client 挑选另一个大于 1024 的端口,用 port 命令通知 server 客户端可以用这个端口做数据通道。
3. server 用端口20 和 client 的上述端口建立连接进行数据传送。

PASV 模式:

1. 同标准方式。

2. client 发送 PASV 命令给 server 要求建立 PASV 模式。
3. server 挑选一个大于 1024 的端口回应通知 client 做数据通道。
4. client 用另一个大于 1024 的端口发起到刚才 server 告知的端口的连接,进行数据传送。

两种方式的关键差别在:
1. 数据通道建立的发起方是不同的;
2. 标准方式下 server 端的数据通道端口总是 20 ,而 pasv 方式下是随机挑选的。


具体点就是说,PASV模式的ftp:
client连接到server的21端口;
client告诉server一个端口号A;
server用20端口连接到client的端口A(数据通道)。
PASV模式的ftp:
client连接到server的21端口;
client告诉server用PASV模式;
server告诉client一个端口号B;
client发起连接到server的端口B(数据通道)。

可以看到,PORT模式中,数据通道是由server发起连接到client的,client如果是在NAT后面,如果NAT上没有高层ftp代理,这个连接就无法成功。而PASV模式中,连接都由client发起,就没有这个问题。但因为server要告诉client一个端口号B(一般都在高端的端口号),而且要接受client到这个端口的连接,所以防火墙设置比较麻烦了


爱看动漫的家伙
级别: *
注册时间:
*
在线时间:
小时
发帖:
*
只看该作者 1楼 发表于: 2002-03-07
FTP的PSAV模式和PORT模式  
谢谢!
哦ok!
级别: 精灵王
注册时间:
2001-11-21
在线时间:
0小时
发帖:
2775
只看该作者 2楼 发表于: 2002-03-12
FTP的PSAV模式和PORT模式  
yeah!! 我懂了!

望着窗外夜景,公路居屋,白燈黃燈,夜風吹來,帶涼意,就沒人感到夜風帶給人幽遠深邃的感覺?那是飄的感覺,不是飛,是飄,化成一根羽毛,飄啊飄,在深邃的夜。飛的主觀意識太強,讓風帶着你,見到的東西會更多 [br] 但別讓你的幻想發揮,別運用思考,羽毛長出了鳥兒、飛、破壞了一切,讓天上跌落到人間。 然後,你聽到蟲鳴,抓住了點安尉,文之以遣懷
级别: 侠客
注册时间:
2001-11-21
在线时间:
0小时
发帖:
603
只看该作者 3楼 发表于: 2002-03-13
FTP的PSAV模式和PORT模式  
谢谢!
级别: 骑士
注册时间:
2001-11-21
在线时间:
0小时
发帖:
856
只看该作者 4楼 发表于: 2002-03-13
FTP的PSAV模式和PORT模式  
為何的架的ftp server不能用pasv模式只能用port的方式...
這是那裡出了問題...

p.s 我是動態ip