价值 50 元的重庆电信 IPTV 多设备观看方法
tags: IPTV价值 50 元的重庆电信 IPTV 多设备观看方法
苦运营商 IPTV 机顶盒久矣,无法令人满意的画质、繁琐的接线、多一把遥控器、不支持 CEC 并且干扰电视机 CEC 正常功能等等……让我早就有了做一下 IPTV 组播的想法,但是网上教程繁多且复杂,每个省份、每个运营商的配置方法都各不相同,让我多次折腾的想法胎死腹中。
3 月 31 日更新一波,如何使用 OpenWRT + rtp2http 来观看直播
基本情况
在进行 IPTV 组播改造之前,我家的互联网为桥接模式,IPTV 机顶盒也是桥接模式,这与大多数网友的机顶盒默认 DHCP 模式有所不同,也导致在折腾的路上踩了不少坑。


而路由器我使用的是爱快 Q3000 拨号 + 中兴路由器做无线 AP 的方法,因此配置重点是在爱快主路由上。

光猫配置
我这里的光猫仅绑定了 LAN1,首先在网络连接中取消 INTERNET 接口对所有接口的绑定。
网口 2(iTV) 为 IPTV 网络接口,我这里也是桥接,不用动,保持 IPTV 对网口 2 的绑定
然后在 VLAN 绑定中添加网口 1 的 VLAN 绑定,对于我这儿的实际情况,221、2156 分别是互联网和 IPTV 的 VLAN,这两个 VLAN 是用来拨号的。
根据闲鱼的指导,2156 这个 VLAN 可配可不配,这个是用来配置路由器拨号 IPTV 线路的,在实际应用中只是用作单播、回放,并不影响组播。
此外,还需要手动添加一个 IPTV 接口的 VLAN 来配置静态地址,我这里配置了 50,可自选。

我这里把三条VLAN都配上了,点击保存即可,到此光猫配置完成。
PS:可以去光猫的“应用”-“IGMP”里看看相关选项是不是都打开了。
抓包 IPTV 直播源
不想自己抓包的,直接去这里下载就行,IPTV直播源相关资源汇总,pages.dev 已经被墙,需要自行解决,到目前为止,我抓取的源地址与它提供的完全一致。
很多人应该都是在这里被劝退的,但其实没有那么难,不需要买抓包工具,不需要拆路由器抓包,有 wireshark 和一个 usb 网卡即可。
抓包设备自选,具体的抓包过程看视频:# 组播转单播系列第一期:wireshark 抓取 IPTV 直播源,不用买他用的那个设备,有个 usb 网卡就行了。总结流程如下:
抓取数据源:基本方法就是在网络适配器中桥接 usb 网卡和电脑自带网卡,wireshark 抓包这个网桥或者连接 IPTV 机顶盒的网口即可。
筛选数据源:粗过滤“http”,再细过滤“IGMP”,找到某个 HTTP 协议的 (text/html) 包,导出这个包即可。
解析数据源:IPTV 抓包数据解析,pages.dev 已经被墙,需要自行解决。
最终应该提取出类似这样的结果:
CCTV1 综合高清,rtp://235.254.198.51:1480
CCTV2 财经高清,rtp://235.254.198.52:1484
CCTV3 综艺高清,rtp://235.254.198.53:1488
或者 m3u 格式:
#EXTM3U x-tvg-url="https://epg.v1.mk/fy.xml"
#EXTINF:-1,tvg-id="CCTV1" tvg-name="CCTV1综合高清" tvg-logo="https://epg.v1.mk/logo/CCTV1%E7%BB%BC%E5%90%88%E9%AB%98%E6%B8%85.png" group-title="IPTV",CCTV1综合高清
rtp://235.254.198.51:1480
#EXTINF:-1,tvg-id="CCTV2" tvg-name="CCTV2财经高清" tvg-logo="https://epg.v1.mk/logo/CCTV2%E8%B4%A2%E7%BB%8F%E9%AB%98%E6%B8%85.png" group-title="IPTV",CCTV2财经高清
rtp://235.254.198.52:1484
#EXTINF:-1,tvg-id="CCTV3" tvg-name="CCTV3综艺高清" tvg-logo="https://epg.v1.mk/logo/CCTV3%E7%BB%BC%E8%89%BA%E9%AB%98%E6%B8%85.png" group-title="IPTV",CCTV3综艺高清
rtp://235.254.198.53:1488
爱快路由器配置
我使用爱快路由器,配置起来相对简单,不过可能配置太低,播放还是有几秒延迟。
拨号配置

VLAN 2156 可以正常拨号,但没啥用,使用这个接口是看不了直播的,我也是在这里被坑了很久。因此,我停用了这个拨号接口。
在静态 IP 这里添加一个 VLAN 50 的静态 IP,IP 地址可以设高一点,避免冲突,由于我的光猫没开 DHCP,所以没有影响。
IGMP 代理与 UDPxy


注意信号源接口选择静态 IP 的那个接口即可,IGMP 可开可不开,用处不大。

