En uzun eşleşen SD-WAN kuralı, ECMP en iyi rotalarıyla eşleşebilir. Kural, trafiği taşımak için daha az spesifik rotaları değil, ECMP’ye özgü rotalardaki çıkış portlarını seçecektir.
Hizmet modu, trafiği iletmek için ECMP’ye özel rotalarda hangi çıkış bağlantı noktasının seçildiğini belirler:
Manuel (manuel): İlk yapılandırılan canlı bağlantı noktası seçilir.
En İyi Kalite (öncelik): En iyi kalite bağlantı noktası seçilir.
En Düşük Maliyet (sla): SLA’da yapılandırılan ilk veya daha düşük maliyetli bağlantı noktası seçilir.
Örnek
Varsayılan olarak, SD-WAN, hedefe giden geçerli yolları olan tüm bağlantılardan giden arayüzü seçer. Bazı durumlarda, yalnızca hedefe giden en iyi (veya en uzun eşleşme) rotalara (tek veya ECMP) sahip bağlantıların dikkate alınması gerekir.
Bu örnekte, iki bölgedeki dört SD-WAN üyesi yapılandırılmıştır. Uzak PC’ye (PC_2 – 10.1.100.22), tüm SD-WAN üyeleri için geçerli yollar olmasına rağmen 15 ve 16 numaralı bağlantı noktalarından erişilebilir. Tek bir SD-WAN hizmet kuralı, trafiğin dört üyenin tümü arasında dengelenmesine izin veren, ancak belirli 10.1.100.22 adresi için yalnızca port15 ve port16 arasında seçim yapan yapılandırılır.
10.1.100.2’yi izlemek için bir performans SLA sağlık denetimi yapılandırılır. En Düşük Maliyet (SLA) modundaki bir SD-WAN hizmet kuralı, trafiği yönlendirmek için en iyi arabirimi seçmek üzere yapılandırılır. Kuralda, birden fazla SLA’yı (tie-break) karşılıyorsa bir üye seçme yöntemi, SLA’yı karşılayan ve yönlendirme tablosundaki en uzun önekle (fib-best-match) eşleşen üyeleri seçmek için yapılandırılır. Aynı hedefe sahip birden fazla ECMP rotası varsa, FortiGate yönlendirme tablosundaki en uzun (veya en iyi) eşleşmeyi alacak ve bu arayüz üyeleri arasından seçim yapacaktır.
SD-WAN’ı yapılandırmak için:
config system sdwan
config zone
edit “virtual-wan-link”
next
edit “z1”
next
end
config members
edit 1
set interface “port1”
set gateway 172.16.200.2
next
edit 2
set interface “dmz”
set gateway 172.16.208.2
next
edit 3
set interface “port15”
set zone “z1”
set gateway 172.16.209.2
next
edit 4
set interface “port16”
set zone “z1”
set gateway 172.16.210.2
next
end
config health-check
edit “1”
set server “10.1.100.2”
set members 0
config sla
edit 1
next
end
next
end
config service
edit 1
set name “1”
set mode sla
set dst “all”
set src “172.16.205.0”
config sla
edit “1”
set id 1
next
end
set priority-members 1 2 3 4
set tie-break fib-best-match
next
end
end
Sonuçları kontrol etmek için:
1-Hata ayıklama, SD-WAN hizmet kuralını gösterir. Tüm üyeler SLA’yı karşılar ve üyelere belirli bir maliyet eklenmediğinden çıkış arabirimi, kuralda yapılandırılan arabirim öncelik sırasına göre seçilir:
FGT_A (root) # diagnose sys sdwan service
Service(1): Address Mode(IPV4) flags=0x200 use-shortcut-sla
Gen(4), TOS(0x0/0x0), Protocol(0: 1->65535), Mode(sla), sla-compare-order
Members(4):
1: Seq_num(1 port1), alive, sla(0x1), gid(0), cfg_order(0), cost(0), selected
2: Seq_num(2 dmz), alive, sla(0x1), gid(0), cfg_order(1), cost(0), selected
3: Seq_num(3 port15), alive, sla(0x1), gid(0), cfg_order(2), cost(0), selected
4: Seq_num(4 port16), alive, sla(0x1), gid(0), cfg_order(3), cost(0), selected
Src address(1):
172.16.205.0-172.16.205.255
Dst address(1):
0.0.0.0-255.255.255.255
2-Yönlendirme tablosu, tüm üyelerde ECMP varsayılan rotaları ve yalnızca port15 ve port16’da ECMP’ye özgü (veya en iyi) rotalar olduğunu gösterir:
FGT_A (root) # get router info routing-table static
Routing table for VRF=0S*
0.0.0.0/0 [1/0] via 172.16.200.2, port1
[1/0] via 172.16.208.2, dmz
[1/0] via 172.16.209.2, port15
[1/0] via 172.16.210.2, port16S
10.1.100.22/32 [10/0] via 172.16.209.2, port15 [10/0] via 172.16.210.2,
port16
Tie-break fib-best-match olarak ayarlandığından, trafiği PC_2’ye iletmek için port15 ve port16’dan ilk yapılandırılan üye seçilir. Diğer tüm trafik için, trafiği iletmek üzere arabirimlerin dördünden de yapılandırılan ilk üye seçilir.
3-PC-1’de, PC-2’ye trafik oluşturun:ping 10.1.100.22
4-FGT_A’da, PC_2’ye gönderilen trafiği inceleyelim:# diagnose sniffer packet any ‘host 10.1.100.22’ 4
interfaces=[any]
filters=[host 10.1.100.22]
2.831299 port5 in 172.16.205.11 -> 10.1.100.22: icmp: echo request
2.831400 port15 out 172.16.205.11 -> 10.1.100.22: icmp: echo request
Trafik, port15 ve port16’dan yapılandırılan ilk üye olan port15’ten ayrılıyor.