将整个 IPV6 子网分配给本地主机

将整个 IPV6 子网分配给本地主机

我有一个子网,例如 2001:face:feed:beef::/64。我想将它们全部分配给我的服务器,而不必手动分配每个地址,例如 2001:face:feed:beef::[123456789abcdef]...

在 ipv4 中,我们可以使用 DNAT 来执行此操作,但在 ipv6 中没有 NAT 概念,所以我想知道这是否可行并且是否有一些解决方法。

答案1

您不能(使用普通的 IP 堆栈)。IP 寻址并非旨在这样工作。您几乎肯定无法为接口分配那么多地址(使用脚本或类似脚本);数据结构中的某个地方会有硬编码限制来阻止此类事情发生。

答案2

回答于209203236626

简而言之,你需要三样东西:

  1. 到您机器的静态路由(它不会回答 NDP)
  2. 内部路由,让机器知道它应该处理流量
  3. 如果您希望能够监听这些地址中的任何一个,您还必须设置 sysctl net.ipv6.ip_nonlocal_bind=1(Linux 内核 >= 4.3)

相关内容