能进入 udpxy 界面即可。
OpenWRT/ImmortalWRT 路由器配置
基本原理是完全一致的,还是通过 VLAN 进行单线复用,但我们使用更先进的 rtp2http 进行组播转单播。
拨号配置
将 wan 接口的设备改为 eth0.221 的用于外网拨号。

其他配置与常规拨号配置相同。
啰嗦一句,OpenWRT 拨号一定要注意一下两个选项,非常重要。大陆运营商很可能不会及时回复 LCP 回声导致 OpenWRT 误判掉线,一定要把相应间隔和故障阈值增加。

不懂的话就按我的配,没掉过线。数字再加大一些都没事。
新建一个 eth0.50 的 wan_itv 接口,在“接口”页面更改其mac地址,要与eth0.221不同,非则拨号会不稳定。设置静态 IP,要求与光猫在同一个网段


然后配置 wan_itv 接口的防火墙区域,放行所有——入站、出站、转发

涵盖的网络选择 wan_itv
rtp2http
在 OpenWRT 上部署:rtp2http 安装方式
配置上游接口:

(可选)修改默认端口兵启用 rtp2http

直播源
测试
在局域网中打开 potplayer 或者 vlc,播放整理出来的地址,示例:
节目名称:http://路由器ip:udpxy端口/rtp/节目地址
CCTV1综合高清:http://10.0.0.1:11111/rtp/235.254.198.51:1480

整理直播源
在前面我们已经下载好了 m3u 格式的直播源文件,仅需替换一下播放链接为单播即可:
#EXTM3U x-tvg-url="https://epg.v1.mk/fy.xml"
#EXTINF:-1,tvg-id="CCTV1" tvg-name="CCTV1综合高清" tvg-logo="https://epg.v1.mk/logo/CCTV1%E7%BB%BC%E5%90%88%E9%AB%98%E6%B8%85.png" group-title="IPTV",CCTV1综合高清
rtp://235.254.198.51:1480
#EXTINF:-1,tvg-id="CCTV2" tvg-name="CCTV2财经高清" tvg-logo="https://epg.v1.mk/logo/CCTV2%E8%B4%A2%E7%BB%8F%E9%AB%98%E6%B8%85.png" group-title="IPTV",CCTV2财经高清
rtp://235.254.198.52:1484
#EXTINF:-1,tvg-id="CCTV3" tvg-name="CCTV3综艺高清" tvg-logo="https://epg.v1.mk/logo/CCTV3%E7%BB%BC%E8%89%BA%E9%AB%98%E6%B8%85.png" group-title="IPTV",CCTV3综艺高清
rtp://235.254.198.53:1488
批量替换 rtp:/ 为 http://路由器ip:udpxy端口/rtp 即可。
#EXTM3U x-tvg-url="https://epg.v1.mk/fy.xml"
#EXTINF:-1,tvg-id="CCTV1" tvg-name="CCTV1综合高清" tvg-logo="https://epg.v1.mk/logo/CCTV1%E7%BB%BC%E5%90%88%E9%AB%98%E6%B8%85.png" group-title="IPTV",CCTV1综合高清
http://10.0.0.1:11111/rtp/235.254.198.51:1480
#EXTINF:-1,tvg-id="CCTV2" tvg-name="CCTV2财经高清" tvg-logo="https://epg.v1.mk/logo/CCTV2%E8%B4%A2%E7%BB%8F%E9%AB%98%E6%B8%85.png" group-title="IPTV",CCTV2财经高清
http://10.0.0.1:11111/rtp/235.254.198.52:1484
#EXTINF:-1,tvg-id="CCTV3" tvg-name="CCTV3综艺高清" tvg-logo="https://epg.v1.mk/logo/CCTV3%E7%BB%BC%E8%89%BA%E9%AB%98%E6%B8%85.png" group-title="IPTV",CCTV3综艺高清
http://10.0.0.1:11111/rtp/235.254.198.53:1488
将这个直播源导入 potplayer 中测试,能够正确播放即可。
对于 rtp2http 方案,可以把直播源订阅链接导入插件配置页面,在网页播放器中观看。


外网观看直播
如果一定要用家里的线路,这里说几种可行的方案。
- 直链播放:反向代理单播源地址,也就是将 m3u 文件中的
http://10.0.0.1:11111/更换为反向代理的地址,然后在外网设备的 PotPlayer 导入这个新的 m3u 文件就可以了。以 Caddy 为例,配置如下
itv.example.com {
reverse_proxy 10.0.0.1:11111
}
- 媒体服务器播放:如果有 Emby,可以在 Emby 中添加 m3u 文件,在外网使用 Emby 观看直播即可。也就是说 Emby 起到了反向代理的作用。可以导入一个指南源并手动映射一下常用台。

Emby 直播会产生大量缓存,对硬盘不友好,不知道是 Emby 的 Bug 还是特性……所以我没用这种策略
-
虚拟局域网回家观看:可以自行搭建 OpenVPN,Easytier 等异地组网服务直接连回家观看,现在家庭宽带都有 IPv6,p2p 连接,观看效果很好。
-
(仅 rtp2http):如果你反向代理了 rtp2http 的 player 页面,那你可以直接访问该页面从网页端观看直播,不用再安装 APP。