猫棒+可网管交换机+群晖实现组播转换,内外网全平台观看IPTV
前段时间把家里光猫换成了猫棒,加了一台兮克SKS7300-8GPY4XGS交换机,2.5G局域网是调试好了,详见上一篇分享,因为路由器是TP-LINK原厂的系统,没办法安装udpxy,所以IPTV一直没调,最近看到路由器官方已经支持刷入开源固件了,周末在家刷过去试了试,结果翻车了,无线信号严重不稳定,又回到了原厂系统的怀抱。但是又勾起了把IPTV调好的想法,前前后后折腾了一个多月,终于调好。于是记录下,大家如果有同样的网络环境可以参考,少走弯路。
另外抄作业的基础是你已经知道怎么抓包,怎么生成m3u文件,如果不会的话网上找教程看看,以下的内容主要还是特定网络环境的避坑指南,当然有任何问题也欢迎留言交流。
核心就是使用群晖的两个网口,docker安装msd_lite将IPTV的组播转到内网,然后内网所有的设备就都可以看IPTV了,也可以通过emby或公网IP+端口转发在外网观看。
网络结构是这样:

下面是一些关键点
首先是猫棒,网上很多教程,这里就不贴图了,配置好猫棒后记下上网和IPTV的VLAN ID,比如我的上网VLAN ID是101,IPTV VLAN ID是102,接下来配置交换机:
登陆到SKS7300-8GPY4XGS的web管理,在VLAN配置中,新建两个VLAN(注意VLAN ID要和设置猫棒时记录的一致):VLAN ID:101,名称:WAN;VLAN ID:102,名称:IPTV。

接下来在端口VLAN中将xe1链路类型设置为trunk,默认VLAN ID为101,配置VLAN ID为101-102;ge1链路类型不变(access),可接受的帧类型设置为vlan-untagged,VLAN ID设置为101;ge4链路类型不变(access),可接受的帧类型设置为vlan-untagged,VLAN ID设置为102。

如上设置后:xe1插猫棒,ge1连路由器WAN口正常拨号上网,ge4可接运营商机顶盒看IPTV,剩余端口既为LAN口,可接电脑,NAS等设备。
如果不需要内网看IPTV到这里就可以结束了。
需要内网看IPTV的同学继续往下看,接下来是群晖的配置。
群晖首先将网卡1接入交换机ge4,网卡2接入交换机ge5,网卡2设置自己局域网的一个固定IP比如我设置的是192.168.200.30,然后这里有两个办法设置网卡1:
第一种:把运营商送的机顶盒接到ge4打开后进入设置记录下获取到的IP信息,然后将群晖网卡1设置为静态地址,照着盒子里的IP信息填入。
第二种:网卡1设置为自动获取IP,再将它的MAC地址修改为机顶盒的MAC地址,SSH进入群晖:
先sudo -i 获取权限
然后使用ifconfig查看网口的名称

我这里是ovs_eth0,接下来用以下三条命令修改MAC地址
ifconfig ovs_eth0 down
ifconfig ovs_eth0 hw ether XX:XX:XX:XX:XX:XX #替换为你机顶盒的MAC地址,字母全部大写
ifconfig ovs_eth0 up
修改后应该就能看到网卡1自动获取到了IP地址。
接下顺手调下igmp版本,以及关闭反向路由验证(我的群晖应该本身就是关闭的,不过建议还是三条命令都输入一遍,以防万一)
输入(注意:ovs_eth0 替换为你自己查到的网口名称)
sysctl -w net.ipv4.conf.ovs_eth0.force_igmp_version=2
sysctl -w net.ipv4.conf.ovs_eth0.rp_filter=0
sysctl -w net.ipv4.conf.all.rp_filter=0
再输入, 保存生效
/sbin/sysctl -p
/sbin/sysctl -w net.ipv4.route.flush=1
接下来登陆到群晖打开Container Manager下载和运行msd_lite,它的功能和udpxy一样但性能更好。

下载过程中先准备一下config文件,在这里下载https://github.com/rozhuk-im/msd_lite/tree/master/conf,下载后在群晖里的docker目录新建msd_lite目录把文件放进去,并打开拉到最下面将下图红框的网卡名称改成你的网卡名称并保存

准备工作就绪后回到Container Manager运行刚刚下载的msd_lite,注意将/etc/msd_lite.conf映射到本地刚刚保存的msd_lite.conf文件,网络需要选择host,参考下图:

到这里配置工作就全部结束。对了,修改MAC的命令群晖重启后会失效,我的解决办法是把它设置为开机的计划任务。
接下来就是如何使用,首先抓包搞定直播源,拿到直播源后即可转换为以下格式进行播放,比如我的:
http://192.168.200.30:7088/rtp/239.11.0.65:5140
测试OK后,按照格式生成m3u文件,家里是苹果全家桶,所以用的是aptv这个软件,苹果全平台都有,下面是手机上的效果。Android的话使用TiviMate。也可以docker装个xteve让emby也能播放,还能定时录制。

好了就到这里,文中的文件如果下载不到可以留邮箱,然后文中是四川移动的IPTV,如果刚好有四川移动的同学需要m3u文件的也可以留邮箱。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

wintsa123
校验提示文案
wintsa123
校验提示文案
残梦无声
校验提示文案
值友6727557737
校验提示文案
大石碎裤裆
校验提示文案
不见白菜不撒鹰
校验提示文案
值友3909500034
校验提示文案
值友3909500034
校验提示文案
值友6727557737
校验提示文案
不见白菜不撒鹰
校验提示文案
大石碎裤裆
校验提示文案
残梦无声
校验提示文案
wintsa123
校验提示文案
wintsa123
校验提示文案