aria2配置使用分享

1,518 阅读10分钟

aria2配置使用分享

直接有效参考:Windows下安装运行Aria2一整套解决方案

过程中的问题与思考

aria2是什么

  • Aria2 是一个多平台轻量级,支持 HTTP、FTP、BitTorrent 等多协议、多来源的命令行下载工具

这个过程可以最大限度利用带宽,并且非常轻量,资源占用少

脱机下载

  • 之前听到说离线下载/脱机下载,什么鬼,后来发现,就是使用aria2服务器去下载比较遥远的服务器上的文件,这样能加快直接使用其他工具(迅雷/浏览器)下载的速度

  • 浏览器是属于客户端,迅雷虽然也是客户端,但是迅雷有自己的服务器,如果资源多,那么迅雷下载速度就快,但是要收费,这就尴尬了

  • 所以会使用aria2下载就是解决迅雷收费的问题,我们可以使用aria2服务器去对等服务器下载资源,当然,有些资源需要权限下载,这也就是后面说的高速百度云下载的时候需要登录的原因,让aria2作为服务器去对方的服务器拿资源,这样就快很多,然后我们再从aria2服务器把资源下载下来

原理

  • 网上可以查到aria2原理层面是支持多种下载协议的,也就是这个应用是开放出多个接口对接这下载类型的:HTTP(S), FTP, SFTP, BitTorrent,和Metalink协议

  • 然后看了下aria2.conf文件,里面很多服务器地址,都是用来支持多数据源下载的

  • 而且看下载方式,可以同时从HTTP(S)FTPSFTPBitTorrent协议路径上下载同一个文件,因为数据是可以使用块传输的,然后进行Metalink块校验和拼装成一个文件

  • 原理是使用aria2的服务器去下载资源,然后在把aria2服务器下载到的资源下载到本地

  • 那么本地aria2服务器的意义是什么?应该也是以服务器对接服务器去下载资源,这样也会快一些,而如果能直接从百度云服务器、迅雷服务器拿到授权了的下载地址,那么也就能以比较快的速度下载,至于下载速度,或许跟授权的速度(例如百度云VIP对应的下载速度)和自己网络带宽(网速)有关

可以从操作页面设置的服务器信息看到一堆支持的功能

最大的问题或许就是配置麻烦了,极度不友好

  • 虽然有很好的集成工具,但是也需要一定专业的配置认知,如果没有仔细的教程的话,就会很痛苦,当然,跟一个人研究解决复杂问题的能力相匹配

  • 不同的教程、不同的版本、不同人集成后的版本需要不一样的配置

  • 官方版本给予的就比较自由化,虽然给了懒人版本,但是依旧需要配置一些东西,不看教程,你都不知道怎么运行

例如不同版本配置不同,实际上命令逻辑是相似的,但是需要理解命令

我们想要的功能可能是百度云和迅雷支持快速下载,需要研究配置,可惜网上好多失效了

关于PanDownload这个百度云高速下载工具与aria2

  • 看了下网友关于这个的分析与参考同样的方式制作类似的高速下载工具思路

  • 原来PanDownload就是使用百度云VIP高速解析获取VIP下载地址,然后使用aria2进行下载,所以就可以封装实现,当然,由于百度云有检查,所以需要用户登录(安全问题)

原创分享aria2满速下载百度云原理和PanDownload一样

  • 当然,后面封装好的大佬的东西发现不能用了,这个也有使用难度,不过,看这原理,都是使用aria2的

aria2c是啥

  • aria2c是aria2的运行命令,当然也有aria2c.exe这个文件,类似Java的javac,执行命令的一种方式
# aria2c执行下载文件
aria2c http://host/image.iso
# aria2c执行本地种子文件下载
aria2c -u40K /path/to/file.torrent

我修改的配置

dir 修改文件保存路径 和 .aria2后缀文件
# aria2.conf配置文件
dir=C:\Users\Zheng\Desktop

默认是download,默认下载到当前项目根路径下,没有会自动创建一个download文件夹,直接去配置文件改到桌面

  • 后来想了想,还是留下记录吧,使用aria2下载会因为aria2.confforce-save配置而多产生一个.aria2后缀的文件,这个文件有记录效果,想了下,还是保存在相对路径吧,还是有需求的,改回去
dir=download
设置授权令牌:rpc-secret
# 值是:secret
rpc-secret=secret

发现一个谷歌迅雷插件一定要添加服务器地址(正常),但是一定要token(对应令牌)就莫名其妙了,然后只能加上:http://token:secret@localhost:6800/jsonrpc

旧版本是使用用户名和密码的,现在改为了直接使用密码令牌

  • 只是后面对应的webui-aria2等操作应用也需要改配置,也就是操作界面的可选密码令牌也要加上,直接修改它的配置文件configuration.js,在auth对象中加入token
