PiT*_*ber 2 networking domain-name-system linux ipv6 apache-2.2
IPv4 IP 越来越少,而且越来越贵,我想知道是否有可能将我们的 Web 服务器完全切换到 IPv6。我知道建议使用 IPv4 和 IPv6,但我仍然想知道:
有没有办法只使用一个 IPv4 地址就可以访问多个 IPv6 Web 服务器?
我们会面临哪些问题,例如 HTTPS?
第一个问题很简单:是的,这正是 NAT 的用途,但是您必须将您的单个 v4 地址放在 v6 服务器池的前面,为每个池成员提供一个 RFC1918 v4 地址,并输入一个真实的 v4 地址/端口配对到您想要 v4 可寻址的每个 RFC1918 地址/端口对。您需要为每个服务器手动分配一个外部端口:
缺点:可能不允许带有防火墙的客户端连接到端口 81。
如果您不想这样做,v4 box 将需要运行某种虚拟主机代理,以便它可以接收来自仅 v4 主机的请求,以便在 v6 池上提供服务,通过代理请求,并提供服务回复。
代理设置的方法超出了 SF 答案的范围,但本质上前端框需要维护一个代理表,例如
响应来自解析为 v4 地址 site[123].example.com 的站点上的客户端的传入请求,并将它们代理到在上面列出的 v6 地址上运行类似名称站点的服务器。代理还需要将响应返回给请求者。对于启用了 v6 的客户端,如果您还获得了正确的路由和 v6 防火墙,您可以在其 AAAA 记录下通告代理本身。
至于 HTTPS,情况与希望在单个 v4 地址上本地运行多个 HTTPS 服务器的情况相同:您可以运行多个 v4 端口(打通;见上文),或依赖 SNI(见很多地方)并忽略不支持它的主机。
我怀疑您真正要问的是“是否有神奇的服务器端精灵灰尘可以为不了解 v6 的最终用户启用 v6 连接”,我认为答案是否定的。您必须在 v4 中完全接受他们的请求,并以相同的方式将答案回复给他们;看上面。
| 归档时间: |
|
| 查看次数: |
1173 次 |
| 最近记录: |