找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 133597|回复: 187

IPTV融合进普通网络一般步骤

 火... [复制链接]
发表于 2017-8-2 20:33 | 显示全部楼层 |阅读模式
本帖最后由 鲲翔 于 2017-12-30 00:00 编辑

IPTV融合进普通网络一般步骤



梅林和Padavan的设置看这里:
https://www.right.com.cn/forum/thread-250969-2-1.html








本文为这段时间我在论坛上的一些讨论的总结,不一定对,但大概流程是清楚了,看完后希望对你有帮助。文中所用到的软件有:
Wireshark2.4),winscpputtypotplayermxplayer(android)Notepad++
路由器(lede)所需的软件有:
  1. opkg update
  2. opkg install kmod-macvlan kmod-8021q kmod-bridge igmpproxy udpxy tcpdump luci-app-udpxy
复制代码

本文大体分两部分
一.直播地址获取
二.直播环境搭建
下面开始第一部分,直播源地址的获取。一般我们是通过抓包,不过抓包之前建议先搜索一下,或许有先行的前辈帮你抓好了,有现成的可以直接看第二部站。如果没有,我们就得自己抓包了。只要有lede路由器就可以抓包,在路由器上安装tcpdump可以让路由器成为一个抓包神器。想抓到IPTV的包,需要让IPTV的包能通过路由器。最简单的方法就是让路由的WAN口和接IPTVlan口桥接,具体的做法为接接IPTVlan口设为不关联,不关联就是桥接,如图:
这时开启你的机顶盒,应该可以正常的直播点播。好,先关掉机顶盒,然后用putty连上路由器,输入以下命令:
tcpdump -i any -w /tmp/xxx.cap
这条命令的意思是说,抓所有的包并存到/tmp文件夹下,以XXX(替换成你喜欢的)命名。好了,机顶盒开机,等出现选择频道界面时在putty下按Ctrl+C。用winscp登陆到路由器,在/tmp文件夹下找到刚才的抓包文件。这时要请出另一个软件wireshark来了,用wireshark打开抓包文件,按Ctrl+F,选择字串符,分组字节流。输入get channellist回车。协议那里选http过滤一下,一般第一个post get channellist的应答就是了。
这时在应答这一条的line-based text data里点右键,选择显洁净分组字节。显示为那里选utf8
这是一个样本。
取得频道列表后就要整理了,这时要请出牛B工具notepad++了,它支持正规则表达式。正规则表达式是wolong_gl教我入门的,谢谢了。
如果你的频道列表是和这个一样的,可以试试这个表达式:
查找内容那里为:
<script>.+?ChannelName=\"(.+?)\" ,ChannelURL=\".+?://(.+?)\".+?</script>
替换为:
#EXTINF:-1, \1\n rtp://\2\n
勾选匹配新行,全部替换吧。
好了,到此抓直播地址部分就结束了。如果你土豪或者路由器里支持端口镜像,抓包可以更容易些,可以不用tcpdump,可以直接用wireshark抓包。拓朴如下:



第二部分,直播环境搭建。
其实一开始已将直播所需要的软件装好了,现在只要配置好它就行了。这时我们需要将一开始的vlan设置还原回原来的,不要将IPTVWAN桥接在一起了。这时需要创建一个虚拟WAN口用来IPTV网络的拔号,然后通过MWAN指定IPTV走这个端口出去。创建虚拟接口最好用syncdial,自动创建,如果通过手动创建的话,需要注意在etc/config/network里加上
  1. config device 'macvlandev_macvlan1'
  2.          optionname 'macvlan1'
  3.          optionifname 'eth0.2'  \调整成自己的wan口
  4.          optiontype 'macvlan'

  5. config interface 'vwan1'
  6.          optionproto 'pppoe'
  7.          optionmetric '41'
  8.          optionipv6 'auto'
  9.          optionifname 'macvlan1'
  10.          optionbridge 'false'
  11.          optionusername **********999@itv'
  12.          optionpassword '******'
复制代码

这时建好的虚拟wan口应该拔通取得IP了,下面我们要配置好igmpproxy,让连接在路由器后面的机顶盒能够直播和点播,打开/etc/config/igmpproxy。里面的配置示例:
  1. config igmpproxy
  2.        option quickleave 1

  3. config phyint
  4.        option network vwan1   \这个为虚拟wan口,取得IPTV网络地址的接口,在这里指定组播从这个接口出去
  5.        option direction upstream
  6.        list altnet 115.153.239.0/24  \这个为组播服务器地址,不是组播地址,用0.0.0.0/0也行

  7. config phyint
  8.        option network lan
  9.        option direction downstream
复制代码
然后在/etc/config/network的lan下面增加

  1. option igmp_snooping ‘1’
