背景:
物理机,客户机 dns 皆为默认取得,为网关路由
路由设置 dns 为 8.8.8.8 和 1.1.1.1,且 ping 它们延迟都在 200ms 左右
路由开启了酸酸日和 dnsproxy,本机开启酸酸日的全局模式代理
虚拟机采用 NAT,设置代理服务器为物理机(即本机)
虚拟机中,使用了两层跳板,本机->HK ->US 落地。 结果整个过程被一览无余
所以有什么办法能防止 dns 泄露,或者说换什么方式能完整代理 dns 请求呢?
1
zro 2019-03-31 00:28:44 +08:00
看了一下 DnsProxy 的原理,域名黑名单列表才走代理的,走的还是 53 端口,至于路由的 UDP 代理开没开我不清楚。。
然后我的建议是 8888 和 1111 都支持 DoT,如果对 DNS Leak 隐私很注重的话,路由上 Stubby 走一般域名,国内域名就用 DNSProxy 配合 |
2
EridanusSora 2019-03-31 00:30:35 +08:00 via Android
dns over tls
|
3
nanaw OP @zro https://i.loli.net/2019/03/31/5c9fa2b9ee6f1.png
dnsproxy 设置的全部转发,死死日模式为大陆白名单,并且 udp 转发也全部端口开启了 但是经过测试: $nc -vuz 1.1.1.1 5555 Connection to 1.1.1.1 5555 port [udp/rplay] succeeded! 然后将死死日改为全局,端口故意填错。等待重启后确认所有 tcp 链接以无法上网 继续执行 $nc -vuz 1.1.1.1 5555 仍然 Connection to 1.1.1.1 5555 port [udp/rplay] succeeded! 似乎 udp 转发并没有生效。 我不知道还有什么更好的办法测试。。 至于安装其他服务的话,因为路由没有闪存空间了所以很不便。。 |
4
nanaw OP @zro 然后这个显示的多个 dns 请求是如何得到的,这些 dns 地址是迭代查询么。这样是否意味着我从一开始 dns 请求就是从本地发出的,但那为什么本地->hk->uk 一路顺着我的代理服务器地址都有呢。。而且我本地设置的也是 8.8.8.8 啊。。
|
5
zro 2019-03-31 01:35:36 +08:00
不太清楚 DNSProxy 这方面,毕竟没用过;另外我说一个我怀疑的地方,就是路由不要设 8888 和 1111 了,因为你已经有 DNSProxy 了,应该自带了 DNS 服务器地址,就像我装了 Stubby,DNS 服务器列表都是在 Stubby 内修改,路由设的 DNS 为 127.0.0.1#5453 就行了。。
|
6
sodora 2019-03-31 02:03:32 +08:00 via Android
艾斯艾斯不是微批恩,设计初心就是过墙,隐私性(包括 dns 泄露)本来就有所欠。
另外,别被艾斯艾斯的全局模式欺骗了,这个是假全局,不是任何流量都走代理的,所以是有可能有其他地方有流量泄露。 |
7
liuminghao233 2019-03-31 11:19:30 +08:00 via iPhone
tun2socks 把 dns 路由改掉走 socks5 即可
|
8
nanaw OP @sodora 这样说那 v two ray 如何,能否做到真全局。传统的为皮恩根本过不了 wall。。
|
9
zro 2019-03-31 16:33:33 +08:00
想不泄露,目前方法基本就几种,DoT、DoH、DNSSec、DNSCrypt,大厂基本是支持前两种。。
你用代理方式的,最多也只是本地到代理端加密,你代理端那头不用上面说的那 4 种方法也一样是会有泄露的 |