• 搜索
  • 夜间模式
    ©2015-2025  Ethan's Blog Theme by OneBlog
    搜索
    标签
    # Amule # Gargoyle # LUCI # VIM # Python # Nginx # 反代 # Ansible # Apache # LNMP
  • 首页>
  • >
  • 正文
  • IPv6部署尝试

    2022年09月18日 67 阅读 0 评论 1506 字

    硬件环境

    出口路由:Openwork
    防火墙(路由模式):Fortigate (局域网互联路由)

    网络环境

    局域网已有IPv4,现新增IPv6环境。
    运营商分配前缀(PD):2408:3333:4444:6ab0::/60
    运营商分配IPv6出口地址:2408:4444:4423:x::x/64

    子网划分

    需要知道的是,我们首先拿到一个IPv6前缀后,需要规划子网段,从而使得局域网互联路由下的终端都能拿到IPv6地址,当然字网划分的前提是运营商给你分配了一个小于64位长度的前缀。像这个环境中,我们假设只有两跳路由,那么我们要确保整个网络环境能分配的地址都在2408:3333:4444:6ab0::/60内。
    互联网出口地址已经由运营商分配,不需要我们操心,我们需要分配Openwrt与Fortigate互联的地址段、Fortigate下的LAN地址段。因此整个前缀我们可以简单划分为两个字网:
    2408:3333:4444:6ab0::/61,用于路由器互联,有点奢侈。
    2408:3333:4444:6ab8::/61,用户Fortigate下的终端地址分配。

    初尝试

    Openwrt LAN的DHCPv6设置如下,为默认不变,其实不开DHCPv6也可以

    • 路由通告服务: 服务器模式
    • DHCPv6服务:服务器模式
    • NDP代理:禁用
    • DHCPv6模式:有状态+无状态

    Openwrt LAN口设置分配前缀长度为61,IPv6地址2408:3333:4444:6ab0::1

    Fortigate与Openwrt互联端口分配地址为2408:3333:4444:6ab0::2/61

    Fortigate LAN口IPv6地址设置为手动2408:3333:4444:6ab8::1/61

    Fortigate LAN开启DHCPv6,设置为SLAAC及手动指定DNS地址。

    Fortigate配置IPv6静态默认路由,下一跳指向 2408:3333:4444:6ab0::1 ,原则上这里下一跳应该是Openwrt的链路本地地址,可以减少路由表查询。

    Fortigate配置安全策略,放行所有IPv6流量。

    Fortigate配置NAT策略,来自LAN的所有IPv6流量均不做NAT转换。

    Openwrt配置静态IPv6路由,目的地2408:3333:4444:6ab8::/61,下一跳2408:3333:4444:6ab0::2

    配置验证

    1. 从Fortigate使用默认配置ping 2408:3333:4444:6ab0::1 正常。
    2. 从Fortigate使用默认配置ping 运营商IPv6 DNS地址正常。
    3. 从Fortigate下的LAN ping 2408:3333:4444:6ab0::1正常。
    4. 从Fortigate下的LAN ping运营商IPv6 DNS地址正常。

    疑难问题

    1. Fortigate下的设备无法通过DHCPv6获取IPv6地址,但可手动设置IPv6地址,指定网关后可访问公网IPv6。
      解决办法:除开启SLAAC外,在DHCPv6配置中指定有状态服务器,指定IPv6地址分配范围。
    2. 运营商IPV6前缀在家宽环境下经常会变,导致静态配置IPv6地址无法使用。
      解决办法:待研究IPv6 Prefix delegation可能可以解决。
    本文著作权归作者 [ Ethan ] 享有,未经作者书面授权,禁止转载,封面图片来源于 [ 互联网 ] ,本文仅供个人学习、研究和欣赏使用。如有异议,请联系博主及时处理。
    — END —
    Copyright©2015-2025  All Rights Reserved.  Load:0.006 s
    Theme by OneBlog V3.6.3
    夜间模式

    开源不易,请尊重作者版权,保留基本的版权信息。