关于多 WAN 多线无冲突负载均衡一点微小的想法

2016-09-26 13:35:24 +08:00
 qq316107934

方案

寝室里原来有一条 20M 的电信宽带,今年又办了一条 20M 的联通宽带,发现联通梯子用着顺畅,电信国内游戏延迟低,于是想做个双 WAN 合并,刷好了 OpenWRT 并配置了 MWAN3 ,上网找了一些方案,都不是很满意。目前据我所知道的多线负载均衡解决方案有:

1.基于单包的负载均衡:随机将包发送到多个 WAN 口上达到负载均衡的目的,缺点很明显,很容易造成某些应用的掉线,对于网银和 QQ 的支持不是很好, IP 会经常变化。

2.基于静态路由的负载均衡:就是针对 ISP 特定的 IP 段进行静态路由,达成了哪家 ISP 走哪家线的优点。但是问题也是存在的: DNS 会被直接分配给某一个固定 WAN 口,解析出来的 IP 的 ISP 来源是固定的,基本达不到负载均衡的目的。

3.基于 session 的负载均衡:流量特征识别,然后负载均衡,这个方案倒是比较好用,但是搜了下全网 1000 以下的路由基本没有,大部分是企业级的路由器,对于穷学生来说用不起,就不再考虑这个方案了。

想法

刚刚午休时冒出的想法:结合上文 1 和 2 ,利用静态路由表做 ISP 分流,然后 DNS 解析的时候对 DNS 的 IP 做基于包的负载均衡,让支持多线的不同网站解析出不同 ISP 的 IP ,既能达到负载均衡的目的,又不会因为包被分散发送而影响某个会话。

大家对此有何见解?或者有什么更好的方案吗? PS:预算在 350 以内, RouterOS 和软路由基本没戏。

谢谢大家。

8937 次点击
所在节点    宽带症候群
46 条回复
lanbing
2016-09-26 15:59:44 +08:00
Ansonyi
2016-09-26 16:01:30 +08:00
@cyang 梅林的那个版本呢?求一个。
ryd994
2016-09-26 16:04:05 +08:00
建议还是要判断 7 层协议,至少区分端口
游戏有固定端口, fq 也有固定协议和端口,你的主要需求是完全可以满足的。

至于 bt ,除非双开,否则效果无论怎样都不会好,因为 tracker 每个 peer 只记录一个 ip ,而不双开 peerid 是一样的。 DHT 只会从默认路由上出去,所以反之也是一样。而且如果你用随机路由的办法,来回跳,只会给其他 DHT 客户端带来困扰。 BT 指定端口范围就行,这样也可以匹配。

剩下的可以考虑 geoip 外国网站走联通

国内基本上还是电信快

软路由的话,找师兄买旧电脑,找不到就网上买个二手商务本, CPU 够就行,很便宜的, 350 以内完全可以。
laoyuan
2016-09-26 16:05:21 +08:00
我嗅到了淡淡的蛤意
qq316107934
2016-09-26 16:13:32 +08:00
@ryd994 全方位解答了我的所有疑惑,谢谢!现在考虑入 ROS 坑了,想来想去还是软路由区分协议,然后用 both address and ports 分流靠谱。
qq316107934
2016-09-26 16:22:29 +08:00
@KCheshireCat 20 条...给壕跪了。是一种好方案, mark 一下,但还是准备上软路由。话说这么宽的水管用这种方案效率真的不会出问题吗?
qq316107934
2016-09-26 16:31:35 +08:00
@lanbing 想详细问下风扇噪音和 CPU 型号,如果谈妥可以走某鱼吗?
KCheshireCat
2016-09-26 16:35:45 +08:00
@qq316107934

这个还是有硬伤的.把链接分配到不同路由表的话,对网关,也就是路由器本身的发起连接是无效的.从网关发起的连接是不经过打标记的那些 iptables 表的.

虽然大部分情况下 http/https 连接会支持 keep-alive,也就是一个请求完了会保持 tcp 连接以便之后请求复用,只要连接还没断开就不会分配新的出口,session 就不会有问题.

但是遇上不支持 keep-alive 的服务器,就很有可能没法保持 session 了.

再有就是虽然是按连接均分或随机分配,但每条连接有多少流量是不确定的,如果偶然的把大流量的连接都分配到一个出口了,还是会出现流量叠加不理想的情况.
lanbing
2016-09-26 16:37:10 +08:00
@qq316107934


