请教个在 OP 里链路聚合网速不升反降的问题

2022-09-06 09:51:04 +08:00
 flowdesign

原始参考贴 https://s.v2ex.com/t/822174

上海电信, 没有在局端开桥接, 自己买了华为的 HN8546Q, 刷回原版固件并补全了 shell, 改成 epon 模式, 光猫端没有做太多的额外设置, 开了 vlan51/85 来实现 IPTV 盒子的使用

光猫后面用软路由桥接拨号, PVE 宿主+OP 虚拟机, 直通三个网口给了 OP, 没有做 bond 之前单独用 wan1 或者 wan2 拨号测速都是在 900M 上下的速度浮动, 但 bond 之后测速就会掉落到 700-800 之间, 多次测速都是同样的结果, 如果拔掉一根 wan 口的网线在 bond 模式下单线单拨, 速度和普通的单线单拨是基本一致的, 来来回回折腾了很久都没发现问题到底出在哪里, 还望各路神仙给帮忙答疑解惑一下

PS.1 rc.local 我是这么写的

modprobe bonding mode=0 miimon=100

ip link delete bondwan

ip link add bondwan type bond mode 0

ip link set eth1 down

ip link set eth2 down

ip link set eth1 master bondwan

ip link set eth2 master bondwan

ip link set bondwan up

exit 0

PS.2 bonding 模式下拨号测速后用 ifconfig 看过 eth1 和 eth2 两个口的流量, 基本一致, 所以应该是按照正常的 bonding 模式在工作的

5075 次点击
所在节点    宽带症候群
37 条回复
swiftg
2022-09-06 13:00:30 +08:00
ip link set eth1 type bond_slave
ip link set eth2 type bond_slave
这两条呢
lcy630409
2022-09-06 14:00:12 +08:00
直接在 openwrt 接口中设置 不需要命令行
lcy630409
2022-09-06 14:02:54 +08:00
网络 -> 接口 -> 添加新接口-> 新接口的协议 -> 链路聚合(通道绑定)
之后在 高级设置->从属接口 选择网卡,其他参数默认即可


这个其实是 lan 口欺骗,有概率会出现 速度反而下降的问题,重新启动一下就好
flowdesign
2022-09-06 14:16:15 +08:00
@swiftg, 我曾经加过这两条, 实际效果一样, 现在我查看 eth1 和 eth2 的状态都是很正常的, eth2 网线拔了, 所以状态为 down, 而且真实 mac 也都显示出来的
> eth1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1460 qdisc mq master bondwan state UP mode default group default qlen 1000 link/ether 28:cd:b5:37:49:c7 brd ff:ff:ff:ff:ff:ff
> eth2: <NO-CARRIER,BROADCAST,MULTICAST,SLAVE,UP,> mtu 1460 qdisc mq master bondwan state DOWN mode default group default qlen 1000 link/ether 28:cd:b5:37:49:c7 brd ff:ff:ff:ff:ff:ff permaddr 28:cd:b5:37:49:c6

@lcy630409 这种方式我加过, 不过这里有个问题, 这样加出来的接口是一个逻辑接口, 没法再叠加 pppoe 拨号了, 因为 OP 里面把链路聚合和 pppoe 的协议放在一层上面, 是个二选一的方式...
lcy630409
2022-09-06 14:24:45 +08:00
@flowdesign 晕 不是啊,先加接口,然后 pppoe 的接口选这个
lcy630409
2022-09-06 14:25:41 +08:00
你到 pppoe 的那个接口,设置里的物理设置,看看接口有没有刚那个? 如果你保存成功的话 是肯定有的
malash
2022-09-06 16:42:23 +08:00
遇到奇怪的速率问题重启光猫和路由器,亲测
lxll
2022-09-06 17:35:52 +08:00
这个要看光猫的,有些光猫不支持聚合。

聚合后测速时你可以看看你的光猫 CPU ,大概率 100%占用。
flowdesign
2022-09-06 19:50:22 +08:00
@lcy630409 重新测试了一下, 和我之前做的一样, 链路聚合产生的是一个逻辑接口, 它不能被另外一个逻辑接口再次调用来执行 pppoe, 如果你曾经成功过的话, 麻烦发个截图让我看看是什么样设置的

@malash 亲测无数次重启, 然而并没用...

