1、有几个出口就要配置几条默认路由,可以根据需要使用路由的优先级来控制选路。
比如有三个出口:

这样配置的目的一来为了多出口可以做冗余相互备份,二来当每个出口都有映射配置需求的
话可以成功的提供映射服务。
2、有几个出口一般都要配置几个出口的源地址转换:

当最优先的默认路由切换了,内网从另外一个运营商线路上网,就必须要有对应出口的
源地址转换。正因为源地址转换配置中都指定了流出网口,所以从不同出口流出的流量都可
以正确的匹配到对应的转换规则。比如从联通口 eth5 出去的流量,肯定只能匹配 eth5 口的
源地址转换,也就是第三条规则。
2、“抗地址欺骗攻击”导致的部分出口映射无法访问

抗地址欺骗攻击能检测伪造的源地址流量,比如 1.1.1.1 地址想要访问 2.2.2.2,但是防
火墙上配置了只允许 3.3.3.3 访问 2.2.2.2,那么就可能会有人恶意的伪造报文,在 1.1.1.1 的
主机上伪造源为 3.3.3.3 目的为 2.2.2.2 的报文发送到,此时如果没有抗地址欺骗攻击
的能力,就会直接允许这个报文通过从而导致绕过安全策略。
抗地址欺骗攻击是根据“源路径查询”的方式来检查的,收到报文会先进行“反向路径
检测”,查看报文的源地址所在的路由的流出接口是否和收到这个报文的接口一致,不一致
就会直接丢弃。比如上述的例子中,有一条静态路由去往 3.3.3.3 流出网口为 eth1,
此时 1.1.1.1 终端伪造源为 3.3.3.3 访问 2.2.2.2 的流量从 eth2 口进来,经过“反向路
径检测”就可以发现报文的入接口 eth2 和反向查出的 eth1 接口不匹配,就可以丢弃该报文。
之所以在多出口的环境中不能开启这个功能,是因为真实访问的流量可能被视为攻击而
丢弃。比如在上面的例子三个互联网出口,从公网来访问移动出口的映射服务,报文从 eth0
口入,进行“反向路径检测”,查询的路由是优先级为 1 的电信出口的路由,路由的
流出网口是 brg1,和报文的流入网口 eth0 不匹配,即视为攻击弃包处理。
4、策略路由导致内部用户无法访问映射
比如当前有一条策略路由,指定了内网的 192.168.0.0/24 网段走移动上网(移动出口下
一跳是 10.1.5.200):

同时电信口、移动口、联通口分别对内网服务器做了映射:

这样的配置下,内网的 192.168.0.0/24 将无法访问联通和电信出口地址的映射,因为
192.168.0.0/24 到的所有流量都会被策略路由指到从移动接口 eth0 口出去了,无法访
问其他公网出口的映射服务。
所以需要对内网访问映射的流量做额外的配置:

指定内网 192.168.0.0/24 访问服务器 172.16.1.0/24 网段的流量从内网口转出,这些流量
才能送到内网服务器。这条细化的策略路由的优先级要设置的比前面那条小(更优先)。
对于 3609U7 之前的版本,策略路由的配置方式:

配置的思路是一样的,只是之前的版本中可以通过指定 main 表,代表 192.168.0.0/24
访问 172.16.1.0/24 的流量不匹配策略路由,查静态路由表转发。由于到内网服务器
肯定有静态路由,所以就能够匹配正确的接口。
5、一定不要关闭“基于状态回包”
