当主机或网络通过默认网关以外的其他路由器可达时必须使用静态路由。 pfSense知道直接连接到它的网络,并按照路由表的指示到达所有其他网络。 在内部路由器连接其他内部子网的网络中,必须为该网络定义一条静态路由才能到达。 通过这些其他网络的路由器必须先添加为网关。
静态路由在系统>路由管理,静态路由选项卡上设置。
添加路由:
导航到系统 >路由管理, 静态路由选项卡
单击 添加一条静态路由
填写如下配置:
目标网络:指定使用此路由可达的网络和子网掩码。
网关: 定义通过该网络到达的路由器。
禁用: 设置是否不使用静态路由。
描述: 输入描述性文字供管理员参考
单击保存
单击应用更改
管理一个已经存的静态路由:
在现有条目右侧单击 编辑该静态路由
在现有条目右侧单击 删除该静态路由
在现有条目右侧单击 禁用该静态路由
在现有条目右侧单击 启用该静态路由
下图是网络拓扑:
静态路由
由于上图静态路由中的192.168.2.0/24网络不在直接连接到pfSense的接口上,因此需要使用静态路由,以便防火墙知道如何到达该网络。 如前所述,在添加静态路由之前,必须首先定义网关。
静态路由配置
防火墙规则调整也可能是必需的。 如果使用自定义LAN规则,则必须允许通过LAN上的静态路由允许网络访问。
在很多情况下,当使用静态路由时,通信将不对称地结束。 这意味着流量在一个方向上将沿着不同的路径而不是在相反方向上进行传递。如下图所示:
非对称路由
从PC1到PC2的流量将经过pfSense,因为它是PC1的默认网关,但是相反方向的流量将直接从路由器到PC1。 由于pfSense是一个有状态的防火墙,它必须看到整个连接的流量才能正确地过滤流量。 在这种非对称路由的情况下,任何有状态的防火墙都会丢弃合法的流量,因为它不能在两个方向都看不到流量的情况下保持正常状态。 这通常只影响TCP,因为其他协议没有正式的连接握手防火墙可以识别用于状态跟踪。
在非对称路由场景中,有一个选项可用于防止合法流量被丢弃。 该选项添加了防火墙规则,允许使用更宽松的一组规则选项和状态处理来定义在静态路由中定义的网络之间的所有流量。 要激活这个选项:
单击系统 > 高级设置
单击 防火墙/NAT选项卡
选中在同一接口上绕过流量的防火墙规则
单击保存
或者,可以手动添加防火墙规则以允许类似的流量。 需要两个规则,一个在流量进入的接口选项卡上(例如局域网),另一个在“浮动”选项卡上:
导航到防火墙 > 规则策略
单击流量将进入的接口的选项卡 (如 LAN)
单击 在列表顶部添加新的规则
进行如下设置:
协议:
TCP
源地址:
本地系统利用静态路由的地址 (如 LAN Net)
目的地址:
路由的另一端的网络
TCP 标识:
设置为任意标识 (在高级选项下)
状态类型:
选Sloppy 状态(在高级选项下)
单击 保存
单击浮动选项卡
接口:
流量来源的接口 (如 LAN)
方向:
Out
本地系统利用静态路由的地址 (如 LAN Net)
如果来自其他来源或目的地的其他流量在TCP标志(例如“TCP:SA”或“TCP:PA”)在防火墙日志中显示被阻止,则可以调整或复制规则以匹配该流量。
注意
如果需要在静态路由子网之间进行流量过滤,则必须在路由器上进行过滤,而不是在防火墙上完成,因为防火墙不在网络上,这样可以有效控制流量。
本文转自 鐵血男兒 51CTO博客,原文链接:http://blog.51cto.com/fxn2025/2044687,如需转载请自行联系原作者