一个网站更换了 DNS 服务器,无法通过正常的 DNS 查询获取正确的 IP。
所以我不得不将域名和 IP 写入 etc/hosts(macOS)。如果我使用代理,我才能更快地访问此网站。使用代理时,本地 hosts 文件似乎被忽略,并且代理服务器不属于我。
为什么代理服务器不使用客户端 hosts 文件中的 ip 而进行 DNS 查询?
同时使用代理和 hosts 文件是否自相矛盾?
代理客户端在路由器上充当透明代理。当我使用Wireshark时,目标ip是我在hosts中填写的ip。
答案1
由于代理不由您管理,因此很难了解那里的情况。但是此服务器(带代理)拥有并使用自己的解析机制,并且对您的/etc/hosts
文件一无所知。
您可以创建自己的代理服务器,将请求转发到特定主机的外部代理,并且仅适用于您的本地机器。
根据编辑:您可以尝试更新hosts
路由器上的文件,以加快本地主机的解析速度。