联通光猫桥接 + 路由器 PPPoE 拨号 + IPTV 单线复用 保姆级配置指南(H80g + Q30Pro 实测)
写在前面:以下操作全部是我自己实测踩坑总结,方法可能因光猫型号、固件版本、运营商地区而异,请以自己设备的界面为准。
这是改完后的拓扑图:
1 | graph TB |
0. 背景:我家的破网络
改造前的情况(很典型的运营商宽带家庭网络):
- 联通光猫 H80g(吉比特无源光纤,就运营商送的那个盒子),放在入户门,光猫负责 PPPoE 拨号上网。
- 从光猫 LAN1 口拉了一根网线到电视机旁边,接联通的华为 TC5206 无线路由器。
- 华为路由器开启 DHCP(给局域网里的设备自动分配 IP),同时配置了 IPTV(VLAN 12,优先级 1,绑定路由器的 LAN3 口,机顶盒插这个口看电视)。
- 华为路由器的 LAN1 口接着一台 Windows 电脑。
痛点来了:
- 华为 TC5206 性能太差,转发效率贼低,wifi5居然跑不到100Mbps,还没法刷机,二手8¥!
rnm退钱 - 需求是全屋透明代理进行网络加速,所以购入一台 Q30Pro 无线路由器,让它来当主路由(拨号 + 代理 + DHCP 全家桶)。
- 电视旁边那台电脑没网线,我又没钱买无线网卡,后面还得为它专门再折腾一遍(后面细说)。
为什么必须改桥接?因为光猫性能太差!如果不改桥接,下面的步骤也可以做,我就顺手改了。
1. 小白必读:先搞懂这些名词
- 光猫(ONT/ONU):光纤入户后,把光信号转换成电信号的设备,运营商免费送的那个小盒子。它是家庭网络的”第一道门”。
- 桥接模式(Bridge):光猫只做”光电转换”,不拨号、不做 NAT、不分配 IP,把业务流量原样透传给后面的路由器。相当于光猫从”全能选手”变成”透明管道”。
- PPPoE:宽带拨号协议。以前的宽带都要在电脑上”拨号上网”,现在改到路由器上拨。运营商给你的那个”宽带账号 + 密码”就是拨号账密。
- LOID:光猫在运营商那边注册的”身份证号”。重置光猫或搞坏了之后,输入 LOID 就能让它重新注册、自动下发配置。相当于急救药,有了它翻车也能原地复活。
- 超级管理员(CUAdmin):光猫有两套账号。普通用户
user只能看不能改;CUAdmin是超级管理员,能改 WAN 连接、VLAN 绑定这些关键配置。我们就是要去搞这个超密。 - VLAN / 802.1Q:一种给数据帧”贴标签”的技术。同一根网线里可以同时跑多种业务,靠标签区分。比如标签 10 是上网,标签 12 是 IPTV。
- VLAN 改写:把这条业务的 VLAN 标签固定/改写为指定编号。光猫里把上网改成 VLAN 10、IPTV 改成 VLAN 12,路由器就能按标签认路。
- 组播(Multicast)/ IGMP / IGMP 嗅探(IGMP Snooping):IPTV 直播是”组播流”,一个人看和一百个人看,线路里只有一份数据。IGMP 是管理组播成员的协议;IGMP Snooping 是交换机”只把组播流发给有需要的端口”的功能,省带宽,但在我们的 IPTV 桥里开着容易出幺蛾子。
- 单线复用:只有一根物理网线,却要用它同时传”上网”和”IPTV”两路业务,靠 VLAN 标签把它们隔开。这就是本文的核心工程。
- 网桥(br-lan / br-iptv):把几个网口”焊”在一起,变成一个虚拟交换机。
br-lan管普通上网流量,br-iptv管 IPTV 流量。 - VLAN 子接口(如 lan3.12):在同一个物理口上,按 VLAN 标签拆出来的”逻辑接口”。带 12 标签的帧被它拦下来、剥掉标签再处理,不带标签的帧继续走物理口——一根线从此能干两件事。
- 透明代理 / OpenClash:透明代理让客户端完全无感,路由器直接把流量劫走送去加速。OpenClash 是 OpenWrt 系统上基于 Clash 内核的插件,Q30Pro 上跑的就是它。
- Telnet:一种远程登录协议,本质是进入光猫内部的 Linux 命令行系统。注意它默认端口是 23,且是明文传输,所以仅限在家用。
- 硬件加速(Flow Offloading / NSS 等):让数据包不走 CPU 软件转发、直接由硬件芯片直通的功能。省 CPU,但会”绕过”软件规则,组播、IGMP、OpenClash 这类流量都会被它搞出问题,所以要关。
2. 第一步:破解光猫,拿超管密码
前提:有一台能上网的 Windows 电脑(连接着华为路由器,和光猫在同一局域网)。
2.1 准备工作:打开 CMD
按 Win 键 → 输入 cmd → 回车,打开命令提示符。
小白提示:如果输入
telnet提示”不是内部或外部命令”,说明系统没装 Telnet 客户端。去 控制面板 → 程序 → 启用或关闭 Windows 功能,勾选 “Telnet 客户端”,点确定,装完再试。
2.2 方法 A:Telnet 进光猫解密配置文件(实测成功)
输入
telnet 192.168.1.1,回车(192.168.1.1是光猫的管理地址)。输入账号
admin,密码chzhdpl@246(这个账密仅可能是该型号光猫对应的,H80g 固件留的口子,其他型号别乱试)。登录成功后输入(sidbg 是这类光猫的调试命令,作用是把加密保存的配置文件解密导出):
1
sidbg 1 DB decry /userconfig/cfg/db_user_cfg.xml
输入
vi /tmp/debug-decry-cfg回车(vi 是 Linux 的文本编辑器,打开刚才解密出来的文件。这个文件超长,千万别手动翻页):1
vi /tmp/debug-decry-cfg
输入
/CUAdmin回车(vi 的搜索功能:/后跟关键字,回车开始向下搜索),光标会跳到 CUAdmin 附近,下面就是你的超密了。超管那一段格式基本长这样:1
2<DM name="User" val="CUAdmin"/>
<DM name="Pass" val="cuadmin53110631"/>
退出 vi:输入 :q 回车(冒号加 q 是 vi 的退出命令);退出 telnet:输入 exit。
2.3 方法 B:直接问宽带运维师傅(备选)
宽带报修,然后问运维师傅要超管账密。问就是自己想改桥接,一般都会给。
最好顺便问一下 LOID 账号密码是多少。
我这边的是 LOID 和 password:8416586059 / 5426。随机数,怪恶心的。
问 LOID 是为了什么?万一你不小心把光猫搞坏了上不了网、或者重置了光猫,可以通过输入 LOID 重新初始化光猫,它会自动配置回桥接模式。等于买了个保险。
2.4 顺手把拨号账密也挖出来(很重要!)
在 vi 打开的同一个文件里,找宽带拨号密码:找你当地区号开头的数字就行。比如我是西安的(区号 029),格式差不多是这样:
1 | <DM name="UserName" val="029044*****"/> |
我这边是:光猫 telnet admin / chzhdpl@246;超级用户 CUAdmin / cuadmin53110631;普通用户 user / c7g7d2mb;宽带拨号 029044***** / 1234567890;LOID 8416586059 / 5426。
为什么要拨号账密?因为桥接之后,拨号的活交给路由器,路由器上要输入这套账密才能上网。
3. 第二步:光猫改桥接
浏览器打开 192.168.1.1,用 管理员登录(账号 CUAdmin + 刚才挖出来的超密)。
点击 基础配置 → 上行线路配置 → WAN 连接配置。
在 WAN 连接列表的下拉框里选择 5_INTERNET_XXX 那一条(XXX 是各地运营商的标识,认准”INTERNET”字样即可)。
把连接模式从”路由”改成 桥接,保存。
为什么这么做? 路由模式 = 光猫自己拨号、自己 NAT、自己转发,运营商给的盒子 CPU 弱、内存小,干这些活又累又慢;桥接模式 = 光猫只当”光电转换器”,把流量原样透传出去,拨号、NAT、DHCP、透明代理全部交给后面性能更强的路由器。透明代理只有这样才能全屋生效。
然后路由器改成 PPPoE 模式,输入拨号账密,就可以正常使用了(桥接验证通过)。
不过,这还没完。
4. 第三步:换 Q30Pro + IPTV 单线复用
4.1 物理接线
- 把 Q30Pro 放在光猫旁边,用来覆盖全屋信号。
- 光猫 LAN1 → Q30Pro 的 WAN 口。
- Q30Pro 的 LAN3 口 → 原来通向电视柜的那根线,线另一头(电视柜端)直接接电视盒子(IPTV 机顶盒)。
4.2 光猫侧配置(H80g)
进入光猫超管后台,在 WAN 连接配置里:
- internet 那条:VLAN 10,勾选改写;组播 VLAN 不启用。
- iptv 那条:VLAN 12,勾选改写;组播 VLAN 10。
为什么? “改写”就是把这条业务在光猫侧的 VLAN 标签固定为指定编号(10 = 上网,12 = IPTV),这样后面的路由器能按标签认路。IPTV 的组播流单独规划在组播 VLAN 10 上,这是联通常见的组播方案:直播组播流和点播信令分开走。
然后进绑定设置:
LAN1,选基于 VLAN 绑定,写 12/12; 10/10。
为什么? 意思是 LAN1 口同时放行”VLAN 10”和”VLAN 12”两种标签的帧(业务 VLAN 和透传 VLAN 1:1)。这样从光猫到 Q30Pro 的一根线就同时承载了上网和 IPTV 两路流量——这就是单线复用的核心。
4.3 Q30Pro 侧配置(OpenWrt 系统)
路径说明:以下都在 OpenWrt 后台的 网络 → 接口 页面操作,页面顶部有 “接口” 和 “设备” 两个标签页,别找错。
① 设备页:建 VLAN 设备(上网口)
新建 VLAN 设备,接 WAN 口,VLAN ID 填 10,其余不改(会自动生成 wan.10 这个口)。
新建 br-lan 网桥,接入 lan1、lan2。
② 接口页:建 PPPoE 拨号
新建接口,协议选 PPPoE,接 wan.10,填入拨号账密,其余不变。
lan 接口不变(静态 IP 192.168.1.1)。
③ 设备页:建 VLAN 设备和 IPTV 网桥
新建 VLAN 设备,接 WAN 口,VLAN ID 填 12,其余不改(生成 wan.12)。
新建 br-iptv 网桥,连接 lan3 和 wan.12。
注意:不要开 IGMP 嗅探(IGMP Snooping)。
④ 接口页:建 IPTV 接口
新建接口 iptv,不配置协议(none),设备选 br-iptv。
为什么这套配置是这样? wan.10 把光猫那边带 10 标签的帧剥掉标签,PPPoE 在这个口上拨号上网;wan.12 把带 12 标签的 IPTV 帧剥掉标签,交给 br-iptv 这个”虚拟交换机”,机顶盒插在 LAN3 上就能看。IPTV 全程是纯二层桥接,不经过路由器的协议栈,所以路由器怎么折腾(代理、加速、防火墙)都碰不到它。IGMP 嗅探在这条桥上开着容易过滤错组播流,关了最稳。
4.4 IPTV 画面卡顿解决方案
若路由器有硬件加速功能(不同固件叫法不同:硬件加速 / Flow Offloading / NSS 等),全部尝试关闭。
为什么? 硬件加速让数据包绕过 CPU 软件栈直接硬件转发,省资源是省资源,但组播、IGMP、OpenClash 规则匹配这类”需要动脑子”的流量会被它处理出问题,直播就卡。全关了省心,性能换稳定。
5. 第四步:让电视旁边的电脑上网(终极缝合怪)
背景(吐槽):电视旁边那台 Windows 电脑还是没网——它没有无线网卡,而我又没钱买无线网卡。只能用笔记本电脑无线连接 Q30Pro,然后 SSH 进主路由器(或者 GUI 操作也行)继续改。
目标:Q30Pro 的 LAN3 一个物理口要干两件事:
- 不带标签的帧(普通上网流量)→ 直接进 br-lan(电脑上网走这条路);
- 带 VLAN 12 标签的帧(IPTV 流量)→ 被 lan3.12 子接口拦下、剥掉标签 → 进 br-iptv(机顶盒走这条路)。
操作步骤:
1. 把 LAN3 从 br-iptv 拆出来,加入 br-lan
修改 /etc/config/network:
1 | config interface 'lan' |
为什么? 先把 lan3 加进 br-lan,电脑的普通流量才能进来;同时把 lan3 从 br-iptv 里暂时拿掉,因为下一步要把它”一分为二”。
2. 在 LAN3 上创建 VLAN 12 子接口
添加新 device 段:
1 | config device |
为什么? 8021q 类型就是 VLAN 子接口。lan3.12 会把物理口上带 12 标签的帧截下来、剥掉标签再交出去;不带标签的帧不受影响,继续走物理口进 br-lan。一根线从此分成了”普通流量”和”IPTV”两条虚拟通道。
3. 把 lan3.12 加入 br-iptv
改回 iptv 接口:
1 | config interface 'iptv' |
4. 重启网络
1 | service network restart |
关键点:lan3.12 子接口会拦截 VLAN 12 帧,剥离标签后交给 br-iptv;untagged(不带标签)帧走物理口直接进 br-lan。两者在驱动层就分开了,互不干扰——这就是单线复用的真相。
5. 华为 TC5206 回接(用回电视柜那根线的另一端)
华为路由器 WAN 口 → 接电视旁边的网线(即 Q30Pro 的 LAN3 口)。
华为路由器 LAN2 → 接 Windows 电脑。
华为路由器 LAN4 → 接 IPTV 机顶盒。
华为路由器换成桥接模式(AP)(不然ipv6会炸)。
然后登陆华为路由器管理页(192.168.101.1),在IPVT设置中,将其改为桥接模式,VLAN id 12,802.1q(优先级)设置为0。记得绑定端口。
注意:原来华为路由器的 IPTV 是绑定在 LAN3 口的,现在机顶盒改插 LAN4,记得去华为路由器后台把 IPTV 绑定端口改成 LAN4,否则机顶盒那路流量打不上 VLAN 12 标签,电视会一直转圈。
6. 数据流走向
| 流量 | 路径 | 过 OpenClash? |
|---|---|---|
| 电脑上网 | 电脑 → 华为 LAN2 (untagged) → 华为 WAN → 路由器 LAN3 → br-lan → 路由/OpenClash → wan.10 → ONT | 是 |
| IPTV | 机顶盒 → 华为 LAN4 → 华为打 VLAN 12 tag → 华为 WAN → 路由器 LAN3 → lan3.12 (剥离 tag) → br-iptv → wan.12 → ONT | 否(纯 Layer 2 桥接) |
| 解读:上网流量走 Q30Pro 的协议栈,可以被 OpenClash 透明代理拦截加速;IPTV 流量从头到尾是二层桥接,Q30Pro 对它”视而不见”,所以代理、加速、防火墙怎么折腾,都不影响看电视。这也是后面”OpenClash 随便改都不怕”的根本原因。 |
7. 关于 OpenClash(透明代理)
需求就是全屋透明代理进行网络加速,所以 Q30Pro 上装了 OpenClash(OpenWrt 上基于 Clash 内核的代理插件,全屋设备无感走代理)。
配置方面:各配置默认就好;或者你自己想怎么改都行,都不会影响 IPTV。原因见上面的数据流——IPTV 是纯二层桥接,压根不经过路由器的协议栈和代理。
最后再提醒一遍:记得把硬件加速关掉(见 4.4),OpenClash 和硬件加速八字不合。
8. 总结与避坑
一句话流程:
破解光猫拿超密 → 光猫改桥接 → Q30Pro PPPoE 拨号 → 光猫 LAN1 双 VLAN(10/12)透传 → Q30Pro 建 wan.10 / wan.12 + br-iptv → LAN3 再拆出 lan3.12 子接口 → 华为路由器回接分线(LAN2 电脑 / LAN4 机顶盒)。
避坑清单:
- 动光猫前先记下 LOID(8416586059 / 5426),翻车了还能重新注册复活。
- 拨号账密(029044***** / 1234567890)桥接后要在路由器上填,别弄丢。
- IPTV 卡顿 → 把路由器硬件加速全关。
- 机顶盒换口后,华为路由器里的 IPTV 绑定端口要跟着改。
- lan3.12 子接口和物理口的分工是驱动层做好的,别在 GUI 里乱动 lan3 的 “PVID” 或 “tagged/untagged” 设置,改错了机顶盒和电脑会互相抢。
心得吐槽:整个过程最恶心的就是 LOID 那个随机数密码,怪恶心的;其次是”这还没完”式的连环折腾,改完桥接以为完事了,结果还要单线复用,单线复用以为完事了,结果电脑没网;最后是没钱买无线网卡,只能抱着笔记本蹲在路由器旁边 SSH。不过,折腾完那一刻,电视看着、电脑上着网、全屋还挂着代理,还是很爽的。
免责声明:不同地区、不同固件的光猫/路由器界面文字可能有差异,原理是一样的。动光猫有风险,先记 LOID 再动手。方法来自我自己的实测(参考了 H60G 破解方案的思路),祝大家一次成功。