【问题标题】:Change from IPv4 to IPv6: What are its effects on web development?从 IPv4 到 IPv6 的变化:它对 Web 开发有什么影响?
【发布时间】:2011-01-29 12:17:05
【问题描述】:

网络开发人员是否需要担心 IPv4 的终结? 或者这只是托管级别的问题?

一般的 PHP/JavaScript/Ajax 等开发人员可以做些什么来减轻转换的影响?

讨论!

(如果这在我道歉之前就出现了,但我的搜索没有发现任何东西)

【问题讨论】:

    标签: networking ipv6 ipv4


    【解决方案1】:

    在服务器端,请确保您没有对远程 IP 地址的格式做出假设 - 像将海报的 IP 地址打包在单个 32 位数据库字段中这样的黑客行为是个坏主意。如果您将子网掩码用于禁令或其他内容,则也需要进行更改。

    【讨论】:

      【解决方案2】:

      另外,在验证 IP 地址字段时,不要忘记同时考虑这两种格式(152.115.4.70 和 2001:db8:1f70::999:de8:7648:6e8)。

      【讨论】:

      • 实际上有许多可能的 IPv6 格式,您已经展示了其中(最常见的)一种……只是让它变得更加复杂。
      • 你是对的。在验证中,您应该考虑所有可能的选项。但是,我希望已经有针对各种编程语言的现成验证器。
      【解决方案3】:

      您处理 IP 地址的任何地方都需要进行审核,以检查它是否是 IPv6 干净的。简单的 web 应用程序可能不会费心存储任何 IP 地址,但许多会出于滥用跟踪/控制的目的。 IPv6 地址大于 ipv4 地址,并且文本表示使用不同的符号。

      在某些情况下,可以在 IPv6 套接字上处理 IPv4 连接。在这种情况下,您可能会看到“IPv4 映射地址”,您可能需要在存储/比较它们之前将其转换回普通 IPv4 地址(网络服务器等较低级别的进程可能会或可能不会为您处理此转换)。

      与施虐者打交道可能需要考虑一些因素。禁止单个地址可能是徒劳的。为了有效地禁止,您将希望能够根据各种不同的前缀长度进行禁止。您可能还希望能够将滥用者的使用模式映射到块。类似的问题也适用于每个用户的连接数限制。

      随着 IPv4 危机的加剧,我们可能会看到更多使用反向代理设置在仅 v6 的源服务器之间共享有限的公共 IPv4 地址池。因此,让您的软件准备好使用反向代理是明智之举。这通常意味着拥有一个受信任的反向代理列表,您可以从中接受 x-forwarded-for 标头。

      【讨论】:

        【解决方案4】:

        实际上,我怀疑 IPv4 是否会终结。只是我的观点。 Netorking 应用程序必须编写为与 IPv4/6 兼容。一些 API 让这变得异常简单。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-06-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多