背景
随着智能电视的普及率越来越高,越来越多的厂家不想错失广告的红利,会厚颜无耻的在电视开机或者关机的时候植入广告。而且在默认的电视首页也会发布各种广告,尤其是最近我的电视的开机广告时间越来越长,声音越来越大,已经忍无可忍了。我决定屏蔽掉这些广告。
前置条件
- Android TV or TV Box
- 智能路由器 (以Merlin固件为例)
- 熟悉简单的Linux操作,我也会尽量的写得通俗一些
操作步骤
打开路由器的ssh登录
- 打开梅林路由器页面:http://192.168.50.1/
- 系统管理 - 系统设置 - 按照下图勾选相关选项
下载并安装tcpdump
1 | # 在本机下载tcpdump |
采集抓包数据
由于路由器平常的流量都比较大,所以我们只抓取电视的流量包
- 我们从路由器中页面中找到电视或者电视盒子的
IP
,并记录下来。 - 将电视或者盒子
彻底关闭
。
1 | # 在路由器执行,注意这里不要用重定向的方式记录 |
- 此时将电视
开机
,并静静等待几分钟
,期间不要做任何操作 - ctrl + c 停止采集数据
- 从本机将数据从路由器copy到自己机器上
1 | scp admin@192.168.50.1:~/tv.pcap . |
使用wireshark进行抓包分析
打开wireshare - 选择刚才下载的抓包数据打开 - 参照下图进行下面的步骤
- 在wireshare的搜索栏中过滤http请求
- 点击
每一条
交互信息 - 查看具体的访问的域名并记录,我们只记录域名即可,比如图中的
scs.openspeech.cn
使用路由器的进行过滤
方案一:使用防火墙过滤
- 打开梅林路由器页面:http://192.168.50.1
- 防火墙 - 网址过滤 - 启用
- 将刚才整理的网址列表一条一条的添加,如果你觉得某一个网站一级域名就想屏蔽也可以直接填写一级域名
方案二:使用koolshare - koolproxy软件屏蔽
- 打开梅林路由器页面:http://192.168.50.1
- 软件中心 - koolproxy - 自定义规则
重启路由器
重启路由器之后查看电视开机广告是否被屏蔽。
如果没有被屏蔽,建议恢复出厂设置。