2013-01-24 29 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.你应该把它们解析成括号。