IPv4 is变得越来越稀有和昂贵,我想知道是否有可能将我们的web服务器完全切换到IPv6。我知道这是建议使用IPv6 4和IPv6 6,但我仍然想知道:
是否有任何方法可以使多个IPv6 web服务器仅使用一个IPv4地址即可访问?
我们将面临哪些问题,例如HTTPS?
发布于 2013-01-16 09:08:31
第一个问题很简单:没错,这正是NAT的目的所在,但您必须将单个v4地址放在v6服务器池的前面,给每个池成员一个RFC1918 v4地址,并将一个真正的v4地址/端口对插入到您希望具有v4可寻址的每个RFC1918地址/端口对中。您需要手动为每个服务器分配一个外部端口:
缺点:带有防火墙的客户端可能不允许连接到端口81。
如果您不想这样做,v4框将需要运行某种虚拟主机代理,这样它就可以接收来自v4的仅针对v6池上服务的主机的请求,通过代理请求并为答复服务。
用于代理设置的“如何操作”远远超出了SF答案的范围,但实际上,前端框需要维护一个代理表,类似于
要回答来自解析为v4 addresses站点123.example.com的站点上的客户端的传入请求,并将其代理到在上面列出的v6地址上运行同名站点的服务器。代理还需要将响应返回给请求者。对于启用v6的客户端,您可以在它们的AAAA记录下为代理自己做广告,如果您也获得了路由和v6防火墙的正确信息。
至于HTTPS,这种情况与那些希望在单个v4地址上本地运行多个HTTPS服务器的情况是一样的:您可以运行多个v4端口(穿孔,见上面),或者依赖于SNI (见很多地方),而忽略不支持它的主机。
我怀疑你真正想问的是“是否有神奇的服务器端精灵尘埃可以为那些不知道v6的终端用户提供v6连接”,我认为答案是“不”。您必须完全在v4中接受他们的请求,并以同样的方式将答案返回给他们;参见上文。
https://serverfault.com/questions/469546
复制相似问题