我正在尝试构建一个新的DNS,它将充当某些域名的代理,并使用公共DNS作为上游。
我对DNS:的理解
- 客户端向DNS(x.x.x.x(询问
example.com
- DNS将在其区域(或父和根(内查找,并在
i.i.i.i
中找到example.com
- DNS将向客户端发送
i.i.i.i
现在,客户端询问restricted.test
的ip地址,DNS服务器知道它是一个受限制的网站,所以它没有将直接ip提供给网站,而是将自己的代理地址p.p.p.p
提供给客户端。
如果到目前为止我错了,请纠正我,但当客户端尝试连接到p.p.p.p
时,代理服务器如何知道客户端要访问哪个网站?
我真的很想知道这些是如何在引擎盖下工作的
提前谢谢。
您询问的这个机制是代理自动配置(PAC(文件。
点击此处阅读更多信息:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_PAC_file
这里:
https://www.websense.com/content/support/library/web/v76/pac_file_best_practices/PAC_explained.aspx
从本质上讲,在公司网络中,PAC文件被推送到每台计算机,浏览器设置也被配置为启用PAC文件。但它也可以手动完成。只需检查您的浏览器代理设置,即可查看它所指向的PAC文件的位置。