Reverse Path Forwarding
fungsi reverse path forwarding fungsinya antara lain mencegah dari ip spoofing and routing loop.
reverse path forwarding terbadi 2 mode :
1.feasible path : feasible path modenya mengallow selama masih ada salah satu table routingnya IP yang bersangkutan
2.Strict fortigate akan mencocokkan the best route berdasarkan routing-table yang best-pathnya paling the best banget lah wk..wk..wk..(nganu..om)
ha..ha..ha.bingung bahasanya
defaultnya RPF ini adalah enable kita tidak bisa membuatnya menjadi disable
tapi kita bisa mengubahnya menjadi strict makanya diatas ada 2 mode feasible path dan strict

Kita lihat di topologi atas pada fortigate mempunyai 2 kaki yang terkoneksi
link1 menuju 192.168.100.0/24 dan link2 menuju 192.168.103.0/24
jadi tabel routingnya sebagai berikut :
Fortigate# get router info routing-table static
Routing table for VRF=0
S 192.168.0.0/16 [10/0] via 10.10.10.2, port3
S 192.168.100.0/22 [1/0] via 10.10.10.6, port4
kita lihat dalam table routing diatas bawah dalam fortigate tidak ada routing ke IP 172.16.0.0/24 dalam hal ini RPF akan membuat drop packet tersebut bisa kita lihat hasil dari debug packet tersebut : reverse path check fail, drop

Lalu bagaimana dengan mode strict ?? yuk kita coba kita konfigurasi kedalam mode strict
Fortigate-JKT # show system settings
config system settings
set strict-src-check enable
end
Lakukan enable pada stric-src-check kita coba check ping melalui vlan 100 and hasilnya

id=20085 trace_id=1178 func=print_pkt_detail line=5428 msg=”vd-root:0 received a packet(proto=1, 192.168.100.1:512->172.16.21.1:2048) from port4. type=8, code=0, id=512, seq=24064.”
dari hasil debug diatas bahwa 192.168.100.1 ketika akan memasuki fortigate packet tersebut akan masuk melalui port4 juga,lalu bagaimana dengan arah baliknya??
id=20085 trace_id=1185 func=vf_ip_route_input_common line=2594 msg=”find a route: flag=04000000 gw-10.10.10.6 via port4″
ternyata hasilnya juga sama kembalinya dengan port4 wah asyik dong berarti gak asymetric tapi…tunggu dulu…ini akan bermasalah jika misal link ini kita matikan

Hasilnya sebagai berikut :
Ping tidak akan pernah bisa ke ip tersebut bukannya masih bisa lewat jalur atas ?? memang bisa,tapi taukah kamuhhh kenapa ini bisa terjadi

kalau agan bilang loh routingnya dah bener itu,tapi tunggu dulu prinsip kerja mode strict ini saya bilang diatas tadi
“Mode Strict fortigate akan mencocokkan the best route berdasarkan routing-table yang best-pathnya paling the best banget lah ”
kita lihat diatas routing table summary route yang paling mendekati the best adalah 192.168.100.0/22 (range 192.168.100.1-192.168.103.254) di bandingkan dengan 192.168.0.0/16 kalau kita lihat sebagai berikut :
Fortigate # get router info routing-table details 192.168.100.1
Routing table for VRF=0
Routing entry for 192.168.100.0/22
Known via “static”, distance 1, metric 0, best
* 10.10.10.6, via port4
coba agan lihat diatas lagi routing table yang melewati via port 4 adalah 192.168.100.0/22 bukan 192.168.0.0/16 jadi fortigate akan terus ngepush routingnya melalui summary tersebut,bukannya 192.168.0.0/16 dan 192.168.100.0/22 merupakan blok segement yang sama?? ya seharusnya begitu namun hal itu bukan berarti jalur melalui port3 akan dapat dipakai karena itu tadi fortigate ngepush routingan tersebut hanya melalui jalur4(summary route),impactnya agan tidak dapat ngeping melalui vlan 100
Hasilnya ping tidak akan pernah bisa wk.wk..wk..terus solusinya gimana ??
fortinet menyarankan untuk mode strict agar mengaktifkan asymetric route
Fortigate # config system settings
Fortigate(settings) # set asymroute enable
Fortigate(settings) # end
jadi agan bisa batu tahu kapan menggunakan asymetric dan kapan tidak menggunakan begitupun dalam penggunaan mode strict berhati hatilah wk..kw..wk.
Semoga Bermanfaat