服务器接入多个网络, aria2 能用不同的网口(ip)进行下载吗?看下图,机器有 3 个不同的 pppoe 拨号获得的 ip,需要多线程下载 bt 文件,能尽量均分到各个 ip 上

2021-04-14 00:11:12 +08:00
 aijialefu

2337 次点击
所在节点    程序员
15 条回复
loveqianool
2021-04-14 01:09:27 +08:00
你大概是在说链路聚合
https://wiki.archlinux.org/index.php/Network_configuration_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)#%E7%BB%91%E5%AE%9A%E5%92%8C%E9%93%BE%E8%B7%AF%E8%81%9A%E5%90%88

引自 内核文档:

The Linux bonding driver provides a method for aggregating multiple network interfaces into a single logical "bonded" interface. The behavior of the bonded interfaces depends on the mode. Generally speaking, modes provide either hot standby or load balancing services. Additionally, link integrity monitoring may be performed.
( Linux bonding 驱动提供了把多个网络接口聚合成一个“绑定”的单一逻辑接口的途径。绑定后接口的行为取决于绑定的模式,一般来说,提供“主备”和“负载均衡”两种模式。另外,可以提供对连接总体情况的监测功能。)
kennylam777
2021-04-14 05:24:02 +08:00
@loveqianool 不要說笑, 多 IP 還是 PPP 哪能用 bonding, 把英語用 Google translate 翻譯過來也是不相關的事

樓主這種問題的 keywords 是 Multi-WAN 或 multihomed load balancer, 本來是用路由器做的事, 雖然所有 Linux 都能做到但麻煩及不好維護, 就請用 keywords 去 Google 一下吧
czwstc
2021-04-14 08:33:05 +08:00
调整网卡跃点数一样即可满足你的要求。
更高的要求需要额外设置 loadblance 或者外置硬件。
nadoo
2021-04-14 08:45:03 +08:00
iptables mangle 表给数据包打标记,同时 ip rule 策略路由
om2mo
2021-04-14 08:51:51 +08:00
三个关键词可以作为研究,bond 、team 和 bridge
jhytxy
2021-04-14 09:05:16 +08:00
蛋疼不. 100 块买个路由器让 openwrt 干这个不舒服吗
no1xsyzy
2021-04-14 10:54:04 +08:00
虽然不是很确定,但我觉得是天然如此的;只不过不是均分,是 “通过哪个网络接口找到的 Peer 就会通过哪个网络接口继续传输”
aijialefu
2021-04-14 11:11:25 +08:00
@loveqianool @kennylam777 @czwstc @om2mo @no1xsyzy
各位兄弟,昨晚折腾到 3 点,刚起来。抱歉
首先这台服务器上有业务,bt 下载不能影响到之前的业务,也就是说不能动机器上关于现有网络的配置。可以安装 bt 下载软件。貌似也只能从软件层面上下手,不能动现有的网络和路由结构。

需求是在尽量少动服务器的情况下,把 3 个 pppoe 的下行给用起来,不一定必须均分,但是得雨露均沾。。。。
aijialefu
2021-04-14 11:12:34 +08:00
@jhytxy 不是想要下载啥资源 而是有跑业务的需求
aijialefu
2021-04-14 11:21:08 +08:00
@czwstc 跃点数这个我搜了下 这个修改最小 ,因为不太熟悉这块,方便问一下,修改跃点数(路由)能只针对某个软件吗?
czwstc
2021-04-14 11:28:26 +08:00
@aijialefu 不行,你修改的系统的网卡层面。
no1xsyzy
2021-04-14 13:18:37 +08:00
我不是很清楚 aria2 的具体实现,你可以直接去 aria2/aria2 开 Issue 问。
--multiple-interface 选项看上去应当支持此功能,也不妨先找个资源试试。
话说 Issue#523 似乎(作为前提)暗示了 multiple-interface 和 BitTorrent 能兼容工作
aijialefu
2021-04-14 13:51:12 +08:00
@no1xsyzy https://aria2.github.io/manual/en/html/aria2c.html?highlight=interface#cmdoption-multiple-interface 你说的应该是这个地方,英语不过关... 方便私聊一下不?
no1xsyzy
2021-04-14 14:37:44 +08:00
@aijialefu 我不用 IM,以及\
“黑客们认为问题的解决过程应该公开、透明,此过程中如果更有经验的人注意到不完整或者不当之处,最初的回复才能够、也应该被纠正。”
https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way/blob/main/README-zh_CN.md#%E5%88%AB%E8%A6%81%E6%B1%82%E4%BD%BF%E7%94%A8%E7%A7%81%E4%BA%BA%E7%94%B5%E9%82%AE%E5%9B%9E%E5%A4%8D
阅读这一条,如果你仍然坚持,带着你的邮箱说出那个神奇的句子。

不过这里看上去只要把你拨号得到的 IP 逗号分隔填进去就行了; ppp0 之类的应当也可以,但依赖 getifaddrs(3)
aijialefu
2021-04-14 14:55:18 +08:00
@no1xsyzy aria2c --multiple-interface=ppp2 http://mirrors.163.com/centos/8.3.2011/isos/x86_64/CentOS-8.3.2011-x86_64-dvd1.iso
搞定了,结帖。感谢哦 ... 完美收官

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/770460

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX