排除指定连接的FastTrack加速
当使用FastTrack时,FastTrack只能处理Main路由表中的数据包,当通过ip rule或mangle创建策略路由时(如使用mangle action=mark-routing规则的连接处理,mark-routing会使用新的路由表),新的路由表将不会被FastTrack处理,甚至非Main路由表的连接出现错误。
对于RB、CRS和CCR硬件路由器涉及到策略路由的配置,由于mangle标记的策略路由无法被FastTrack加速,不希望影响到策略路由的网络连接,又希望加速走main路由表的网络连接,可排除配置这部分主机或者连接标记。
下面的实例排除了主机192.168.88.111被FastTrack加速,首先创建两条防火墙规则,源和目标IP地址都接受established,related的连接状态,先被防火墙处理接受通过。
/ip firewall filter add action=accept chain=forward connection-state=established,related src-address=192.168.88.111 add action=accept chain=forward connection-state=established,related dst-address=192.168.88.111 add action=fasttrack-connection chain=forward connection-state=established,related add action=accept chain=forward connection-state=established,related
注意:此排除的两条规则,需要放在fastrack规则之前
由于Fasttrack的特殊性,mangle策略会被绕过,官方也提醒在使用mangle的mark-routing标记时,会导致路由连接错误,在使用中发现会影响mangle策略路由标记的连接,导致走策略路由的连接失败。这种情况可以通过排除策略路由的连接标记,让FastTrack不对此路由连接进行处理,只加速默认路由的连接。
考虑下面这个场景:需要标记源IP地址是192.168.10.0/24,到目标IP是8.8.0.0/16的路由标记,在ip route走指定的网关。此时FastTrack会绕过mangle标记的策略,当这部分连接会进入到fastrack策略,导致连接失败,为了避免影响策略的访问,可以设置FastTrack排除路由连接标记的设置
创建路由连接标记和路由标记策略(需要先创建连接标记)
/ip firewall mangle add action=mark-connection chain=prerouting dst-address=8.8.0.0/16 \ new-connection-mark=route_con passthrough=yes src-address=192.168.10.0/24 add action=mark-routing chain=prerouting connection-mark=route_con \ new-routing-mark=route passthrough=yes src-address=192.168.10.0/24
添加FastTrack规则,排除连接标记是route_con,不被FastTrack处理
/ip firewall filter add action=fasttrack-connection chain=forward connection-mark=!route_con \ connection-state=established,related
这样排除了到8.8.0.0/16连接的FastTrack加速