MikroTik’te yönlendirme: basit rotadan iki internet hattına
Kategori: MikroTik

Router her paket için onu hangi yoldan göndereceğine karar vermelidir. Bu karar yönlendirme tablosuna göre verilir. Router doğrudan bağlı ağları kendisi bilir; diğerleri için rota yazmanız gerekir. Bu makaledeki örnekler RouterOS 7 için yazılmıştır.

Yönlendirme tablosunu görme

/ip route print

Çıktıda C (Connected) bayraklı rotalar doğrudan bağlı ağlardır, S sizin yazdığınız statik rotalardır, D ise DHCP istemcisinin ya da PPPoE’nin eklediği gibi dinamik rotalardır. A bayrağı rotanın etkin olduğunu gösterir.

1. Başka bir ağa statik rota

192.168.20.0/24 ağının 10.0.0.2 adresli başka bir router’ın arkasında olduğunu varsayalım:

/ip route add dst-address=192.168.20.0/24 gateway=10.0.0.2 comment="To Branch LAN"

Dönüş rotasının da gerektiğini unutmayın; karşı router da ağınıza nereden ulaşılacağını bilmelidir.

2. Varsayılan rota

Varsayılan rota (0.0.0.0/0), “başka rotası olmayan her hedef bu yoldan gitsin” demektir; genellikle internet:

/ip route add dst-address=0.0.0.0/0 gateway=203.0.113.9

İnternet DHCP ya da PPPoE ile bağlıysa ve add-default-route=yes etkinse bu rota otomatik eklenir.

3. İki internet hattı arasında failover

İki internet hattınız var ve birincisi kesilirse trafiğin otomatik olarak ikinciye geçmesini istiyorsunuz. distance rotanın önceliğidir; küçük sayı daha yüksek öncelik demektir:

/ip route add dst-address=0.0.0.0/0 gateway=203.0.113.9 distance=1 check-gateway=ping comment="ISP1 main"
/ip route add dst-address=0.0.0.0/0 gateway=198.51.100.1 distance=2 comment="ISP2 backup"

check-gateway=ping birkaç saniyede bir ağ geçidine ping atar ve yanıt gelmezse rotayı devre dışı bırakır.

Bu yöntemin sınırı: Yalnızca doğrudan bağlı ağ geçidi kontrol edilir. Modem açık ama arkasındaki internet kesikse ağ geçidi ping’e yanıt verir ve failover olmaz.

4. Recursive routing: gerçek failover

Çözüm, ağ geçidi yerine internetteki bir adresi kontrol etmektir. 8.8.8.8 adresini yalnızca birinci hat üzerinden erişilebilir yapar ve varsayılan rotayı onun üzerinden tanımlarız:

/ip route add dst-address=8.8.8.8/32 gateway=203.0.113.9 scope=10 comment="Monitor via ISP1"
/ip route add dst-address=0.0.0.0/0 gateway=8.8.8.8 target-scope=11 check-gateway=ping distance=1 comment="Default via ISP1 (recursive)"
/ip route add dst-address=0.0.0.0/0 gateway=198.51.100.1 distance=2 comment="Default via ISP2"

Artık birinci hattın interneti herhangi bir nedenle kesilirse 8.8.8.8 yanıt vermez, ilk rota devre dışı kalır ve trafik ikinci hatta geçer. Daha fazla kararlılık için ikinci hat için de aynı şekilde ayrı bir izleme adresi (örneğin 1.1.1.1) tanımlayın.

NAT da iki hat için tanımlı olmalıdır; en basit yol, iki internet arayüzünü de WAN listesine üye yapmak ve masquerade’i bu listede tanımlamaktır.

5. Policy routing: belirli trafiği belirli hattan gönderme

Bazen trafiğin bir kısmının belirli bir hattan gitmesini istersiniz; örneğin muhasebe sunucusu internete her zaman sabit IP’li ikinci hattan çıksın. RouterOS 7’de bu, ayrı bir yönlendirme tablosu ile yapılır:

/routing table add name=via-isp2 fib
/ip route add dst-address=0.0.0.0/0 gateway=198.51.100.1 routing-table=via-isp2
/routing rule add src-address=192.168.10.50/32 action=lookup-only-in-table table=via-isp2
  • via-isp2 tablosunda yalnızca ikinci hattan giden bir varsayılan rota vardır.
  • Routing kuralı, 192.168.10.50 sunucusunun trafiğinin rotayı yalnızca bu tablodan almasını söyler.
  • lookup-only-in-table yerine lookup kullanırsanız ikinci hat kesildiğinde trafik ana tabloya döner.

Trafiği porta ya da hedefe göre seçmek için mangle kullanın:

/ip firewall mangle add chain=prerouting src-address=192.168.10.0/24 dst-port=443 protocol=tcp action=mark-routing new-routing-mark=via-isp2 passthrough=no

Not: FastTrack, trafiği mangle’dan geçirmez. Mangle ile policy routing çalışmıyorsa güvenlik duvarındaki FastTrack kuralını bu trafiği dışarıda bırakacak şekilde daraltın.

Yolu kontrol etme

/ip route print where dst-address=0.0.0.0/0
/ip route print where active
/tool traceroute 8.8.8.8

Çalışmazsa

  • Rota yazılmış ama çalışmıyor: Karşı router’da dönüş rotası yok.
  • Rota etkin değil (A bayrağı yok): Ağ geçidine erişilemiyor ya da router’ın bağlı ağlarından birinde değil.
  • Failover’dan sonra kullanıcıların interneti yok: İkinci hat için NAT tanımlanmamış.
  • Trafik geri geliyor ama kopuyor: Policy routing’de gelen trafiğin yanıtı diğer hattan çıkıyor. Her hattan gelen bağlantıları işaretleyin (connection mark) ve yanıtı aynı hattan geri gönderin.

Diğer ağlar için statik rota, öncelik için distance, gerçek failover için recursive routing ve belirli trafiği belirli hattan göndermek için policy routing. Trafiğin beklediğiniz yoldan gittiğini her zaman /tool traceroute ile kontrol edin. Sonraki makale: MikroTik ile ağ güvenliği.

  • MikroTik
  • Routing
  • Failover
  • Policy Routing
  • RouterOS 7