auth: {
  // 就是这个梗
  // token: '$YOUR_SECRET_TOKEN$'
  token: 'secret'
  /*-----------------------------*/
  // user: '*YOUR_USERNAME*',
  // pass: '*YOUR_SECRET_PASS*'
},

重复请求下载问题

  • 使用这个PC下载工具重启aria2服务后发现一个问题,那就是刷新操作页面页面,列表中的下载请求会重新请求一遍,那一波导致下载了很多重复文件

  • 可能是路径变更之后导致记录和对应文件不一致而重新下载,当然或许也跟服务异常有关,因为在下载一些东西无法失败的时候会换很多源去查找资源,结果自然是控制台一连串的下载失败

为什么经常下载迅雷磁力/种子速度是零

  • 迅雷有自己的服务器存储资源,而aria2的很多应用包括本地运行的服务是没有服务器的,所以只能根据资源热度去找,对于冷门的资源,开始很多时间就花在了寻找上面

  • 但是一旦找到,就会很快建立稳定下载链接,实现脱离迅雷的快速下载

  • 这个可以参考Qdown这个集成应用,发现很不错

下载速度问题

  • 下载速度慢除了本身宽带路由问题,就是资源的问题或配置的问题了

  • 宽带路由问题的话,也就是不小心用了比较特殊的网络,那,个人表示一般没啥办法,喜欢研究的除外

  • 资源热点问题,很多时候是我们要下载的资源过于小众,也就是无人问津或没人分享BT种子,如果分享的人多自然容易找到,找得到下载一般问题不大

  • DHT网络节点提速。这个我这边默认在本地生成了一个相关的文件,但是很小,怀疑原来是空的,只是随着我的下载,把一些地址存进去了,更换个推荐的,但是需要比较麻烦的测试才能比较差异。。。

参考解决方案

功能

外网文件下载

  • 例如谷歌路径的一些文件下载不了,可以直接用这个下,下过一些,都OK,当然,前提是资源是有的

  • 直接命令下载指定网站的资源,如果有账号密码限制也是可以配上去的

百度网盘文件下载解决方案

网上有很多解决方案,例如PanDownload,但是既然用aria2,就不要完全封装的吧,用别人的平台登录,总有莫名的不安全,还是自己搞的好

  • 当然,发现还是要找个可以获取百度网盘直接下载的链接,找了很久,多数插件都被干翻了
百度网盘简易下载助手

百度网盘简易下载助手

  • 这是难得找到了可以获得直链地址的插件

  • 安装之后,虽然要保存到自己百度网盘,应该是通过这样的办法解决登录问题,也就是我们依旧要登录,这个时候当然是PC端,自己在官方登录,而不是别人的平台登录,当然PanDownload也是可以授权而不输入账号密码的

  • 安装成功之后刷新自己百度网盘文件位置地址可以看到红色按钮简易下载助手,选中文件可以通过人机认证后获得直链地址

  • 当然,自己本地有运行aria2服务的,可以直接配置aria2,优秀啊,直接支持

  • 因为使用过程中发现,有时会获取链接失败,有时候拿着链接去下载也会下载失败,但是直接配置aria2去下载,成功率较高,当然也可能这个服务有点小问题,不稳定

  • 但是能解决网盘下载问题,杠杠的

  • 最后发现下载几百M的文件,速度能7M+/s,当然,我相信这是受限于带宽,或许能更快

最后,几次没有生成1G的直链链接,这不知道是哪方面的问题,怀疑是百度网盘限制力度,但是多数人间这样也不错了

对于大文件,还是建议可以考虑压缩多个拆分,降低文件大小,这样就容易下了,搞得上去麻烦,下来更麻烦

迅雷下载解决方案

集成的aria2的应用和aria2命令都能直接下载这些类型的链接

Qdown

aria2集成下载工具

如果不想自己去配,这个就是一个非常全的集成下载工具了

官方文档 + 下载路径

Aria2Ng

aria2集成下载工具

  • 这个是上面一整套解决方案提供的,但是我发现虽然它显示BT服务器比Qdown多很多(后面发现都会动态增加的,下载越多,分享越多,可用源越多),但是并没啥卵用,寻找资源的速度远不如Qdown,怀疑是引用源质量的问题(又感觉是运气差)

莫名的建议使用Qdown,当然,对于百度网盘插件获取后的链接下载,两者都是可以直接下载的,复制链接或直接配置服务地址,都是本地运行的

  • 然后测了下下载速度,总体看没啥差别,看着平时几M都没有的下载速度慢慢的拉升到10M/s,老激动了。

  • 直观看Qdown比较快速拉升,然后维持高位下载,而Aria2Ng波动稍微大一点点,不过应该差不多

  • 具体因为工具引用、配置不同,有差异比较正常,而Qdown有团队维护,还是比较不错的

下载测试

这两个下载起来都没啥问题,主要是分享的人还是有点的

这个下载就老难了,太偏门了,开始迅雷还有点小速度下载了点,然后都没速度了,Qdown0.04%的进度,而Aria2Ng毫无波动