本帖最后由 张小牛 于 2022-4-17 11:19 编辑
E$ Z- [# u7 U/ D+ k8 q6 ~/ L7 T2 ?, e& V- j1 i6 z* |
以前用NAS跑openwrt容器拨号IPTV,udpxy代理看直播。NAS有两个问题,一是启动太慢了,开机或者重启等容器起来大概要10分钟的样子;另外就是openwrt容器启停会消耗pts/pty资源不释放,导致主机连不上ssh/telnet,然后容器也起不来(我不知道为什么)。所以既然这款光猫那么强大,能不能用光猫代替它,最近有点时间折腾了,就开始实施自己的想法。! x0 I2 {, E7 ~! A5 G
- b0 R0 h9 Q4 ?首先要知道自己的ITV运营商拨号的机制,四川电信认证比较简单,就是MAC地址+Vendor ID。所以,第一步就是改iptv接口的MAC地址。华为光猫MAC地址似乎都在/mnt/jffs2目录下hw_boardinfo和hw_boardinfo.bak里定义,两个文件是一模一样的。telnet到光猫查得ppp拨号的wan4编号为ojb.id = ”0x0000000f“,那么它的上一条IPTV的wan3就是obj.id = "0x0000000e"。这一行MAC地址,改成电信机顶盒的即可,如下:* k+ {# O$ y6 ?. r' T- |
( s; A/ {: H8 A. [2 p' y0 |
obj.id = "0x0000000c" ; obj.value = "5C:XX:XX:XX:XX:XX"; wan1, tr0693 j* ], S. H8 h$ p$ T
obj.id = "0x0000000d" ; obj.value = "5C:XX:XX:XX:XX:XX"; wan2, voip6 ~1 T' }. f- B- w+ N' f4 e6 a8 ^
obj.id = "0x0000000e" ; obj.value = "9C:YY:YY:YY:YY:YY"; wan3 iptv,这里修改成电信机顶盒MAC% Y$ t g+ b8 F4 J: p
obj.id = "0x0000000f" ; obj.value = "5C:XX:XX:XX:XX:XX"; wan4, internet
. w, Z G6 U9 Y1 Y; t8 l& B3 u- s
- H, h5 \ Q2 k- H$ Q4 o; yhw_boardinfo用HW Dollar2打开自动解密,改完后按“保存”,自动加密。HW Dollar2工具见附件。将修改后的hw_boardinfo传至光猫/mnt/jffs2/,并复制为一份hw_boardinfo.bak,这样主、备两个文件就一致了。覆盖原文件之前,切记备份一下,并记住原文件的所有者、组和权限,新文件要保持所有者、组和权限和原文件一致,否则光猫容易变砖。
! d( m; Y+ y0 R7 F& p' ?9 J+ i1 | `1 h" |9 L6 v7 T
下一步配置光猫IGMP,见图1,IGMP snooping和IGMP proxy都要打开,后者不开,IPTV不通;前者不开,会产生广播风暴。) m( d5 {. T: d7 X, q' Q
8 ]- _ `! {! c6 u: a2 L再下一步配置路由模式的IPTV网络连接,如图2。这一步需要进华为界面,将原来PPPoE封装、桥接模式的IPTV业务删掉,新配一条IPoE封装、路由模式、仅支持IPv4、VLAN ID、地址获取方式DHCP、使能NAT、厂商标识(Vendor ID)、组播VLAN,然后按”应用“就大功告成了。之后,在状态页面查询网络侧信息可以看到IPTV连接状态为“已连接”,并且获取到了IP地址和网关、DNS,见图3。如果原来是电信界面,在第一步改MAC的时候同时修改hw_boardinfo,切换成华为界面。怎么切换华为模式,网上教程很多,这里不再重复。6 J" q& j; c8 U2 F% ^! U4 L/ u
) s1 W4 g- z( ~ `3 b# m2 x/ N
最后,电脑PotPlayer播放器填上以rtp开头组播源地址,比如成都电信的中央一台组播地址rtp://239.93.0.69:5140,就可以看电视啦。智能电视app我用IPTV Pro,好像更多的同学用TiViMate(我没用过),安卓手机同上;iphone我用zFuse收费版,非常不错。以上软件都可以导入m3u播放列表。当然,无线连接不要直接看组播,wifi延时和突发都比有线网络大很多,会卡和花屏,还是要在wifi路由器(ap网桥模式即可,不需要路由模式)上跑一个udpxy转成单播。路由器要求不高,100块以下、能刷op跑udpxy的都能胜任。附一个成都电信的组播源。wifi路由器记得开IGMP snooping,见图4.
, n& O+ D" F- s. N$ I, c; g- q
最开始想在光猫上跑udpxy,这样组网组最简单。后来发现不行,有线设备就直接播放组播了。华为这光猫跟一般路由器不一样,tcpdump在wan口和lan口上都抓不到IGMP报文,它的IGMP协议和组播数据报文好像都是通过硬件转发,不走CPU。) j6 n, R% i4 W9 y! N8 B
9 Z m6 E7 D8 h2 a X
|