我有一个 Linux DHCP 服务器,我需要将所有网络流量重定向到一个登陆页面,该页面将包含有关如何在网络上注册计算机的说明。
无论用户输入什么 URL,都需要将用户重定向到网页(在 DHCP 服务器上)。
即:用户输入 google.com,他们会立即重定向到 192.168.10.1。该 DHCP 服务器永远不会用于访问网络。一旦用户从登陆页面获取注册其计算机的指令,他们将被列入该特定 DHCP 服务器的黑名单,并被迫向主 DHCP 服务器请求 IP。
我怎样才能创建这样的重定向?
您似乎正在尝试设置所谓的强制门户。
其中有多个组件,其中之一确实是 DHCP 服务器,但这并不是最关键的组件。
简短概述
您的网络至少将具有以下组件:
- DHCP服务器
- DNS服务器
- Gateway
- 一个登录系统
客户端将从 DHCP 服务器获取 IP 地址,并被告知使用您的 DNS 服务器和网关。
解决方案 1:基于 DNS 的重定向
在用户登录之前,您的 DNS 服务器会回复登录 Web 服务器的 IP 地址。请注意在 DNS 回复上设置非常低的 TTL。您需要确保客户端浏览器在登录后重新解析 IP 地址。
这很可能会导致除端口 80 上的网页浏览之外的任何应用程序出现问题。
方案二:TCP拦截
这是一个稍微困难的解决方案,但可能效果更好。
DNS 服务器始终为客户端尝试访问的任何网站返回正确的 IP 地址。
网关会将端口 80 上的 TCP 会话重定向到登录服务器。
所有其他数据包都应收到 ICMP 错误回复(例如网络无法访问)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)