从2021年开始,部分手机及智能电视为代表的终端会自动添加的 DNS。
具体技术并不复杂,过去有人会以修改host的方式修改DNS,这个硬件编码原理一致,会自动添加 114 以及「互联网国家工程中心」的 DNS。
具体细节是根据系统地区,如果是国产就添加114的DNS,出口产品就添加 Google 的 DNS。
主要实现代码类似:
String dns = System.isInCnRegion() ? "114.114.114.114" : "8.8.8.8";
String dnsv6 = System.isInCnRegion() ? "240c::6666" : "2001:4860:4860::8888";
这种手机或电视等智能终端内置硬编码 DNS 的机制,目的也许是减少用户配置错误,导致的离线问题。但也会导致难以排查的 DNS 泄漏,甚至抢答到的错误 DNS,导致 DNS 污染,甚至污染到 OpenWrt 路由器,导致路由器下的其他设备,如电脑无法正常使用 Google 等服务。
目前智能电视只要联网就会有广告,其实有类似局域网黑洞的软件实现原理类似,就是在局域网内部设虚拟的DNS解析服务器,通过故意配置错误的 DNS,就能正常使用投屏等局域网功能,又能屏蔽除广告和遥测数据。
经测试,如果你购置的手机或者电视等智能终端,厂商已经添加硬编码的 DNS,就会导致大多数屏蔽广告的破解方法失效,所以你也不用费力气测试基于这些原理的屏蔽器了。