路由器(软路由)屏蔽广告原理介绍 -ag九游会官方网站

很多用户发现,很多网站的广告简直是丧心病狂,一半的网页都是广告,更有的是闪屏广告、跟随广告、弹窗广告、强制观看、隐私窃取类的恶性广告;本文就简单介绍下直接在路由器(软路由)里进行广告拦截(屏蔽),从而家里的电脑、手机、平板等设备都可以有效的去广告,还用户一个清爽的阅读、浏览效果。

ps:友好的、美观的、合适的广告不会对用户造成浏览的不便;相反,广告是一个网站、应用的大部分收入来源。

路由器(软路由)屏蔽广告原理介绍

去广告常见技术实现方式

  • dns过滤(典型:adguardhome)
    • 把广告相关的dns请求禁止,只允许非广告请求通信
    • 拦截发生在网络请求开始之前
    • 适合于路由器等设备,一次设置,全家庭内网生效
    • 无需对接入家庭内网设备有特殊设置
    • 仅能通过域名进行广告识别,对于广告域名与内容域名相同的无能为力,无法针对页面内容过滤
  • 浏览器插件(典型:adblock)
    • 根据浏览器发出的请求地址、返回页面内容过滤广告
    • 拦截发生在网络请求开始之前与请求结束之后
    • 仅适用于网页浏览器,其他非浏览器应用无效
    • 每个设备,每种浏览器都需要额外安装插件
    • 可以对域名,请求,网页内容进行广告识别
  • 流量过滤(典型:koolproxyr)
    • 类似一个全局过滤器,全网流量都通过这个过滤器。针对加密请求(如https等),需要采用类似中间人攻击(mimt)方式进行拦截。
    • 拦截发生在请求开始之前、之后
    • 适合于路由器等设备,一次设置,全家庭内网生效
    • 需要为客户端安装假证书(实现mimt解密流量)
    • 可以对域名、请求,页面内容进行广告识别

 

以上所有技术方式,拦截时机及识别点越多,理论效果越好。但还有一个最为重要的内容没有提到——规则库

类似于杀毒软件,杀毒效果依赖于核心病毒库的质量,去广告效果也依赖于其规则库的质量。

维护去广告规则库,其难度相比于病毒库难度高很多,病毒产生速度相对稳定,但广告不是。全球几千万站点,每天上百亿次广告展现,频繁变更的广告植入方式,规则库维护难度是十分巨大的。

另外,互联网的核心思路是羊毛出在猪身上。站点运营需要成本,不在用户身上收钱,站点只能依靠其他方向获取收入,广告就是其中的主要来源。因此,对于去广告技术,几乎所有站点都是抵制的(典型地,koolshare论坛就是禁止类似技术讨论的)。

为了保证收益,它们会根据去广告技术的发展不断变更广告插入方式,从而规避去广告软件的运作。所以,广告与去广告一直是在不断斗争中发展的。因为广告植入方式发生变化,一个有效的屏蔽规则很可能在一夜之间完全失效,或者某些站点可以让你即使屏蔽了广告展示,仍然要等待固定时间才能获取内容(典型视频站点)。

从长远来说,广告有利于现在互联网站点的生存,对用户是有利的(如果所有站点都赚不到钱,最终只能关门,利益受损的还是最终用户)。对于笔者自己,我认为需要屏蔽的实际上是恶意的,带有强迫,诱导性质的广告,木马钓鱼链接,隐私收集类的垃圾信息。对那些对日常生活,娱乐,学习帮助很大的站点,能出资支持,或者主动点击广告表达支持,帮助站点发展更好,才是双赢的做法。

去广告技术原理

​ 上网过程,从技术上来说是浏览器通过http协议从远程服务器传回内容并显示的过程。浏览器需要建立tcp连接与服务器相连,连接通常有很多。广告请求与我们普通请求在传输方式上并没有区别,混杂在正常请求中。

​ 如何拦截广告?分两步

  1. 识别
  2. 拦截

​ 识别就是从http请求中识别出那些是广告请求。目前我们还不能很简单的通过返回内容来判断,这个http请求是不是一个广告(ai成熟后应该有可能)。现行的技术只能从请求地址上做文章。上网请求url(地址)中包含域名及具体访问资源的路径,现在可以比较容易的通过域名及访问资源路径判断这个请求的性质,目前可见的类似方式都是走这个识别思路。

​ 识别出来了,接下来就是拦截了。拦截分两种:

​ (1)域名方式。上网请求实际分两步,第一步,通过dns解析域名返回目标服务器ip,第二步,通过ip建立到远程服务器的tcp连接,使用http传送内容。域名方式就是在dns做文章,发现请求是广告请求就直接返回域名不存在或者一个无效ip,阻止tcp连接建立。这种方式优点在于简便,快速,不介入正常tcp连接。缺点是dns只能获得域名,却不能获得完整的url地址,因此无法对一些url特征进行过滤。好在现在广告普遍都是植入式,也就是普通站点嵌入一个指向广告的链接,通常广告都有相对清晰的域名(通常广告域名与访问站点域名不通),所以可以取得不错的效果。这也是现在绝大多数方案的原理。

