分享

Openwrt与IPTV之一

 混鱼摸水 2017-09-23

装了IPTV,设备是一个cable modem和一个IPTV STB. 前者把HFC变成普通的以太网,后者负责解码和播放。

本着有RJ45的设备,都插电脑抓抓包的习惯,发现直播是基于组播的,协议用的是RTP。

全能播放器VLC出马,输入对应地址,果然在电脑可以播放。

更有趣的是,收费台的鉴权是在机顶盒完成的,用电脑直接访问地址的话,播放毫无压力。

于是,一个通过openwrt+igmpproxy+udpxy+xupnpd+dlna的方案被研究出来,实现了原机顶盒不受影响,电视通过DLNA功能也能看包括收费台的全部节目,电脑通过内网,还能看运营商提供的网络直播和回看,基本实现了电视剧和球赛兼得。

先说说igmpproxy,顾名思义实现igmpproxy协议的代理~

这个软件在openwrt官方源是有的,直接安装即可,但配置上比较讲究。

配置文件在/etc/config/igmpproxy

复制代码
config igmpproxy option quickleave 1//使能quickleaveconfig phyint option network eth0.1//上行端口,也就是路由要连接modem,具体数字因人而异 option direction upstream//配置为上行端口 list altnet 192.168.56.0/24//允许的地址。这个地址要通过wireshark抓包查看。这个地方不是写组播地址,而是组播服务器的地址。config phyint option network br-lan//下行端口的名称,这里我在vlan分配了两个物理端口,并配成桥连。 option direction downstream//配置为下行端口
复制代码

自此igmpproxy就配完了,条目不多,但每个都要搞清楚。

下面是对应的防火墙配置

复制代码
//允许IGMP数据包入站config rule option target 'ACCEPT' option src 'wan' option name 'Allow-IGMP' option proto 'IGMP'
复制代码
复制代码
//允许udp数据入站config rule option target 'ACCEPT' option src 'wan' option proto 'udp' option name 'Allow-UDP-igmpproxy' option family 'ipv4' option dest 'lan' option dest_ip '224.0.0.0/4'
复制代码

防火墙除了目标区域和组播地址,不清楚功能的情况下,尽量不要改动别的参数,这里的目标地址以及包括了全部组播地址。

完成配置后,路由器应该能串联在modem和机顶盒之间,机顶盒的功能不受任何影响。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多