AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

    • 主页
    • 系统&网络
    • Ubuntu
    • Unix
    • DBA
    • Computer
    • Coding
    • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1146614
Accepted
Ralf
Ralf
Asked: 2023-10-26 17:58:02 +0800 CST2023-10-26 17:58:02 +0800 CST 2023-10-26 17:58:02 +0800 CST

AWS 上的 IPv4 到 IPv6 NAT

  • 772

AWS 支持使用 NAT64 从纯 IPv6 节点连接到外部纯 IPv4 服务。有相反的等价物吗?

就上下文而言,我有一个 EKS 集群,目前仅支持 IPv4,且全部位于私有子网上。与任何外部 IP 的通信都是通过 NAT 网关进行的(通常用于 Webhook 或类似的出站请求)。现在,一些外部服务正在切换到仅使用 IPv6。有没有一种方法可以连接到这些设备,而无需将整个集群迁移到 IPv6?由于 EKS 不支持双栈网络,因此迁移可能是一个相当大且危险的项目。

amazon-web-services
  • 1 1 个回答
  • 44 Views

1 个回答

  • Voted
  1. Best Answer
    John Mahowald
    2023-10-29T00:39:35+08:002023-10-29T00:39:35+08:00

    不,IPv4 源 IPv6 目标并不那么容易。与采用其他方式或本机 IPv6 相比。

    DNS64 + NAT64是一种在纯 IPv6 网络中用于连接到 v4 的转换机制,很简单。一个微小的 v6 前缀可以包含整个 v4 地址空间。当结果只有 A 记录时,Fancy DNS 会在此前缀中生成 AAAA 记录。而且双栈NAT可以进行简单的无状态1对1转换,速度快且不需要配置。

    与走另一条路相反。假设远程服务的地址是 2001:db8:114:6614:240e:6d9d:8a1d:59d3 整个 32 位 IPv4 地址空间只能包含最后两位数字组,即部分 8a1d:59d3。因此,花哨的 DNS 技巧和未经修改的应用程序将不起作用。理论上,双栈代理可以终止 v4 连接并使 v6 连接出去。但是,您将如何获取 v6 地址,解析应用程序流量以查找 DNS 或 TLS 中的名称?如何保持流量持续进行,有状态 NAT?

    然而,Kubernetes 对于网络有自己的想法,EKS 也不例外。虽然 EKS 不仅仅采用 NAT64,但它还具有双堆栈设计。v6 分配给 pod,但也只是主机 v4,在 v4 到互联网的情况下,它会经过几次 NAT。

    请注意应用程序上的 v6 到互联网上的 v6 是多么简单,在没有 NAT 的出口互联网网关之外。获得与 v6 外部资源的连接是您的组织这样做的原因。除了消除对根据 Pod 数量调整子网大小的担忧之外。

    是的,在现代互联网上实现这一点是一个项目。EKS 上 IPv6 清单中的第一件事是必须使用 v6 创建集群。

    你可以做这个项目。使用这个新设计创建第二个集群。在其上启动新应用程序,并在有维护机会时迁移其他应用程序。如果出现问题,制定恢复计划,恢复到之前的状态。在最坏的情况下,旧集群可以按原样重建。毕竟,这是基础设施即代码。

    • 1

相关问题

  • 网络定价如何在云平台中准确运作?我应该如何避免专门的定价攻击?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助
subwaysurfers
my femboy roommate

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve