2012-09-17 142 views
2

禁止如果我想要一个禁令IP用户在我的网站上,有没有可能通过两种IPv4IPv6办呢?一些浏览器默认使用IPv4地址,如果有可能的话,使用IPv6地址。因此,如果我通过他们当前的IP禁止某人,他们只能使用另一个导航器来绕过禁令。通过IPv4和IPv6

tl; dr:是否可以将IPv4地址翻译为IPv6或类似的东西来“统一”它们?

我使用PHP作为服务器端技术。

回答

5

不,这是不可能的。它们是完全独立的网络协议,彼此之间不必有任何关系。

另外,我建议通过IP地址,禁止只应与其他方法结合使用,因为它是非常容易使用代理或其他手段,从不同的IP地址打你的服务器。

+4

不仅很容易绕过,但例如在德国的IP不会忽略正在改变以往24小时。它曾经发生过,我被禁止从我以前从未访问过的网站被禁止,因为我无意中得到了一些nincompoop的ip。 – devsnd

+2

我想补充说,通过IP禁止可能是一件坏事。你可能最终禁止大学或公司,这对大量潜在用户来说通常只有很少的IP。 – 3on

+0

@twall和3on,非常同意! – Brad

0

你不能真正转化一个到另一个时,IPv4和IPv6因特网和两种基本碰巧有着许多相同的基础设施的逻辑上独立的neworks。

你可以做的事情。

  1. 寻找与6to4和teredo转换机制相关的地址。当您看到有人将其转换为相应的IPv4地址以进行滥用控制比较时。
  2. 请注意,客户倾向于以至少/ 64的块数获得分配的IPv6,因此禁止单个IPv6地址通常没有太多意义。
  3. 包括一对夫妇关键页面大多无形资源(例如1x1像素透明图像),一个从V4只有主机名和一个从V6仅主机名送达。使用这些图像来收集用户的两个地址(如果存在)。