THpubs Asked: 2012-08-27 18:35:58 +0800 CST2012-08-27 18:35:58 +0800 CST 2012-08-27 18:35:58 +0800 CST 我应该在我的 Web 服务器中仅使用 IPv6 还是同时使用 IPv4 和 IPv6? 772 我的 Web 服务器(Ubuntu、Nginx)具有主机分配的 IPv4 和 IPv6 地址。对于我的网站,我应该只将它绑定到一个 IPv6 地址吗?这是标准推荐的方式吗?或者,我应该同时使用 IPv4 和 IPv6 地址吗? ipv6 2 个回答 Voted Best Answer Michael Hampton 2012-08-27T18:40:02+08:002012-08-27T18:40:02+08:00 同时使用 IPv4 和 IPv6 您应该同时使用 IPv4 和 IPv6 地址。 目前互联网上几乎每个人都有一个 IPv4 地址,或者位于某种 NAT 后面,并且可以访问 IPv4 资源。 然而,在撰写本文时,只有大约0.7% 2.3% 3.8% 6.5% 9% 12% 19% 22% 26% 32% 37% 的互联网支持 IPv6,但随着 IPv6 开始推出,这个数字正在稳步增长全世界。 在极少数地方,ISP主要向住宅客户提供IPv6 或仅提供IPv6,并使用大规模 NAT、NAT64 或其他此类解决方案来实现 IPv4 连接。随着 IPv4 地址空间最终耗尽,这个数字预计还会增长。这些用户通常会比 IPv6 有更好的性能。 在 ISP 部署大规模 NAT 以解决 IPv4 耗尽的情况下,由于大规模 NAT 网关固有的连接限制,坚持这样做的用户将遭受其所有 Internet 连接可靠性降低的影响。例如,一个网页可能只加载了一些但不是全部的资源,在应该是图像的地方留下了损坏的图标,缺少样式和脚本等。这类似于家用路由器上的连接限制耗尽,但会影响所有用户ISP 间歇性且看似随机。如果您希望您的网站对这些用户来说是可靠的,您必须通过 IPv6 为它提供服务(并且 ISP 必须已经部署了 IPv6)。 由于 IPv6 是 Internet 的发展方向,现在启用您的网站 IPv6 将使您处于领先地位,并让您在问题变得严重之前解决任何问题。 配置nginx 默认情况下,对于 Linux 和 nginx,您可以通过将指令更改listen为同时绑定到 IPv4 和 IPv6 : listen [::]:80; listen 80; 或者,对于 SSL 站点: listen [::]:443 ssl; listen 443 ssl; Glen Little 2014-06-04T09:33:48+08:002014-06-04T09:33:48+08:00 绑定到两个! 我们有一个 IIS 网站,其代码使用客户端使用的 DNS 名称对自身进行内部引用。这个过程总是会失败。 另一个症状是在服务器本地运行的浏览器无法通过服务器名称找到网站,只能通过 IPv4 地址找到该网站。也就是说,http://192.168.55.139会工作,但http://myhost会失败。ping myhost默认情况下,使用将返回 IPv6 地址(ping myhost -4将返回 IPv4 地址)。 修复方法是打开 IIS 并更改网站的绑定以绑定到 IPv6 地址以及 IPv4 地址。
同时使用 IPv4 和 IPv6
您应该同时使用 IPv4 和 IPv6 地址。
目前互联网上几乎每个人都有一个 IPv4 地址,或者位于某种 NAT 后面,并且可以访问 IPv4 资源。
然而,在撰写本文时,只有大约
0.7%2.3%3.8%6.5%9%12%19%22%26%32%37% 的互联网支持 IPv6,但随着 IPv6 开始推出,这个数字正在稳步增长全世界。在极少数地方,ISP主要向住宅客户提供IPv6 或仅提供IPv6,并使用大规模 NAT、NAT64 或其他此类解决方案来实现 IPv4 连接。随着 IPv4 地址空间最终耗尽,这个数字预计还会增长。这些用户通常会比 IPv6 有更好的性能。
在 ISP 部署大规模 NAT 以解决 IPv4 耗尽的情况下,由于大规模 NAT 网关固有的连接限制,坚持这样做的用户将遭受其所有 Internet 连接可靠性降低的影响。例如,一个网页可能只加载了一些但不是全部的资源,在应该是图像的地方留下了损坏的图标,缺少样式和脚本等。这类似于家用路由器上的连接限制耗尽,但会影响所有用户ISP 间歇性且看似随机。如果您希望您的网站对这些用户来说是可靠的,您必须通过 IPv6 为它提供服务(并且 ISP 必须已经部署了 IPv6)。
由于 IPv6 是 Internet 的发展方向,现在启用您的网站 IPv6 将使您处于领先地位,并让您在问题变得严重之前解决任何问题。
配置nginx
默认情况下,对于 Linux 和 nginx,您可以通过将指令更改
listen
为同时绑定到 IPv4 和 IPv6 :或者,对于 SSL 站点:
绑定到两个!
我们有一个 IIS 网站,其代码使用客户端使用的 DNS 名称对自身进行内部引用。这个过程总是会失败。
另一个症状是在服务器本地运行的浏览器无法通过服务器名称找到网站,只能通过 IPv4 地址找到该网站。也就是说,
http://192.168.55.139
会工作,但http://myhost
会失败。ping myhost
默认情况下,使用将返回 IPv6 地址(ping myhost -4
将返回 IPv4 地址)。修复方法是打开 IIS 并更改网站的绑定以绑定到 IPv6 地址以及 IPv4 地址。