首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查我的DNS链?

如何检查我的DNS链?
EN

Unix & Linux用户
提问于 2015-06-16 05:57:07
回答 1查看 1.6K关注 0票数 1

我想使用DNSCrypt加密我的所有DNS数据包,所以我尝试这样做:

在/etc/rc.local:

/usr/local/sbin/dnscrypt-proxy -a 127.0.0.1:40 -u _dnscrypt-proxy -d -l /dev/null -R dnscrypt.eu-dk

然后我跑了:sudo /usr/local/sbin/dnscrypt-proxy -a 127.0.0.1:40 -u _dnscrypt-proxy -d -l /dev/null -R dnscrypt.eu-dk

On /var/unbound/etc/un界.

这是否被正确地配置为通过dnscrypt路由我的所有DNS请求?

当我执行host openbsd.org时,当我在另一个虚拟OpenBSD机器上运行相同的命令时,我得到相同的IP地址,但是当我尝试google.com和youtube.com时,会得到不同的IP结果?这让我觉得我做了一些错误或者DNS解析器是流氓。

我如何检查它实际上是通过端口80执行DNS请求呢?如果可能的话,我想知道是否可以检查它是否使用DNS解析器并加密我的请求,因为我只知道我可以解析域,而不能解析所使用的路由。

我的操作系统是OpenBSD 5.7 i386。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2015-07-11 20:00:03

Youtube和Google是通过CDN服务的,他们使用的DNS名称映射到许多不同的IP地址是正常的,也是预期的。

如果您想确保查询实际上正在通过DNSCrypt,请暂时停止它:

代码语言:javascript
复制
# pkill -STOP dnscrypt-proxy

看看你是否还能得到对新DNS查询的响应。不应该再是这样了。

然后,继续:

代码语言:javascript
复制
# pkill -CONT dnscrypt-proxy

根据您的未绑定配置文件,代理正在侦听端口40,因此您也可以在此端口上运行tcpdump,并验证输出看起来像是胡说八道,而不是可解码的DNS数据包:

代码语言:javascript
复制
# tcpdump -n udp port 40

在端口80上侦听传入连接没有什么问题,只要您的/etc/resolv.conf文件包含一行,如:

代码语言:javascript
复制
nameserver [127.0.0.1]:80

但是,80是一个奇怪的选择,因为您无法在同一个端口上运行web服务器(DNS同时使用UDP和TCP)。

在端口80上启动tcpdump应该显示常规的、未经身份验证的、未经加密的查询。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/209926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档