ISP 需要提供什么才能将本地 IPv6 /56 范围路由到多个 VLAN

mr.*_*r.b 2 router routing ipv6

我有一个理论问题。网络拓扑是这样的:

ISP <--- eth0 -> Router1 <- eth1 ----+--> VLAN1
                                     '--> VLANx
Run Code Online (Sandbox Code Playgroud)

为了便于论证,我们假设 Router1 是 Linux 3.2.x 设备。

假设我希望从我的 ISP 接收单个 /56 范围。我的 ISP 必须向我提供哪些信息,以便我可以:

  1. 在路由器 1 上具有本机 IPv6 连接
  2. 在每个 VLAN 上通告分配的地址空间的 /64 段,以便 LAN 中的客户端能够正确地自动配置自己?

为了进一步解释一下,我问这个问题,以便我可以了解我必须要求我的 ISP 为我提供什么,以便能够达到目标 1 和 2。据我所知,当我得到只有一个 IP 范围(/64、/56 或 /48)和该范围的网关地址,无法将该范围的一部分路由到路由器另一侧的物理隔离网络。

Mic*_*ton 5

你不会得到一个网关地址已分配给您和路由到您拥有的分配/ 56或任何IPv6的块。如果您以某种方式这样做,您礼貌地要求 ISP 让知道他们在做什么的人接听电话。或者也许不够礼貌。

通常,您根本不必担心上游 IPv6 地址,因为它会在您插入路由器后立即自动配置。大多数 ISP 似乎都使用 DHCPv6(带有前缀委派)来执行此操作,但如果您有静态分配的前缀,也可以直接使用 SLAAC 来完成。

一旦 /56 进入您的网络,您就可以随意对其进行子网划分。

下面显示了一个可能的(仅部分充实,并且可能不是非常有用的)网络设计的示例。在任何情况下,您与 ISP 的上游连接的 IPv6 地址由 ISP 提供,并且在您分配的前缀之外。您通常只需要担心内部接口。此示例假设您有一个带有集成 4 端口交换机的边缘路由器,例如许多小型企业或 SOHO 路由器。

IPv6 Address: (static, DHCPv6)  IPv6 address: (SLAAC)
2001:db8:3481:2000::2/64        2001:db8:3481:2000::021d:e1ff:fe1a:630
Gateway: (static, DHCPv6)       Gateway: (SLAAC)
2001:db8:3481:2000::1           fe80::0208:30ff:fe9d:aa61%ether1

ISP <-----+
          |ether1
+---------+---------+
|    Edge Router    |
|-------------------|  Your Prefix:    __
|        \ /        |  2001:db8:3481:a700::/56
|         X         |  ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
|        / \        |  Switch Ports example:
|-------------------|
| VLAN trunk/switch |  1: VLAN 1-64    2001:db8:3481:a700::/58
+---------+---------+  2: VLAN 65-128  2001:db8:3481:a740::/58
          |ether2      3: VLAN 129-192 2001:db8:3481:a780::/58
          +----> Core  4: VLAN 193-256 2001:db8:3481:a7c0::/58
Run Code Online (Sandbox Code Playgroud)

在您的核心下游,您可以在核心路由器(甚至第 3 层交换机、更多 SOHO 路由器等)上进一步对这些进行子网划分。我还假设每个 /64 都在自己的 VLAN 上,但是否这样做是另一个细节,您必须自己解决。

您还可以使用带有前缀委派的 DHCPv6 来实际处理寻址,这可能是最简单的。或者您可以使用 SLAAC,这需要更多设置,甚至手动分配,我通常不推荐这样做,因为它太费力了。