@lxll 测速时检查光猫 CPU 占用率这个事情倒是没做, 不过按照我理解, 如果光猫物理不支持 bonding 的话, 我绑定的两个 wan 口不可能同时出现数据流量, 并且光猫的两个连接路由器 wan 口的端口数据指示灯是一直闪烁的, 更关键的是 HN8645Q 是很多人亲测支持 balance rr 的
lcy630409
2022-09-06 20:13:46 +08:00
swiftg
2022-09-06 20:22:11 +08:00
以下是我以前成功运行半年的配置
opkg update
opkg install kmod-bonding luci-proto-bonding proto-bonding
ip link add bond0 type bond mode balance-r

cat /etc/rc.local

ip link set eth1 type bond_slave
ip link set eth2 type bond_slave
ip link set eth1 master bond0
ip link set eth2 master bond0
ip link set bond0 up
ifconfig eth1 down
ifconfig eth2 down
sleep 1
ifconfig eth1 up
ifconfig eth2 up

然后 luci 界面,宽带 pppoe 拨号连接里的网卡选择 bond0
swiftg
2022-09-06 20:24:00 +08:00
记得配置 bond 后网卡灯不闪,把 eth1 eth2 重启下就正常。每次软路由重启都必须这一步
swiftg
2022-09-06 20:26:51 +08:00
忘了说我是官方原版的 OpenWrt 21.02 ,硬件是 R86S ,聚合的是两个英特尔 I225 2.5G 口
swiftg
2022-09-06 20:31:25 +08:00
还有个操作忘了说,我还编辑 /etc/config/network 给 pppoe 拨号的接口手动指定了 mac 地址,这个 luci 界面改不了

nano /etc/config/network

config interface 'cmcc'
option proto 'pppoe'
option username 'xxx'
option password 'xxx'
option metric '5'
option peerdns '0'
option ipv6 'auto'
option macaddr 'xx:xx:xx:xx:xx:xx'
option mtu '1500'
option device 'bond0'
flowdesign
2022-09-06 21:03:23 +08:00
@lcy630409 多谢辛苦帮我录屏, 我刚刚又捣鼓了一阵, 并没有什么特殊操作, 然后突然就可以用 wan 口绑定新增加的这个 bond 口来 pppoe 拨号了, 然而坑爹的事情在于, 这种拨号测速直接变成了只有 20M...而且 ifconfig 看到 eth1 和 eth2 口的数据流量都是被放大无数倍, 我重启路由然后就打开测速网页测两次, wan 口显示流量大概是几百兆, eth1 和 eth2 都是已经到了 10G+的状态, 为了家庭和谐, 先暂时改成了单线单拨, 回头再仔细研究一下到底问题是什么...

@swiftg 你的这个设置跟我之前曾经尝试的是一样的, 我唯一没做的就是指定 mac 地址, 但按理说这个不影响测速才对, 感觉还是没有找到主因是什么
lcy630409
2022-09-06 21:50:55 +08:00
@flowdesign
大概率是你的光猫没有到位,导致了环路 网络风暴了
最好用原版固件,不要自己补全
malash
2022-09-06 23:36:47 +08:00
原版固件没有问题,检查一下光猫的设置——LAN 配置——二 /三层口配置,确保所有口都勾选上了了。以及检查一下 WAN 配置里不需要绑定任何接口

https://user-images.githubusercontent.com/1812118/188676529-1732df36-c0c3-483e-a2ae-a6adffe19e34.png
yujincheng08
2022-09-07 11:38:46 +08:00
mode0 的 bond 需要对端交换机兼容的,这个光猫支持设置 mode0 的 bond 的吗?
flowdesign
2022-09-07 13:58:06 +08:00
@lcy630409 我也觉得是环路风暴了, 关键就是产生的原因是什么? 通过 luci 增加的 bonding 口和我通过 rc.local 增加的 bonding 口是两次操作的唯一区别, 通过 luci 来增加的会写入到 etc/network 里面, 但是 rc.local 的就不会, 对 OP 没那么深入的了解, 还要花点时间研究一下才行, OP 固件本身的原因我觉得不太大, bonding 本身需要的插件也都是需要手工安装的
@malash 多谢提醒, 没记错之前我把桥接 wan 口绑定了所有的 lan 口, 回头去解绑了试试看
@yujincheng08 必须啊, 除非我被各处传播的信息给骗了, 我获取的信息特别指明华为带 Q 的光猫路由器都支持 balance rr 模式的, 8546Q 属于性价比比较高的一款
lcy630409
2022-09-07 14:51:08 +08:00
@flowdesign
我买的 hn8145q 电信 epon
openwrt 和 ikuai 可以叠加

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

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

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

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

© 2021 V2EX