复制代码
接下来配置防火墙/etc/config/firewall

在后面添加

  1. config rule
  2.         option src      wan
  3.         option proto    igmp
  4.         option target   ACCEPT
  5. config rule
  6.         option src      wan
  7.         option proto    udp
  8.         option dest     lan
  9.         option dest_ip  224.0.0.0/4
  10.         option target   ACCEPT
  11. config rule
  12.         option src      wan
  13.         option proto    udp
  14.         option dest_ip  224.0.0.0/4
  15.         option target   ACCEPT
复制代码



保存好后重启igmpproxy,这时用有线连接路由器。用potplayer打开组播地址应该能正常收看电视了,机顶盒应该也能正常收看了。
好了,下面配置udpxywifi收看电视节目作准备,这里最主要的是要指定Source IP,因为IPTV的地址经常变,所以这里指定端口就行了。这里指定了,IPTV的流量都是从IPTV那个接口出去的。
这个设好后要重启一下udpxy,然后进http://192.168.1.1:8888/status里看看Multicast address地址正不正确,显示为iptv的地址才是正确的,没有显示就要再设Source IP,直接显示为止。这里不正确是不可能放得出节目的。


启动udpxy后要将地址转换一下,比如原来的组播地址为:rtp://239.252.219.46:5140
现在变成了http://192.168.1.1:8888/rtp/239.252.219.46:5140。安卓手机上用mxplayer或VLC可以播放出来。

下面再来设置一下xupnpd,这个主要给手机或者盒子提供播放列表。有这个后不要每次有新设置都得整一次列表,不过电视盒子的话还是建议用hdp的自定义列表,那个体验更好。xupnpd安装好后默认一个端口号:4044,也就是你的路由器地址:4044。这个就更新什么设置了,直接将整理好的播放列表传上去就行了。


保存后在VLC的“本地网络”里就能看到了,如果出现乱码请将列表设为UFT-8的编码。还一个播放器挺好用,splayer。这个换台不用退出,可以直接换。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

IPTV融合进普通网络一般步骤里 标注的梅林和pandavan设置里没有梅林的设置啊,下面这个怎么解决? http://www.right.com.cn/forum/thread-313707-1-1.html  发表于 2018-4-7 22:07
楼主厉害,不过建个qq群方便交流更好了,还可以分享直播源  发表于 2017-8-12 10:35

评分

参与人数 5恩山币 +5 收起 理由
a2005*** + 1 我对你的敬仰犹如江水滔滔,我上朝鲜战场后一定写信给你!!!
pot*** + 1 我来恩山就是为了撩你!
zxyz*** + 1 建立群了没啊。用wifi播放高清的确实卡,楼主解决了没?
tim*** + 1 佩服! 建个群交流下吧!
wolo*** + 1 亲,你这么厉害,我想做你的经纪人!

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2017-8-9 17:19 | 显示全部楼层
抓好包就两个地址,一个本地地址,另一个就是服务器地址。把它转换成cdr格式就行

点评

不明白115.153.239.0/24是怎么来的,我看了你的图,没找到这个地址  详情 回复 发表于 2017-8-9 20:21
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-8-9 21:07 来自手机 | 显示全部楼层
那你不用纠结了,用5个0也能用。

点评

……………  详情 回复 发表于 2017-8-13 12:20
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-8-15 07:16 来自手机 | 显示全部楼层
谁说不支持双wan,我就相当于双wan啊。重点是指定出口这里很关键,多试试。

点评

楼主有qq吗,我抓出来的组播地址一直播放不了,能帮我看下吗  发表于 2017-8-17 12:32
你没看清,我说的是Hiboy大的padavan固件不支持双网。openwrt当然是支持双wan的。  详情 回复 发表于 2017-8-15 13:31
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-8-19 11:50 来自手机 | 显示全部楼层
跟防火墙没没关系,上下行不能同一个接口。

点评

我设置的上下行接口是不同的, 网络情况如下: wan口是eth1,dhcp获取上级路由内网ip :192.168.2.152 ,通过此接口上外网; vwan1口是eth1.2,用于iptv pppoe拨号获取电信内网ip :10.xxx.xxx.xx, 此接口上ipt  详情 回复 发表于 2017-8-19 15:05
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-8-19 12:56 来自手机 | 显示全部楼层
应该是用外网播放了,igmpproxy没配置好。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-8-20 17:35 | 显示全部楼层
这我还真不知道,你要怀疑是防火墙问题,就先把它关掉再试试呗
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-10-25 15:23 | 显示全部楼层
你把抓好的包传上来,很多人会提取的
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2017-11-9 17:22 来自手机 | 显示全部楼层
可以啊,你照这个帖子设置完了有问题再问。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-25 21:48

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表