我有一个Linux DHCP服务器,我需要将所有网络流量重定向到一个登陆页面,该登陆页面将提供有关如何在网络上注册计算机的说明.
无论用户输入什么URL,都需要将用户重定向到网页(在DHCP服务器上).
即:用户输入google.com,他们会立即重定向到192.168.10.1.此DHCP服务器永远不会用于访问Web.一旦用户获得从登录页面注册其计算机的指令,它们将被列入该特定DHCP服务器的黑名单,并被迫从主DHCP服务器请求IP.
我该如何创建这样的重定向?
解决方法:
您似乎正在尝试设置所谓的强制门户网站.
这有几个组件,其中一个确实是DHCP服务器,但这不是最关键的一个.
简短概述
您的网络至少包含以下组件:
> DHCP服务器
> DNS服务器
>网关
>登录系统
客户端将从DHCP服务器获取IP地址,并将被告知使用您的DNS服务器和网关.
解决方案1:基于DNS的重定向
在用户登录DNS服务器之前,请回复登录Web服务器的IP地址.注意在DNS回复中设置非常低的TTL.您希望确保客户端浏览器在登录后重新解析IP地址.
这很可能会导致除端口80上的Web浏览之外的任何应用程序出现问题.
解决方案2:TCP拦截
这是一个稍微困难的解决方案,但可能会更好.
DNS服务器始终为客户端尝试访问的任何网站返回正确的IP地址.
网关将端口80上的TCP会话重定向到登录服务器.
所有其他数据包应该收到ICMP错误回复(例如网络不可达).
标签:spoofing,linux,dns,redirect,dhcp
来源: https://codeday.me/bug/20191005/1856154.html