小白的IPTV折腾教程(2)---使用0元抓包神器一次性简单抓湖北电信包

按我上一节制作神器的原理图(https://wp.gxnas.com/1182.html)接好我们的抓包神器,电脑的网卡获取ip的模式随便。IPTV盒子原来的认证原来是什么模式现在就还是什么模式。是pppoe认证的还是pppoe,是dhcp的还是用dhcp,不做任何改动。

0、最新研究的简单办法,如果不行再用后面的方法


a、使用抓包神器D头连接电脑网卡
b、启动wireshark,选择需要侦听的本地连接网卡,启动iptv盒子的电源。此时wireshark的数据区从空白开始变的有数据不停的冒出来。等到电视中进入了iptv的直播界面,通过遥控器进入iptv的设置,在网络设置里面查看当前iptv获取到的ip,比如我的就是10.236.63.200的ip。关闭iptv盒子的电源。此时wireshark的数据区停止冒出新数据。
c、我们在wireshark的顶栏第一行,表达式过滤器栏中,输入ip.dst eq 10.236.63.200 and http回车。wireshark就把所有目的ip是我的iptv盒子的http包都列出来。





如果你没有显示出来,那么可能你插的C头抓包,换另外一个头再重复上面的动作。一定要dst这一列能看到你的iptv盒子的ip才行
d、Crtl+F调出搜索栏,在前面选择 分组字节流 窄(UTF-8/ASCII) 字符串,再到搜索框里面输入 jsSetConfig ,点查找
e、会自动定位到搜索到的这一栏,我们在这一行上面点右键,选择 追踪流->http流,会弹出一个新的对话框
f、在新对话框里面的最下面搜索框里面填入 239.  查找,你就会看到系统定位到了igmp://239.XXX.XXX.XXX:XXXX的地址,这里我们就看到了列表地址了





g、关于频道列表中文名称的处理,如果是乱码。尝试在这个对话框下面把ASCII换成UTF-8,如果还是乱码,说明传输的是GBK编码,那就要用关于GBK编码的汉字处理方法,链接https://wp.gxnas.com/1196.html
h、请使用notepad++由正则匹配筛选,勾选匹配,得到m3u格式的地址列表。


查找内容那里为:
+?ChannelName=\"(.+?)\",ChannelURL=\".+?://(.+?)\".+?
替换为:
#EXTINF:-1, \1\nrtp://\2\n


保存为m3u格式,就可以在用vlc直接播放了。
这个地方有个坑,我的notepad++复制上面的规则没法用,研究了半天发现是复制过去的\这个符号要删掉重新打,估计是复制过来,带了网页的格式。晕死了。


i、如果要在用友窝直播,这个格式是不行的。使用以下规则


查找内容那里为:
+?ChannelName=\"(.+?)\",ChannelURL=\".+?://(.+?)\".+?
替换为:
\1,rtp://\2\n


保存为UTF-8的txt文件,存到你的智能电视/安卓盒子的文件里面,就可以正常观看了。


====================================华丽的分割线==================================

1、启动wireshark,选择需要侦听的本地连接网卡,启动iptv盒子的电源。此时wireshark的数据区从空白开始变的有数据不停的冒出来。等到电视中进入了iptv的直播界面即可关闭iptv盒子的电源。此时wireshark的数据区停止冒出新数据。

 

我们在wireshark的顶栏第一行,表达式过滤器栏中,输入http回车。wireshark就把所有的http包都列出来。
按Ctrl+F,搜索栏选择字符串,前面选择分组字节流。搜索框填写loadbalanced=1,点查找
亮条会定位到搜索到的那一行
 

 

你可以看到有2列ip,第一列源IP,即发起网络请求的一方,第二列目的IP,即请求发送到哪个服务器的IP。
你仔细看,如果你是pppoe拨号的IPTV盒子,一般都会被系统分配一个10开头的内网ip,
如果是dhcp的iptv盒子,一般都会被光猫分配一个192开头的内网ip。
我们记下这个121开头的服务器IP地址,后面有用。
 
这一条信息的意思就是10开头的IPTV盒子向121开头的服务器请求频道列表。121开头的服务器收到请求后会返回一个http的数据包给10开头的IPTV盒子。这个包就是直播源地址数据。
这个包在哪儿呢?他在另外一个方向的包里面。好,因为我的电脑是单网卡,所以一次只能抓一个方向的包,现在我们换D头连接,抓接收方向的包。

 

2、换线,抓包神器D头连接电脑网卡
wireshark关闭当前抓包,重新开始抓本地连接。数据区又变空白了。
启动iptv盒子的电源。此时wireshark的数据区从空白开始变的有数据不停的冒出来。等到电视中进入了iptv的直播界面即可关闭iptv盒子的电源。此时wireshark的数据区停止冒出新数据。
我们在wireshark的顶栏第一行,表达式过滤器栏中,输入http回车。wireshark就把所有的http包都列出来。
 

 

现在的源ip变成了远程服务器的IP,目的ip变成了IPTV盒子的IP了。
我们现在使用刚才记录的那个121服务器IP,找到第一次在源IP栏目中出现这个IP的这一行,info栏显示http 200 OK ,意思是说我响应了你上面我们记录那个IP的时候那个http请求,返回了频道列表给你了。

 

我们在这一行上面右键,选追踪流,http流,往下拖,很长,大概到中央位置。
如图显示频道列表的数据,右下角选utf-8,汉字就不会乱码,不过貌似我的传输过来是GBK编码,wireshark没法解码,所以中文频道还是乱码。
 

 

其中ChannelURL="igmp://239.252.219.64:5140",就是直播源地址。
请使用notepad++由正则匹配筛选,勾选匹配,得到地址列表。
查找内容那里为:
+?ChannelName=\"(.+?)\",ChannelURL=\".+?://(.+?)\".+?
替换为:
#EXTINF:-1, \1\nrtp://\2\n
 
这个地方有个坑,我的notepad++复制上面的规则没法用,研究了半天发现是复制过去的\这个符号要删掉重新打,估计是复制过来,带了网页的格式。晕死了。

 

3、人工完善组播源频道名字
关于GBK编码的汉字处理方法,链接https://wp.gxnas.com/1196.html
如果你搞不定,貌似只能人工一个台一个台的写名字了。

 

可以将这个列表保存好,拔掉抓包线,电脑直连光猫IPTV口,拨号或者DHCP后,用vlc打开这个列表,一个台一个台切换看着改

 

下节讲互联网跟iptv融合一线,地址https://wp.gxnas.com/1214.html
点赞

发表回复