故障转移是一种备份操作模式,仅在主系统由于系统故障或任何计划停机时间而变得不可用时,系统组件(如网络)的操作才由辅助系统承担。

在本教程中,我们将看到如何设置故障转移和负载平衡,以使pfSense能够将流量从LAN网络负载平衡到多个WAN(这里我们使用了两个WAN连接,即WAN1WAN2)。

例如,如果某些WAN连接由于某些网络连接问题而脱机,则在此情况下,你的第二个WAN将自动从WAN1切换到WAN2,方法是ping一个系统IP,如果没有从系统回复,它将自动从WAN1转移到WAN2,反之亦然。

负载平衡将我们的两个WAN连接组合成一个强大的互联网连接。例如,如果WAN1的连接数为2MB,WAN2的连接数为2MB,则它将两者合并为一个4MB的互联网连接以稳定网络连接速度。

要设置故障转移和负载均衡,我们至少需要三个至少100MB / 1GB的以太网卡,如下所示。第一个网卡用于具有静态IP的LAN,另外两个用于DHCP。

本教程的网络环境设置
LAN:192.168.1.1/24

WAN1:来自DHCP

WAN2:来自DHCP

在继续下一步之前,先必须安装pfsense的,这里不做介绍。我们从配置开始介绍。

第1步:配置网络接口

1.  安装pfSense之后,将看到带有可用接口的以下屏幕来配置网络。

2.  选择第一个接口em0作为WAN1,IP将从DHCP分配,第二个接口em2作为LAN,并再添加一个接口em01 (可选),稍后将更改为具有DHCP IP地址的WAN2。以下是分配的最终接口。

3.  配置网络接口后,输入以下地址登录pfSense配置负载均衡。

https://192.168.1.1

4.  登录GUI后,您只能看到接口小部件下的WAN,LAN,如下所示。

5.  要配置接口 ,请从TOP菜单中选择“ Interfaces ”  ,然后单击WAN,  将描述添加到 WAN1,然后单击Save以进行更改。

再次单击Interfaces并选择 OPT1  并启用接口,将描述从OPT1更改为WAN2

接下来,选择IPv4配置类型选为DHCP 。

6.  在WAN2 配置页面底部  ,取消阻止专用网络  以取消阻止来自本地网络的流量,并阻止bogon网络。点击保存保存更改。

进行上述更改后,会要求你在页面顶部应用更改,单击以确认更改。

现在,在仪表板的“ Interfaces ”小部件中获得三个接口。

我们为pfsense配置了2个WAN。下面我们来配置广域网的负载均衡。

第2步:配置监控IP

7.  在为pfsense配置负载均衡之前,我们需要为负载均衡配置一个监控IP。导航到顶部的“ System”菜单并选择“ Routing ”。

8.  在“ Edit gateway ”页面中,输入WAN1和WAN2的监控IP的IP地址。在WAN1中,我将使用我的ISP DNS服务器IP 218.248.233.1。WAN2将使用Google公共DNS 8.8.8.8。

9.  添加监控IP后,点击Advanced  , 在DOWN栏填入数值,这里我使用3秒。默认值为10秒。

对WAN2使用相同的设置。在这里,我使用Google DNS而不是使用ISP DNS。点击保存退出。

点击应用更改。

第4步:配置网关组

10.  配置网关监控后,单击Groups创建Gateway Group。点击右侧的+按钮添加新的GW组。

11. 输入Group Name  并为WAN1WAN2选择Tier(层级),  通过单击保存进行更改。

本例中,组名为SysVNADSL ,Tier选择 tier1。要获得负载均衡,我们必须在同一层中选择多个网关。

第5步:配置防火墙规则

12.  创建Group,现在应该为创建的组创建防火墙规则,从顶部导航到“FIREWALL ”并选择“ RULES ”。

选择LAN接口并编辑配置。

13.  在页面底部,在Advanced features下,单击Gateway选项,找到开始创建的网关组“ TecmintADSL ”,然后单击SAVE,  以应用更改。

应用修改后,你可以看到如下所示的网关和高级图标。

我们已成功设置了负载均衡,现在让我们验证它是否工作正常。

第6步:测试负载均衡

14.  要验证负载均衡,请从顶部的菜单中选择“ Status ”,然后单击“ Gateways”来验证两个网关是否都处于联机状态。

15.  要获得实时图表,我们可以使用“ Status ”菜单下的“ Traffic Graph ” 。

第7步:使用pfSense设置故障转移

16.  要在Pfsense中设置故障转移,我们需要创建不同的Tier(,导航到“ System ”菜单并选择“ Routing ”。我们可以看到网关已经分配给负载均衡,现在我们创建两个用于故障转移的组。

System: Gateway Groups下选择“ Groups ”  。在这里,我们将创建两个组,第一个组将为WAN1创建,   第二个组为WAN2,如果WAN1发生故障,它将自动切换到WAN2,反之亦然。

WAN1Failover的名义创建一个组  ,选择 WAN1Tier1  ,  WAN2Tier2,  WAN1失败则切换到WAN2。 为Tigger Level选择Packet Loss,当ping回复DNS丢包时,它将切换到WAN2。

17.  同理创建WAN2Failover组。选择WAN2Tier2 ,  WAN2Tier1,如果WAN2失败,就会切换到WAN1。Tigger Level选择Packet Loss。如果ping不通DNS,它将切换到WAN1。

现在,我们将获得三个组,第一个用于负载均衡,第二个和第三个用于故障转移。

步骤8:配置防火墙规则来进行故障转移

18.  现在,我们需要为故障转移配置防火墙规则,导航到“Firewall ”并选择“ Rules ”。在LAN下,我们添加新的故障转移规则。

点击   右侧的+符号添加新规则。

对应选项如下:

  1. Interface = LAN

  2. Protocol = any

  3. Source = LAN net

  4. Description = What ever you wish for fail-over。

Advanced features下,单击Gateway选项,选择WAN1Failover并保存。

别外再添加一条规则,重复相同的配置,Gateway选项选择WAN2Failover并保存。

19.  添加上述规则后,你可以看到以下列出的负载均衡和和故障转移规则。

20.  现在为网关分配至少一个DNS服务器并应用更改,以确保能正常检查网关的状态。

从“ System”菜单中选择“ General Setup”,分别设置我们在网关下分配的DNS。

选择“ Status ”菜单,然后单击“ Gateways ”以获取状态。

结论

上述pfsense负载均衡和故障转移设置只能在家庭或办公室环境中使用,如果你有双ISP连接的话。我们可以使用此设置来构建具有故障转移功能的LB,而不用购买带有LB选项的品牌专用路由器。