我正在尝试在思科路由器上设置 ipv6 6rd,我有以下信息:
6rd IPv6 Prefix: 2001:2002::
6rd Border Relay IPv4 Address: 217.209.228.166
6rd IPv6 prefix length: 32
6rd IPv4 Prefix length: 0 bits
据我了解,我应该创建一个包含以下内容的隧道接口:
interface Tunnel0
ipv6 address DELEGATED_PREFIX ::/128 anycast
ipv6 enable
tunnel source GigabitEthernet8
tunnel mode ipv6ip 6rd
tunnel 6rd prefix 2001:2002::/32
tunnel 6rd br 217.209.228.166
GigabitEthernet8 是我的 WAN 接口并且正在运行:
show tunnel 6rd
显示通用前缀 2001:2002:xxxx:xxxx::/64,其中 x 代表我分配给 WAN 接口的 IP 的十六进制表示法。
尝试使用 DELEGATED_PREFIX 在 LAN 接口上设置 ipv6 地址会返回错误,提示该地址与 Tunnel0 上配置的 /128 地址重叠。
我不知道需要做什么才能使其正常工作,如果能提供任何帮助我将不胜感激!
更新了 Sander Steffann 的回答评论:
我的 ISP 仅为每个客户提供一个 /64 网络,并且必须是他们的 32 位前缀与他们分配给我的 32 位 IP 地址的十六进制表示法相结合。
我见过几个消费级路由器的配置示例,它们使用 6rd 与我的 ISP 设置 ipv6。它们只获得一个 /64 网络,但这已经足够了,而且似乎运行良好。
我是否可以用另一种方式配置它而不使用隧道接口,以便不为隧道消耗 /64 网络?
据我了解,我没有办法获得更大的前缀,没有可以在任何地方削减的位。
更新 2:
我已经创建了一个新的 VLAN 接口
ipv6 address DELEGATED_PREFIX ::/64 eui-64
隧道接口上的未编号命令
ipv6 unnumbered Vlan10
我还有一个指向隧道接口的默认 ipv6 路由,但尝试 ping ipv6 资源(例如 Google 公共 dns:2001:4860:4860::8888)失败。
检查隧道接口发现有 0 个数据包输入,我不确定如何解决这个问题。
答案1
您正在将整个 IPv4 地址用作 IPv6 前缀的一部分。您配置的 32 位前缀加上 32 位 IPv4 地址为您提供了 /64。使用 /64 您只能拥有一个 LAN,并且您已经在隧道本身上配置了它。这不会为您留下任何用于其他网络的 /64 前缀。
您需要为所需内容设置更大的前缀。/63 会给您两个 /64,/62 会给您四个,等等。因此,您需要在某些地方削减一些位。
您配置 6rd 的方式更像 6to4。6rd 的理念是将您自己的 IPv6 前缀映射到您自己的 IPv4 前缀。这些 IPv4 地址可能是私有地址。例如,如果您将 10.0.0.0/8 映射到 IPv6 /32,则只需映射 IPv4 地址的最后 24 位。32+24 为每个 IPv4 地址提供 /56。这允许您为每个 IPv4 地址配置 256 个 IPv6 网络。