​ (2)流量过滤方式。典型的如著名的koolproxyr。相当建立了一个tcp代理,所有流量走代理,代理可以拿到所有请求的url,根据规则决定是否放行这些请求。 优点是这种方式有可能获取完整请求,可以进行超过域名的过滤,甚至等ai成熟后识别内容。但也有缺陷,性能损失是一个,但绝对不是大问题。最大问题是现在网站基本上都是https请求,浏览器会校验目标网站证书,判断是否连接到了真正的地址。这也使得传统的http劫持几乎没有生存余地了,即使强行让浏览器连接到假网站地址,但假网站也造不出真网站的证书,浏览器也会报警。目前日益普及的https严重影响了koolproxyr类似过滤方案,因为它代理了浏览器发起的请求,它只是一个到真正服务器的中转,因为连接内容完全是加密的,它无法看懂,甚至连网址都无法获得,导致它无法进行拦截。

​ 当然,koolproxyr类似方案可以通过为每个目标网站制造一个假证书的方式,伪装成浏览器想访问的真网站,从而对url及内容进行过滤,但这里会造成额外问题。

  • 需要为所有网站伪造证书,伪造证书的根证书比如放到每个浏览器的信任根里。通常家里会有很多设备上网,pc还好,平板,手机,家用摄像头、ps4、xbox等等就麻烦了。当然,还可以为这些设备设置白名单,就是不过滤,但无形中还是增加了维护难度。
  • 某些应用不接受伪造证书。典型金融类应用,各种支付,网银,银行应用,部分电商,它们会严格校验服务器的证书链,伪造证书根本不被接受。这类应用在koolproxyr之类环境下是无法工作的。

​ 所以,流量过滤方式不再是一个去广告的优选方式了,基于域名的方案已经成为主流。

​ 当然,还有一些基于浏览器插件的方案,也很有效,浏览器插件可以做到对域名,url,甚至页面内容精细化过滤。但问题是只能适用于浏览器,通常还是pc端,并不能像dns方案一样,应用于整个家庭网络。

​ homelede固件采用adguardhome作为去广告方案,基于dns技术实现。dns技术特征是对请求的域名进行过滤,过滤的核心是规则文件。类似于杀毒软件的病毒库,adguardhome中可以挂载各类广告规则库。其准确度取决于规则库。

​ 现在回顾一下开篇的问题。

  • 为什么启动了去广告还是可以看到广告

​ 规则库中没有屏蔽你看到的广告,或者这个广告和站点正文域名相同,adguardhome根本无法去掉。

​ 广告升级了,目前规则库中并没有收录,无法屏蔽。

  • 为什么有些站点显示不了了

规则库误伤了一些”正常站点”,或者是规则库认为你访问的是广告,而你自己不认为(其实你之前一直认为是正常内容其实是广告链接)

  • 现在都是https了,去广告技术没用了

基于dns去广告方案,与使用协议无关。即使其他协议只要涉及到dns解析也可以工作。

遇到访问不正常时怎么办

如果遇到站点访问不正常,想确认是否和去广告有关,怎么做?

http://192.168.1.1:3000 打开adguardhome管理界面(路由ip请根据实际情况修改)

用户密码都是root

ag九游会官方网站首页,左上角接近logo处,有”禁用保护“字样,点击即可禁用广告过滤,再次点击开始。

另外dns缓存也可能会影响站点访问,任何人都可以胜任的清除方法:断开网络接口重连,重启电脑,重启路由。

相关推荐

  • 爱快与lede双软路由mac地址重复问题修正

    修复在爱快 openwrt(lede)双软路由下显示mac地址重复的问题 这年头比较流行用一台机器做个all in one,所以用爱快 openwrt(lede)跑双软路由的人非常…

    2020-10-12
    6.8k
  • 爱快 lede下如何将lede设置为旁路由,这样爱快分配所有的dhcp,就方便在爱快里面进行管理。 在爱快里面的dhcp服务设置: 在lede里面的lan口编辑设置   …

    2019-10-15
    18.7k
  • ac ap选购要点及避坑指南 ac ap的模式最早应用于企业、商业级别场景,稳定性和用户体验一直都是ac ap方案首要目标。随着家用覆盖面积的变大,ac ap成为高端家庭用户的选择…

    2019-12-08
    25.7k
  • 什么是软路由和硬路由,两者的区别有什么?

    路由器我们每天都会在用,但是很多伙伴并不了解路由器其实分为软路由和硬路由。那么软路由和硬路由两者有什么区别呢? 软路由器其实是在电脑主机的基础上配合软件组合成的路由j9九游会老哥俱乐部的解决方案,路由的…

    2019-11-19
    9.2k

发表回复

登录后才能评论
网站地图