运营商级NAT引起的FTP匿名下载文件中断问题

来源:互联网 发布:淘宝开通花呗要求什么 编辑:程序博客网 时间:2024/06/05 07:15

最近使用FTP协议匿名登录下载全部RFC文档的时候连续几次无故中断。

Not connected

明显是连接断开了。而且多次下载不久(大概几百个文件)就会断开连接。其造成原因有可能是服务器设置了时间限制,限制匿名用户的登陆时间,也可能是网络不好TCP自己断开了。但是具体是什么原因造成的不能自动跟服务器重新连接,一时间也没有想明白。
这两天突然想到一个可能的原因,即匿名登录的情况下,TCP断开连接以后,FTP重新建立连接时ip地址映射变更了。
现在的校园网或家庭网络用户,其使用的ip地址皆为与其他用户共享的地址池中的ip地址,也就是说ip地址会随时间变化。因为是匿名登录FTP服务器,因此一旦一个TCP连接断开,FTP重新建立连接时,运营商NAT分配的{外网地址:端口},就是另一个了,这时虽然服务器还保持着端口等待重新建立连接,但是客户端的源地址已经不是原来的了,因此不能重新和服务器建立连接了。又没有账号密码,之前的状态也无法保存。不能续传是很正常的。
一个解决方案即用一个固定的ip地址匿名登录下载。固定ip地址很好解决,可以用云服务器中转,即用云服务器上的FTP下载文件,然后再从云服务器上传输到本机。另一个解决方案即用账号密码登录,当然,如果有帐号密码,根本就不会中断下载;一般情况下,要下载文件你也不可能有帐号密码:) 嘻嘻。

为什么ip地址会变更见这里。

原创粉丝点击