在Google计算引擎中创建IPv6到IPv4代理服务器

时间:2017-09-03 13:48:13

标签: proxy kubernetes google-compute-engine ipv6

我有一个需要API才能运行的ios应用程序,但是使用doesn't support IPv6 for now的Kubernetes部署了此API。

我打算创建代理服务器,将数据包重定向到实际的api。如何使用谷歌计算引擎?负载均衡器?

2 个答案:

答案 0 :(得分:3)

您不需要代理,而是需要反向代理。因此,负载均衡器是满足您需求的一种方式。不要忘记使用负载均衡器的IPv4 IPv6地址配置DNS。

但是当你说我有一个需要API的ios应用程序才能支持IPv6 。如果您所说的是基于Apple希望其商店中的iOS应用程序支持IPv6的事实,请注意,拥有IPv6服务器不是强制性的。 Apple希望您的客户端应用程序在连接到仅IPv6网络时能够正常工作,但只有IPv6的网络必须通过提供符合DNS64的DNS解析器并提供NAT64 IPv6来帮助您的应用程序到IPv4转换网关。这意味着您的客户端应用程序向 www.myipv4onlyserver.com 发出DNS请求,然后解析程序回复一个伪造的IPv6地址,路由到NAT64网关。因此,您的客户端应用程序与IPv6通信此网关,此网关将数据通道转换为您的IPv4服务器,如透明代理。

因此,为了符合Apple的期望,如果您只使用高级网络库和地址无关的API,例如getaddrinfo()和getnameinfo(),那么您不需要在服务器端支持IPv6。

答案 1 :(得分:1)

目前,GCE实例不支持IPv6,因此您无法在实例上终止IPv6或自行设置(反向)代理。

然而,Google Cloud HTTP(S),SSL和TCP代理do support IPv6。您可以使用它来接受IPv6连接并将它们转发到您的GKE节点。甚至可以使用作为Kubernetes Ingress一部分创建的HTTP LB来执行此操作,从而将其自动连接到正确的pod。