我有时会使用 SOCKS 代理通过 ssh 路由我的 Web 流量。目的是加密所有流量。
我的做法是打开一个终端并运行这个......
$ ssh -v -C -N -D 9000 my_own_vps_host.com
在本地机器的网络设置中,我检查“SOCKS代理”并将其设置为127.0.0.1端口9000。
我的问题是,我的本地机器是否正在向 DNS 服务器发送纯文本 URL,或者是否通过加密连接发送这些 URL 并让远程服务器处理 DNS 请求?
(如果有区别的话,我的本地机器是 Mac。)
答案1
根据您的浏览器和设置,DNS 查询可以通过代理进行,但并非总是如此。我建议使用类似Wireshark分析您的流量并查看请求的去向。
答案2
在 Firefox 上,这取决于network.proxy.socks_remote_dns
已设置。Windows 上的 Chrome 在本地执行解析。
为了进行可靠的测试,安装Wireshark并观察 DNS 数据包。
注:完整网址为绝不以纯文本形式发送;仅包含域名。