最近总感觉dns有点不对劲,就开始研究,竟然发现了这事!
环境介绍
本文环境是esxi虚拟化的lede和爱快
Lede地址为192.168.10.251
爱快地址为192.168.10.253
爱快设置dhcp的网关地址为192.168.10.251,也就是lede的地址
lede关闭dhcp,设置本地的网关地址为192.168.10.253,也就是爱快的地址
然后这样所有的流量都是先经过lede然后再经过爱快然后出外网(因为lede上面跑的有ss)
准备工作
1.我是先把lede的ss服务关掉了,怕影响测试
2.然后把本机的dns设置为空
可以看到是没dns地址的
正常情况下是没办法解析任何域名的
3.把lede的“使用自定义的 DNS 服务器”设置为114.114.114.114
介绍下nslookup命令
接下来我们会用到nslookup命令,简单介绍下他的使用方法
语法为: nslookup 目标域名 指定的DNS服务器IP或域名
例子:nslookup tool.chinaz.com 8.8.8.8
这是一个很简单的使用方法,更多使用方法可以到csdn上面去搜索
开始测试
我打开爱快的终端监控,看lede 的连接详情,速度调成1秒刷新一次,算是一个简易的抓包吧!
第1次测试
可以看到我指定解析的dns为8.8.8.8的时候,lede连接的竟然是114.114.114.114,可以判断出来lede是把我们的dns请求给劫持了,换成了lede设置的114.114.114.114
第2次测试
为了确认判断,咱们再把lede的dns给改成114.114.115.115试试
这次连接详情的目的地址也变成了咱们刚刚在lede里设置的114.114.115.115地址,这次实锤了!肯定是劫持了!
不过咱们再继续测试一下
第3次测试
这次把dns指定了一个不存在的ip,而且也ping了确实是不存在,竟然还能解析成功!
连接详情的目的地址还是在lede里设置的114.114.115.115地址
第4次测试
这次把lede的dns设置个不存在的地址
可以看到lede还是连接了这个不存在的ip地址去尝试解析!当然,肯定是解析不成功的!
第5次测试
咱们继续把本机的dns恢复正常
本机都设置的正常的dns,但是依然无法打开网页,网页报错显示的也很明白,就是解析不到ip地址
而lede还傻乎乎的疑问再连接我们设置的不存在的dns地址
第6次测试
我们试试把lede的“使用自定义的 DNS 服务器”设置为空,会不会就能使用我们自己在本机设置的dns了!
答案很明显,lede很死板,就算自己没设置dns也得劫持!
结论
把这两行注释掉就行了