是否存在 REMOTE_ADDR 值为 IPv6 的情况?

是否存在 REMOTE_ADDR 值为 IPv6 的情况?

即使 IPv6 被相当广泛的接受/实施/采用,我也只看到过用于 REMOTE_ADDR 值的 IPv4 地址。

假设我使用 REMOTE_ADDR 来允许访问之类的操作,至少在可预见的未来,仅期望和接受 IPv4 地址是否现实?

答案1

如果您的服务器只有 IPv4,那么 IPv6 用户将无法连接到它。IPv4 用户和同时拥有 IPv4 和 IPv6 的用户将使用 IPv4 进行连接,因此您只能看到 IPv4 地址,REMOTE_ADDR直到您使服务器可以通过 IPv6 访问。您应该这样做,因为具有 IPv6 连接的用户数量正在快速增长。

您的问题让我担心的一点是,您提到了使用REMOTE_ADDRIP 地址进行访问控制之类的东西。我希望您意识到,您不能假设每个用户都有不同的 IP 地址。IP 地址通过 NAT 在用户之间共享。由于 IPv4 地址短缺,越来越多的 ISP 需要在大量客户之间共享地址。诸如通过 IP 地址进行访问控制和速率限制之类的东西已经不可靠,并且在不久的将来将变得无法使用。

相关内容