我的 ISP 正在施展什么样的魔法?

我的 ISP 正在施展什么样的魔法?

在尝试设置 OpenDNS 并无法使网站过滤真正发挥作用时,我意识到我的 ISP 正在对所有 HTTP 请求进行恶意操作。长话短说,如果有标头Host:,无论我使用什么 IP 地址,我访问的网站都取决于Host:标头,而不是其他任何东西。

即使我在请求中指定 HTTP/1.0,它似乎也会自动使用 HTTP/1.1。

例子:

连接google.comHost: yahoo.com

$ echo -e "HEAD / HTTP/1.0\r\nHost: yahoo.com\r\n\r\n" | nc google.com 80
HTTP/1.1 301 Moved Permanently
Date: Mon, 02 Jan 2012 10:50:13 GMT
Location: http://www.yahoo.com/
Vary: Accept-Encoding
Content-Type: text/html; charset=utf-8
Cache-Control: private
Age: 0
Server: YTS/1.20.0
Connection: close

$

使用以下方式连接到无效的 IP 地址Host: yahoo.com

$ echo -e "HEAD / HTTP/1.0\r\nHost: yahoo.com\r\n\r\n" | nc 1.0.0.0 80
HTTP/1.1 301 Moved Permanently
Date: Mon, 02 Jan 2012 10:51:02 GMT
Location: http://www.yahoo.com/
Vary: Accept-Encoding
Content-Type: text/html; charset=utf-8
Cache-Control: private
Age: 0
Server: YTS/1.20.0
Connection: close

$

那么,我的 ISP 在做什么?我应该向他们投诉吗?

答案1

您的 ISP 正在使用透明代理:http://en.wikipedia.org/wiki/Proxy_server#Transparent_proxy

答案2

我认为你错过了 OpenDNS常问问题

OpenDNS 是否运行代理?

是的,有时。OpenDNS 在某些情况下会运行一个简单的代理。一些互联网浏览器和许多工具栏会拦截来自地址栏的请求,从而阻止发起正确的 DNS 请求。我们的代理可确保您在使用 OpenDNS 服务时正确路由您的请求。

而且,与所有 OpenDNS 服务一样,代理尊重并努力保护您的隐私。我们不会跟踪通过代理路由的 DNS 请求。事实上,由于许多人使用工具栏,代理必须自动轮换和删除日志,这种情况经常发生。

OpenDNS 不会存储或挖掘通过我们的代理传输的任何数据。代理不会进行任何恶意操作 - 它旨在确保 OpenDNS 服务适用于所有浏览器和工具栏。

相关内容