CPU : Intel(R) Celeron(R) CPU 1037U @ 1.80GHz | 2048 KB | 1795.753 MHz | x2
硬盘: ATA CF Card Ver2 (2.01 GB/1.87 GiB)
内存: 1940 MB


主板芯片 Intel Corporation Device 0154 (rev 09)
PCI 桥 Intel Corporation Device 0151 (rev 09)
显卡 Intel Corporation Device 0156 (rev 09)
USB 控制器 Intel Corporation Cougar Point USB Enhanced Host Controller #2 (rev 04)
PCI 桥 Intel Corporation Cougar Point PCI Express Root Port 1 (rev b4)
PCI 桥 Intel Corporation Cougar Point PCI Express Root Port 2 (rev b4)
PCI 桥 Intel Corporation Cougar Point PCI Express Root Port 3 (rev b4)
PCI 桥 Intel Corporation Cougar Point PCI Express Root Port 4 (rev b4)
PCI 桥 Intel Corporation Cougar Point PCI Express Root Port 5 (rev b4)
PCI 桥 Intel Corporation Cougar Point PCI Express Root Port 6 (rev b4)
USB 控制器 Intel Corporation Cougar Point USB Enhanced Host Controller #1 (rev 04)
ISA 桥 Intel Corporation Device 1c49 (rev 04)
IDE 接口 Intel Corporation Cougar Point 4 port SATA IDE Controller (rev 04)
SMBus Intel Corporation Cougar Point SMBus Controller (rev 04)
IDE 接口 Intel Corporation Cougar Point 2 port SATA IDE Controller (rev 04)
网卡 Intel Corporation 82583V Gigabit Network Connection (eth0 08 70 27 e8 2c f6)
网卡 Intel Corporation 82583V Gigabit Network Connection (eth1 08 70 27 e8 2c f7)
网卡 Intel Corporation 82583V Gigabit Network Connection (eth2 08 70 27 e8 2c f8)
网卡 Intel Corporation 82583V Gigabit Network Connection (eth3 08 70 27 e8 2c f9)
网卡 Intel Corporation 82583V Gigabit Network Connection (eth4 08 70 27 e8 2c fa)
网卡 Intel Corporation 82583V Gigabit Network Connection (eth5 08 70 27 e8 2c fb)

可以走咸鱼,但是不包邮。。。很重。。。。
lanbing
2016-09-26 16:39:14 +08:00
@qq316107934 没什么噪音,放在办公室内,有轻微的声音,我都自动忽略了。
qq316107934
2016-09-26 16:57:09 +08:00
@lanbing 哎:-(,硬盘再大一点就好了,不过价格也挺实惠了~ 给下地址吧,大概邮费要多少钱?
lanbing
2016-09-26 17:16:12 +08:00
@qq316107934 有硬盘接口,可以接个硬盘。你要什么快递,目测大概有个五六斤的样子。(顺丰的话就贵一些, EMS 或者邮政包裹便宜)有个 32G 的金胜, 50 出。你可以考虑一起带走。。。 这种,稍后放咸鱼。 https://detail.tmall.com/item.htm?spm=a220m.1000858.1000725.1.C1hq9A&id=525523255515&areaId=370800&cat_id=2&rn=360315d7ad59fd86d3cf72c631d5269b&user_id=2739901298&is_b=1
lanbing
2016-09-26 17:19:45 +08:00
cyang
2016-09-26 20:52:06 +08:00
@qq316107934 @Ansonyi KoolShare 改版固件
lun10439547
2016-09-26 21:17:45 +08:00
@cyang 你好 问下两条线都在 68 路由器上面拨号? 我 r7000 刷的梅林, wan2 就是无法拨号,然后前面又加了一个路由拨号, 开启策略路由非常不稳定不说,而且很多国内网站会通过移动访问。。。
cyang
2016-09-26 21:26:26 +08:00
@lun10439547 电信的自己拨号 移动的是固定 IP 。稳定性还好...
terrancesiu
2016-09-26 21:31:58 +08:00
@qq316107934 不会,dns 是 bgp 线路,详细描述在这 https://www.dnspod.cn/Products/Public.DNS
dlsflh
2016-09-27 00:47:16 +08:00
感觉我们是一个学校的
qq316107934
2016-09-27 00:59:49 +08:00
@dlsflh 应该不一样,其实我们学校电信宽带是需要天翼客户端的,投诉后才能用的 PPPOE 。
dlsflh
2016-09-28 01:54:00 +08:00
@qq316107934 明故宫

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

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

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

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

© 2021 V2EX