2013-01-24 33 views
3

我正在寫一個FTP服務器,但我不明白的PASV命令,任何服務器發送這樣的響應:應該是什麼FTP響應PASV命令

227 Entering Passive Mode (213,229,112,130,216,4) 

什麼呢在數括號是什麼意思?什麼是正常和被動模式之間的區別?

+0

您還應該閱讀[相關RFC(959)](https://tools.ietf.org/html/rfc959)。 –

+0

你應該非常熟悉RFC 959 http://www.ietf.org/rfc/rfc959.txt這是FTP的聖經。有一節介紹了PASV請求的結果。 –

+0

RFC 959沒有爲「PASV」響應文本定義一個**標準格式**,並且[RFC 1123第4.1.2.6節](http://tools.ietf.org/html/rfc1123#page -31)。多年來一些FTP服務器已經實現了他們自己的格式。 *通常* IP /端口包裝在括號中,但這是[不保證](http://stackoverflow.com/a/22544828/65863)。在[RFC 2428](http://tools.ietf.org/html/rfc2428)中定義的'EPSV'命令引入了標準格式。 –

回答

7

是的,你有(213,229,112,130,216,4)作爲結果。 213,229,112,130是IP地址。 216是十進制的高8位。 4是十進制的低8位。所以端口號是216 * 256 + 4.你應該把它們解析成括號。