IPv6 路由设置(使用本机 IPv6)

IPv6 路由设置(使用本机 IPv6)

我负责管理一家小型组织的网络。由于只熟悉 IPv4,我不确定如何最好地使用 IPv6。

现有的 IPv4 设置

我们有 13 个公共 IPv4 地址,它们都通过 NAT 转换为内部 RFC 1918 地址(其中一个地址为用户提供一对多映射,其余地址为服务器提供一对一映射)。所有传出流量都流经我们 ISP 的(单个)上游网关。我们自己的路由器运行 Linux。

在精美的 ASCII 艺术中,网络看起来类似于此:

client     <- LAN ->              router              <- WAN ->  upstream
10.0.0.x             10.0.0.1   <- NAT ->  192.0.2.2             192.0.2.1

IPv6 设置

当然,有了 IPv6,就不需要 NAT,因为我们已经分配了四个 /64 网络(假设为“9:9:9:0::/62”),其中一个包含上游路由器。类似的 IPv6 网络的标准是什么?

A)可能的IPv6网络布局:

client     <- LAN ->              router              <- WAN ->  upstream
9:9:9:1::x           9:9:9:1::1           9:9:9:0::2             9:9:9:0::1

那么问题就是,如何让上游网关通过我们的路由器路由数据包。使用 NAT 和 IPv4,这很简单:我们的路由器拥有地址并响应针对它们的 ARP 请求。但现在,上游网关希望在其自己的子网上找到 LAN 主机,但失败了。

1) 我研究过 NDP 代理(ARP 代理的 IPv6 版本),让路由器通告 9:9:9:1/64 中的所有地址。但是,至少 Linux 似乎需要单独的 Netfilter 条目每个 IP 地址,这在 IPv6 中当然是完全不可能的。我是不是漏掉了什么?

2) 似乎可以使用 NDP 路由器通告将我们的路由器通告为 9:9:9:1::/64 的“下游网关”。但无法使其工作。也许我们的 ISP 忽略了路由器通告?

3) 我们是否需要要求我们的 ISP 手动配置其上游网关以使用我们的路由器?这似乎很奇怪,在 IPv6 下是必要的,而在 IPv4 下则不需要。

答案1

上游路由器不应假设其本地接口上有完整的 9:9:9:0/62,而应使用路由器的 IP 和中间网络前缀的长度对其进行编程。他们的路由器需要进行编程,基本与您的路由器一样。

(请注意,WAN 网络不必使用您已分配的 9:9:9:0/62 网络的子集;您的 ISP 可能会为此链路分配特殊的 /126 或 /127 网络,具体细节因 ISP 而异)

您的 ISP 上游路由器始终必须进行编程,IPv4 或 IPv6。“问题”在于大多数 IPv4 部署仅具有外围网络,而大多数 IPv6 网络将完全(正确)路由。

相关内容