IPv6 无状态自动配置路由通告

IPv6 无状态自动配置路由通告

在我们的网络中,我们有一个 Cisco 路由器作为核心路由器,将我们所有的站点连接到主站点。我们还有一个 Linux 防火墙将我们连接到互联网。

Site 1 --\
         +-------+   LAN   +----------------+
Site 2 --| Cisco |---------| Linux Firewall | ------ Internet
         +-------+    |    +----------------+
Site 3 --/            |
                    wksta

Cisco 与防火墙之间的 LAN 有(例如,不是实际的)2001:DB8::/64,其余部分2001:DB8::/48分布在其他站点之间。

目前,Cisco 路由器正在2001:DB8::/64LAN 上进行广告宣传,而 Linux 防火墙没有进行任何广告宣传。因此,Cisco 将自己宣传为默认网关,并wksta首先将任何 Internet 绑定流量发送到 Cisco 路由器,然后由 Cisco 路由器重定向到防火墙。

有没有更好的方法?我希望能够向2001:DB8::/48应该指向 Cisco 路由器的 LAN 进行通告,但默认网关应该是 Linux 防火墙。使用无状态自动配置可以实现这一点吗?

思科路由器的当前接口配置:

interface FastEthernet0/0
 ipv6 address 2001:DB8::1/64
 ipv6 enable
!

答案1

我认为仅通过路由器广告是无法做到这一点的。

我的理解是您需要以下设置:

2001:DB8::/48 via cisco
default via linux

问题是路由器通告不允许您指定静态路由。它们只是告诉所有主机本地网络上有哪些子网可用(这意味着可以直接访问它们,而无需网关)。您的远程站点不在本地网络上,因此无法直接访问它们,因此路由器通告不会有帮助。

您可以通过在所有本地机器上添加静态路由来实现这一点,但这很快就会变得烦人。

我建议禁用 Cisco 设备上的路由器广告,并在 Linux 机器上配置它们。然后,在 Linux 机器上通过 Cisco 设备为 2001:DB8::/48 添加静态路由。

您的内部流量仍会首先访问 Linux 机器,但您无法仅通过路由器通告来避免这种情况。

可能能够使用某种 IPv6 邻居代理来实现这一点(这会使所有远程主机看起来都与您的工作站位于同一局域网上),但除非您真的别无选择,否则我不建议这样做。

答案2

Linux 防火墙应宣布自己是路由器生命周期 > 0 的默认网关。如果 cisco 路由器仍将其作为默认网关进行宣传,请尝试将防火墙上 radvd.conf 中的 AdvDefaultPreference 参数设置为 High。然后,共享 LAN 段上的客户端应自动选择 Linux 防火墙作为默认网关。

相关内容