概述
针对企业接入IPv6,群友踩花大盗写了一篇关于 pfSense 和 OPNsense 静态IPv6接入如何进行配置的教程,现转载如下,有需要的网友可以参考。
为简化教程配置,本文的IPv6地址均采用ISP分配的全局v6单播地址。
拓扑图
业务前缀:240e:2002:2220:0000::/60,前60比特位固定,61-64比特位可变。
配置的时候可以将一个60前缀拆分为16个64前缀, 拆分后可用的64前缀如下:
240e:2002:2220:0000::/64
240e:2002:2220:0001::/64
240e:2002:2220:0002::/64
……………
240e:2002:2220:000f::/64
为便于理解, 防火墙之间接口名称用设备名称表示,例如 A-B的接口,在A和B上都重命名为AB。
路由协议
- A-B 静态路由,A添加去往B(pfSense) LAN一侧的的路由,下一跳指向pfSense B的Wan接口地址。
- A-C 启用OSPFv3,注意:C添加v6默认网关后,不能在WAN再指定网关。如果指定,OSPFv3邻居可能无法建立(原因未知),C 直接通过A通告的缺省路由访问互联网。
配置v6网关
本示例中,ISP未提供v6网关地址(中国移动提供的静态IPv6地址可能会存在这种情况)。将WAN地址配置为SLACC或者DHCPv6均未能获取到v6地址。因此可以确定运营商接口未开启DHCPv6和IPv6的RA服务。猜测其网段地址为v6地址的首个或者最后一个。在A的WAN接口配置ipv6地址后,使用OPNsense自带的ping工具,在未配置网关地址的情况下,顺利ping通了204e:1001:1001:1。
可以判定该ISP接口的全局单播v6地址为204e:1001:1001:1。因v6网关地址通常使用本地链路地址(v6地址可能经常修改,而Link-local地址通常自动生成不会经常修改),因此还需要确定网关的Link-Local地址。ping通后,通过接口-诊断-NDP表查看邻居的link-local地址为 fe80::be24:11ff:fe6a:ac9d。
为OPNsense A 配置v6缺省网关。转到系统>网关>配置,为WAN接口配置一个v6网关,网关地址输入前面查找的Link-Local地址,并选中上游网关选项。
在WAN接口上,选中前面创建的v6网关。
点击保存,返回网关,可以看到该v6网关已连通。
安装FRR插件
转到系统>固件,插件选项卡,搜索 frr 插件并安装。
转到路由>常规,选中启用FRR路由功能,并启用日志记录和防火墙规则。
与pfSense B 对接设置
先在OPNsense A 给LAN接口配置一个v6地址。转到接口>LAN,为接口配置一个V6地址。
为去往pfSense B的LAN侧配置静态路由。转到路由>静态,选中启用选项。
转到路由>静态,路由选项卡,添加去往pfSense LAN侧的静态v6路由。
在OPNsense A 上添加防火墙规则,放行LAN接口所有流量。
配置pfSense B上WAN接口v6地址和网关 此处网关可使用Opnsense A AB接口的全局单播地址,也可使用AB接口的链路本地地址。
配置pfSense LAN口v6地址
开启LAN接口RA或DHCPv6 ,可以使用用RA通告DNS或者DHCPv6发布的DNS。两者选一或者都开启也可以。
在pfSense B的客户端电脑上,查看是否能获取到前缀为 240e:2002:2220:1:: 的IPv6地址。
测试是否能ping通公网。
与Opensense C 对接设置
配置OPNsense A的LAN接口v6地址,防火墙LAN接口放行所有v6+v4流量。
在OPNsense A上,转到路由>OSPFv3,配置OSPFv3。选中启用,输入路由器ID,并选中通告默认网关。
转到路由>OSPFv3,接口选项卡,为AC开启OSPFv3进程,并划分到骨干区域。
在Opnsense C 上配置WAN、LAN接口的v6地址 注意不要配置网关!否则OSPFv3无法建立邻居,原因未知。
在OPNsense C 上开启OSPFv3进程,并引入直连路由。
完成后,查看一下当前FRR运行配置是否正常。
在Opnsense A 和 Opnsesne C 查看一下当前路由表,O表示通过OSPF到的路由。
可以看到,A 已经学习到了 C 的LAN一侧路由,C 也学习到了 A 通告的v6缺省路由。在 C 上开启LAN接口的RA和 DHCPv6。
检查OPNsesne C 后面的客户端,查看否获取到240e:2002:2220:4::/64 的v6地址。
测试能否ping公网。
至此,所有配置完成。
相关文章: