
ในยุคปัจจุบัน การดำเนินการธุรกิจ/องค์กรณ์ต่างๆ การมี backup เส้นทางต่างๆ (high availability) จะเป็นผลดีต่อการดำเนินธุรกิจของเราเป็นอย่างมาก เรื่องของเครือข่ายอินเตอร์เน็ตก็เช่นกัน VRRP (Virtual Router Redundancy Protocol) เป็น โปรโตคอลที่จะมาช่วยสำรอง Gateway หลัก ของ Fortigate 2 ตัว ในองค์กรณ์ของเรา เพื่อเป็นเส้นทางสำรอง ของ gateway ในกรณีที่ Fortigate ตัวที่ 1 เกิดพังขึ้นมา ตัว Fortigate ตัวที่ 2 จะรับหน้าที่ เป็น gateway แทน เพื่อให้เครื่องลูกข่าย สามารถสื่อสารกันได้
โดย Diagram จะเป็นดังนี้
Fortigate ตัวที่ 1 เป็น master ของ VLAN 10 และเป็น Backup ของ VLAN20
Fortigate ตัวที่ 2 เป็น master ของ VLAN 20 และเป็น Backup ของ VLAN10
Fortigate ทั้ง 2 ตัว เชื่อมต่อขา LAN ถึงกัน (สามารถ Ping VLAN Connected กันได้)
เนื่องจากเราต้องการแยก Fortigate ออกเป็น 2 ตัว เนื่องจากอินเตอร์เน็ตอยู่คนละสถานที่กัน เช่น ต่างตึก ต่างอาคารกัน เป็นต้นครับ
โดย Step จะมีดังนี้ (เป็นการ Config แบบ CLI ทั้งหมดนะครับ เนื่องจาก vrrp ไม่สามารถ config แบบ GUI ได้)
1.) Fortigate-1 : config vrrp VLAN10 as Primary, VLAN20 as secondary
2.) Fortigate-2 : config vrrp VLAN20 as Primary, VLAN10 as secondary
3.) ตรวจสอบว่าทำงานได้ปกติไหม
โดยตัวอย่าง Config และคำอธิบาย จะมีดังนี้ เพื่อนๆสามารถนำไปปรับได้ตามความเหมาะสมนะครับ
config system interface edit VLAN10 ==> จะเป็น interface ของ VLAN10 นะครับ เลือกตามชื่อที่เพื่อนๆตั้งค่าได้เลยครับ set vrrp-virtual-mac enable ==> เปิดการใช้งาน vrrp virtual mac address เพื่อเวลาสลับ vIP ไป FTG อีกตัว Client จะไม่ต้อง Learn ARP ใหม่ ช่วยให้ downtime น้อยลงครับ config vrrp edit 10 ==> vrrp instance id set vrgrp 10 ==> vrrp group set vrip 10.0.10.1 ==> เบอร์ Virtual IP ที่ใช้เป็น Gateway set priority 200 ==> Priority ของ vrrp, มากกว่า = Primary set adv-interval 1 ==> เป็น interval time (s) ในการ advertise vrrp ไปให้ backup, primary set start-time 3 ==> เป็น interval time (s) ในการรอ advertise เพื่อสลับ role ตัวเอง set preempt enable ==> เป็นคำสั่งไว้ทำให้ vrrp ที่มี priority สูงสุด เป็น master เสมอ set vrdst 8.8.8.8 ==> เป็น destination ให้ fortigate ping check ว่า vrrp ยัง on อยู่ไหม set status enable ==> enable vrrp instance id นี้ end end
1.) Fortigate-1 : config vrrp VLAN10 as Primary, VLAN20 as secondary
1.1) VLAN10 as a Primary
config system interface edit VLAN10 set vrrp-virtual-mac enable config vrrp edit 10 set vrgrp 10 set vrip 10.0.10.1 set priority 250 set adv-interval 1 set start-time 3 set preempt enable set vrdst 8.8.8.8 set status enable end end
1.2) VLAN20 as a Backup
config system interface edit VLAN20 set vrrp-virtual-mac enable config vrrp edit 20 set vrgrp 20 set vrip 10.0.20.1 set priority 150 set adv-interval 1 set start-time 3 set preempt enable set vrdst 8.8.8.8 set status enable end end
2.) Fortigate-2 : config vrrp VLAN20 as Primary, VLAN10 as secondary
2.1) VLAN20 as Primary
config system interface edit VLAN20 set vrrp-virtual-mac enable config vrrp edit 20 set vrgrp 20 set vrip 10.0.20.1 set priority 250 set adv-interval 1 set start-time 3 set preempt enable set vrdst 8.8.8.8 set status enable end end
2.2) VLAN10 as secondary
config system interface edit VLAN10 set vrrp-virtual-mac enable config vrrp edit 10 set vrgrp 10 set vrip 10.0.10.1 set priority 150 set adv-interval 1 set start-time 3 set preempt enable set vrdst 8.8.8.8 set status enable end end
3.) ตรวจสอบว่า vrrp ทำงานได้ปกติ
เราสามารถตรวจสอบการ config vrrp ได้จากคำสั่ง get router info vrrp บน CLI ครับ
FTG-1 vrrp configuration
ซึ่งจะเห็นว่า VLAN10 บน FTG-1 เป็น MASTER และ VLAN20 เป็น BACKUP
FTG-2 vrrp configuration
ซึ่งจะเห็นว่า VLAN20 บน FTG-1 เป็น BACKUP และ VLAN10 เป็น MASTER
เมื่อเราเช็คจาก Configure เรียบร้อยแล้ว จะมาทดลองโดย นำ PC (VLAN10) Ping 8.8.8.8 ไว้ จากนั้น ไป shutdown interface vlan 10 บน FTG-1 กัน (สมมติว่า fortigate พัง โดยการ shutdown interface vlan แทน)
จะเห็นว่า เมื่อ shutdown interface vlan 10 บน FTG-1 Client จะสลับให้โดยทันที โดย downtime ประมาณ 1-3 Ping เท่านั้น
Ref : https://docs.fortinet.com/document/fortigate/7.6.3/administration-guide/850547/vrrp
#Fortigate #VRRP #HighAvailability