使用软路由播放上海电信IPTV,完美去掉这个很丑的盒子

上一篇文章 《推荐两个IPTV相关的应用,实现频道和节目单统一管理》 提到我是如何在内网看IPTV的,看了几天发现换台真慢,有些源也都不能播放了,反正体验真的很差劲。所以想为何不直接播放电信的IPTV呢,虽然我盒子找不着了,但是线路还在啊。

遂google了一把,了解到运营商的IPTV是通过AB面来实现的,简单的讲就是不同的vlan。那如果我要实现播放运营商的IPTV,至少要获取另一个vlan的IP地址。网上介绍了好多方法,基本上都是要先改桥接……(死循环了,改不了桥桥桥……)

我的光猫是这样子的
不用我说,进去之后是啥样子?

所以我的思路是,如果光猫的lan口是融合的(既能接IPTV盒子,又能电脑上网),那就是说我只要在lan口这边的OpenWRT上开一个vlan能获取到IP就行了,所以我找来一台电脑,插在光猫后面的IPTV口上,看看能不能上网,结果IPTV口能直接上网,所以我推测LAN口应该也是可以播放IPTV的,可以试试,不行再改回来。我上网查了一下上海电信的VLAN id,试了一下85好像是可以的

首先在OpenWRT里 网络 -> 接口 里创建一个新的接口就叫IPTV85, 勾选桥接接口, 协议选择 DHCP客户端 , 物理接口选择定义,在里面填上 eth0.85 eth1.85 我的eth0是LAN口,eth1是wan口,我其实只是需要wan口能拿到IPTV网络的IP地址,其实这里只需要填eth1.85就好了。

再把跃点数改成20,如果不能正常上网了,那把wan的跃点数改成10,应该就好了

或者也可以直接修改 /etc/config/network

1config interface 'iptv85'
2        option type 'bridge'
3        option ifname 'eth0.85 eth1.85'
4        option _orig_ifname 'eth0.85 eth1.85'
5        option _orig_bridge 'true'
6        option proto 'dhcp'
7        option metric '20'

在 网络->防火墙里创业建一个iptv85,入站数据,出站数据,转发都接受

或者修改配置文件 /etc/config/firewall 增加

1config zone
2        option input 'ACCEPT'
3        option output 'ACCEPT'
4        option name 'iptv85'
5        option forward 'ACCEPT'
6        option network 'iptv85'

这个时候你去看网络接口iptv85应该已经获取到IP了

现在和电信IPTV的内网已经打通了,观看IPTV有两种方式:

  • 使用udpxy,这个时候你的播放器是连接到路由器,然后是由路由器来申请组播的,播放器访问的地址是路由器的udpxy。这样做的缺点就是切换频道有点慢,不过我试了一下还是可以接受的,也就看看CCTV。。。。
  • igmpproxy + snooping,是你播放器申请组播的,然后由路由器转发到iptv专网。广播直接到你的192.168.x.x的内网。这样做的缺点是播放的时候,全局广播,占用你内网的信道,我个人不太推荐。 所以我也就介绍一下第一种观看方式

在OpenWRT上安装luci-app-udpxy 和 udpxy

1root@OpenWrt:~/udpxy# ls -l
2-rw-r--r--    1 root     root          2182 Jun  8 19:44 luci-app-udpxy_git-22.138.16277-772b531-1_all.ipk
3-rw-r--r--    1 root     root         34995 Jun  8 19:44 udpxy_1.0-25.1-1_x86_64.ipk
4
5root@OpenWrt:~/udpxy# opkg install udpxy_1.0-25.1-1_x86_64.ipk luci-app-udpxy_git-22.138.16277-772b531-1_all.ipk 

打开服务->udpxy,如下填入, IP地址填入你自己的

在浏览器里输入 http://192.168.1.1:4022/status ,看到如下界面说明就OK了

刷一个CCTV1看看, 192.168.1.1 换成自己的

1http://192.168.1.1:4022/udp/239.45.3.145:5140

至于播放列表,去google一个上海电信的就好了 :) 这个八百年不怎么变的,自己抓包也是麻烦,所以google就好了

现在换台貌似快了一些