星巴克 wifi 等是如何“劫持”您的互联网连接?

星巴克 wifi 等是如何“劫持”您的互联网连接?

我对 DNS 的了解并不多,但我确实了解一点,就像我曾经apropos dns浏览过一些提到的man页面一样。

当我登录到我称之为“非企业”的 wifi 时,它wicd-curses会告诉我一个 IP(有时是“本地” 10.x.x.xIP,有时是环回 IP,有时是看起来正常的 IP),就像一个普通路由器一样。

当我查看时,/etc/resolv.conf我发现有些东西覆盖了我的正常地址。 可能nameserver会重定向到某个不寻常的地方,并且有一个search参数想要将我发送到类似“航路端口”的地方。

这里面到底发生了什么?(请不要太深入。)我想要达到的水平是,如果出于某种原因,“wayport”不能与 Linux 愉快地运行,我希望能够进行编辑之类的操作,resolv.conf以便进入他们的协议页面。

答案1

你似乎发现很多事情其实很正常。10.x.x.x地址看起来很正常——它具有 IPv4 地址应具有的一切(四个点分隔的八位字节)。它只是由 RFC 1918 专门分配给 LAN 使用,与 192.168.xx 一起

同样,覆盖 /etc/resolv.conf 也是正常的——作为网络连接过程的一部分,wicd 会获取你的 IP 地址来自 DHCP 的网络推荐的 DNS 服务器。

话虽如此。强制门户的工作方式有多种:

  • 有些会拦截所有 DNS 流量并向您发送指向门户网站服务器的虚假 DNS 回复。(这种情况会发生不管您尝试使用的 DNS 服务器,因此尝试忽略 DHCP 提供的信息是没有意义的。)

  • 其他类型直接拦截 HTTP 和 HTTPS 流量,并使用 HTTP 302 重定向回复到同一门户的所有请求。

一旦您登录和/或单击“接受服务条款”按钮,门户网站就会调整路由器上的防火墙规则以消除拦截并让您照常浏览。


resolv.confsearch参数也是从 DHCP 获得的,但在这里没有任何意义。它只是表示“附加此域如果没有给出“。

例如,如果您连接到 Example Corp 的办公网络并尝试访问http://mail/(没有域名),那么系统会首先尝试,因为您的系统已经从办公网络http://mail.example.com/获取。search example.com

此功能实际上绝不在公共热点中使用,但 DHCP 服务器通常会根据其自己的内部主机名发送任何域,因为这是默认模式。因此,如果您看到search guest.example.com,这可能仅表示 DHCP 服务器已命名dhcp-nyc42.guest.example.com或类似情况。

相关内容